Ir al contenido

Colombia

En Colombia, Floogos se conecta a la DIAN (Dirección de Impuestos y Aduanas Nacionales) a través de la plataforma Factus, un proveedor tecnológico habilitado que arma el documento electrónico, lo firma y lo transmite ante la DIAN en nombre del emisor. No hay conexión SOAP directa contra la DIAN: todo el intercambio pasa por la API REST de Factus.

  • Vía proveedor (Factus): a diferencia de países con conexión directa (como Perú o Paraguay), en Colombia Floogos habla con la API de Factus y es Factus quien valida el comprobante ante la DIAN.
  • Autenticación OAuth2: la credencial factus usa client_credentials (Client ID + Client Secret); el token se renueva automáticamente en cada llamada.
  • Rango de numeración DIAN: cada factura se emite dentro de un numbering_range_id, que corresponde a una resolución de numeración habilitada previamente en el panel de Factus.
  • CUFE: el Código Único de Factura Electrónica es el identificador que emite la DIAN (a través de Factus) para cada comprobante válido; se devuelve junto con el código QR.
  • IVA 19%: la tarifa general del Impuesto al Valor Agregado en Colombia es 19%, configurable por ítem mediante tax_rate.
  • Entornos: la credencial admite sandbox (pruebas) o production (DIAN real).

Una factura no queda válida por el solo hecho de enviarla a Factus: la DIAN debe aceptarla y devolver el CUFE y el estado (status_name, por ejemplo “Aceptado”). Si la DIAN rechaza el documento, Factus responde con un error HTTP 422 detallando los motivos del rechazo, y no se genera CUFE.

NodoDescripción
FactusCreateInvoiceEmite una factura electrónica validada por la DIAN a través de Factus; devuelve CUFE y código QR
FactusCreateCreditNoteCrea una nota crédito sobre una factura ya emitida: anulación total, devolución parcial, descuento o ajuste de precio
FactusGetInvoiceConsulta una factura por ID interno de Factus, número de factura o código de referencia
  1. FactusCreateInvoice — se emite la factura con los datos del cliente y los ítems; se obtiene el bill_id y el CUFE.
  2. FactusCreateCreditNote — si hace falta anular o ajustar la factura, se crea una nota crédito referenciando el bill_id original.
  3. FactusGetInvoice — en cualquier momento se puede consultar el estado y los datos completos de la factura o de la nota.
  • La credencial de tipo factus guarda el Client ID, el Client Secret y el entorno (sandbox o production).
  • El numbering_range_id debe corresponder a una resolución de numeración DIAN previamente configurada y habilitada en el panel de Factus; no lo genera Floogos.
  • Los campos customer e items se envían como objetos JSON completos (identificación del cliente, ítems con tax_rate, unit_measure_id, etc.), no como campos sueltos del formulario.
  • Para anulaciones totales (reason_code=2) no hace falta enviar items en la nota crédito; Factus anula el importe completo de la factura.