Calcula impuestos y totales, asigna el consecutivo, genera el XML y el CUFE, lo firma y lo transmite a la DIAN. Responde 201 si la DIAN la aceptó, 202 si quedó pendiente y 422 si la rechazó. Con `asincrono: true` la factura se numera y responde 202 de inmediato; la DIAN la procesa después y consultas el resultado con GET /documentos/{id}.
/v1/facturasEjemplo real, capturado en modo simulado.
{
"id": 1,
"tipo": "FV",
"tipo_nombre": "Factura electrónica de venta",
"numero": "SETP990000000",
"estado": "aceptado",
"simulado": true,
"ambiente": "habilitacion",
"clave": "5bb87d6cb1c91052471695cb8c1a07997f4de7e4bbc6847da27c44b5c4080bc7e66258209694bb2c4a079d2e55246a75",
"fecha": "2026-11-04",
"hora": "22:05:09-05:00",
"vencimiento": "2026-12-31",
"tercero": "Cliente S.A.S.",
"totales": {
"subtotal": "100000.00",
"impuestos": "19000.00",
"total": "119000.00",
"retenciones": "4000.00",
"neto_a_pagar": "115000.00"
},
"dian": {
"mensaje": "La Factura electrónica SETP990000000, ha sido autorizada.",
"errores": [],
"pendiente_desde": null,
"horas_restantes": null
},
"qr": "NumFac=SETP990000000\nFecFac=2026-11-04\nHorFac=22:05:09-05:00\nNitFac=900123456\nDocAdq=800199436\nValFac=100000.00\nValIva=19000.00\nValOtroIm=0.00\nValTolFac=119000.00\nCUFE=5bb87d6cb1c91052471695cb8c1a07997f4de7e4bbc6847da27c44b5c4080bc7e66258209694bb2c4a079d2e55246a75\nQRCode=https://catalogo-vpfe-hab.dian.gov.co/document/searchqr?documentkey=5bb87d6cb1c91052471695cb8c1a07997f4de7e4bbc6847da27c44b5c4080bc7e66258209694bb2c4a079d2e55246a75",
"correo": "simulated",
"referencia_id": null,
"metadata": {
"pedido": "PO-778"
},
"archivos": {
"xml": "https://api.gemefact.com/v1/documentos/1/xml",
"respuesta": "https://api.gemefact.com/v1/documentos/1/respuesta",
"attached": "https://api.gemefact.com/v1/documentos/1/attached",
"pdf": "https://api.gemefact.com/v1/documentos/1/pdf"
},
"creado": "2026-11-05T03:05:09+00:00"
}201 | Aceptado. |
202 | Pendiente: la DIAN no respondió y se reintenta. |
400 | Falta Idempotency-Key. |
402 | Sin documentos disponibles (solo documentos reales). |
401 | Llave inválida o revocada. |
403 | Acceso suspendido, IP no autorizada o llave de solo lectura. |
409 | Conflicto de idempotencia, numeración agotada o cuenta en habilitación. |
422 | Datos inválidos o documento rechazado por la DIAN (dian_rejected). |
429 | Superaste las 120 peticiones por minuto. |