Referencia completa de la API
Esta página enumera las rutas HTTP declaradas por los controladores de FactrAPI. En la instancia local también puedes consultar Swagger UI en/docs y el JSON OpenAPI en /docs-json. En producción, esas dos rutas requieren OPENAPI_ENABLED=true.
Las rutas públicas de /api/v1 están disponibles en español; las rutas anteriores en inglés se conservan como alias para las integraciones existentes. Los nombres de campos JSON, filtros, encabezados y scopes se mantienen como parte del contrato actual. Las rutas de recepción /{ambiente}/{servicio}/fe/* conservan el formato requerido por la DGII.
Autenticación y formatos
Las respuestas JSON de negocio tienen forma
{ "data": ..., "meta": { "correlationId", "timestamp" } }. Los errores usan application/problem+json. X-Correlation-ID se acepta en las solicitudes; Idempotency-Key está disponible para crear documentos.
Scopes derivados: sequences:manage concede sequences:allocate; documents:create y documents:read conceden taxpayers:read; documents:read también concede received:read.
Empresa y perfil de integración
Documentos e-CF
Envío y seguimiento DGII
Secuencias y anulaciones
Los rangos autorizados se registran en FactrAPI; no se consultan automáticamente a la DGII.Catálogos y contribuyentes
Documentos recibidos
received:read también se concede a claves con documents:read.
Webhooks
Todas estas rutas requierenwebhooks:manage.
Las entregas incluyen firma HMAC y cabeceras
X-Factra-Event, X-Factra-Delivery, X-Factra-Timestamp y X-Factra-Signature.
Certificación en CerteCF
FactrAPI puede ejecutar los casos de prueba técnicos contra servicios DGII, seguir su resultado y calcular el checklist. No automatiza el Portal de Certificación: la postulación, carga de archivos, URLs, representación impresa y declaración jurada se hacen en el portal. El contribuyente descarga allí el set de pruebas y envía los XML a los servicios de validación de la DGII (documentación oficial). Requisitos: API key del ambienteCERT con certification:manage, empresa/permisos de certificación habilitados, autenticación DGII configurada y set de datos oficial descargado del portal. Convierte el Excel a JSON localmente:
{ "label": "...", "cases": [...] }; los casos tienen kind, caseKey, payload y, para e-CF/RFCE, ecfType.
Pasos automáticos: 2 datos e-CF/RFCE, 3 aprobaciones/rechazos del set, 4 simulación de e-CF, 9 recepción y ARECF, 11 recepción de aprobaciones comerciales. Pasos del portal que el usuario confirma tras completarlos: 1 postulación; 5–8 representación impresa, validaciones y URLs; 10 inicio de prueba de aprobaciones; 12 URLs de producción; 13 declaración jurada; 14 estatus del contribuyente. FactrAPI calcula el avance y registra las confirmaciones manuales de forma auditable; la DGII determina la cantidad de pruebas de simulación.
Claves que acepta
POST /:id/steps/:key/confirm para los pasos manuales: registrado, representacion_impresa_envio, representacion_impresa_validacion, url_servicio_prueba, url_pruebas_comunicacion, inicio_prueba_aprobaciones, url_produccion, declaracion_jurada y verificacion_estatus. Ejemplo de confirmación tras completar la acción en el portal:
node scripts/certification/convert-set.mjs <set.xlsx> casos.json; luego envía ese JSON a POST /api/v1/certificacion/iniciar. A continuación llama POST /api/v1/certificacion/:id/ejecutar?limit=10 para enviar el siguiente bloque a CerteCF y GET /api/v1/certificacion/:id para consultar el progreso. run ejecuta hasta 50 casos por llamada; esta operación sí envía XML y crea estado fiscal de certificación.
El conversor versionado procesa las hojas ECF y RFCE del Excel oficial. El servicio de certificación también acepta casos ACECF, pero no los genera ese conversor; revisa los materiales oficiales del set antes de afirmar que esos casos están importados.
Si un caso del set es rechazado, no lo reintentes como parte del mismo proceso: la guía de DGII requiere regenerar el set y abrir un proceso nuevo. Los XML de postulación y declaración jurada se firman actualmente con la herramienta de firma de la DGII u otra herramienta compatible, no mediante este módulo de FactrAPI.
Recepción de e-CF (DGII → FactrAPI)
El patrón de las URL receptoras es/{ambiente}/{servicio}/fe/.... Los segmentos reconocidos son testecf (TEST), certecf (CERT) y ecf (PRODUCTION). Un ejemplo de prueba local es /testecf/emisorreceptor/fe/recepcion/api/ecf.
Envía el XML como
multipart/form-data en el campo xml o con Content-Type: application/xml. El límite receptor es 5 MB. La autenticación del receptor se configura mediante RECEIVER_AUTH_MODE; no usa la API key del integrador.
Factra Cloud → FactrAPI
Rutas internas autenticadas porCloudAuthGuard; no son públicas para integradores.
Salud y operación
Postman
Importa la colección segura de FactrAPI y el entorno local. Las solicitudes de lectura y salud incluyen pruebas de respuesta. No crean documentos ni envían solicitudes a la DGII. Para ejecutar emisión o llamadas de certificación, configura explícitamente el ambienteCERT, una empresa con el set oficial y sus permisos; esas operaciones sí cambian estado y pueden enviar XML a los servicios de DGII.