Diccionario de errores
ERPly Pro retorna errores en formato RFC 9457 — Problem Details for HTTP APIs. Cada respuesta de error incluye un campo type que apunta a una entrada de este diccionario:
{
"type": "https://errors.api.erply.pro/dgii-17-totales-inconsistentes",
"title": "Totales no coinciden con los detalles",
"status": 422,
"detail": "DGII código 17: Totales no coinciden con los detalles",
"correlationId": "1-65fa7c3a-6f9c2d8e0a1b2c3d4e5f6789",
"dgii": { "code": "17", "trackId": "20260501-DGII-9988" }
}
Categorías
| Categoría | Descripción | Ejemplos |
|---|---|---|
| Autenticación | Token inválido o ausente | unauthorised |
| Validación | El payload no cumple el contrato API | malformed-json, validation-error |
| e-CF / DGII | DGII rechazó el comprobante | Códigos 1–106 |
| Firma | XAdES-BES inválido o certificado caducado | Códigos 30–35 |
| Disponibilidad | DGII inalcanzable / mantenimiento | dgii-unavailable, 70, 71 |
| Configuración | Tenant sin RNC o PFX | tenant-config-missing |
Errores emitidos por el API
Los siguientes errores los origina ERPly Pro antes de hablar con DGII:
unauthorised— falta token o no resolvió el tenant.malformed-json— el body no es JSON válido.unsupported-ecf-type— tipo de e-CF fuera del catálogo soportado.mathematical-discrepancy— totales/ITBIS no cuadran.validation-error— campos requeridos faltan o tienen formato inválido.tenant-resolver-not-configured— bug interno (no debería ocurrir en producción).tenant-config-missing— el tenant no tiene RNC, PFX o passphrase configurados.dgii-rejected— rechazo DGII genérico (sin código mapeado).dgii-unavailable— DGII no responde dentro del SLA.
Códigos DGII
Los códigos numéricos los emite la DGII y los enriquecemos con dgii.code/dgii.trackId en el Problem. Consulta cada código directamente:
Diccionario de errores
ERPly Pro retorna errores en formato RFC 9457 — Problem Details for HTTP APIs. Cada respuesta de error incluye un campo type que apunta a una entrada de este diccionario:
— RNC no existe en el registro DGII
DGII código 1 — RNC no existe en el registro DGII
0 — Formato de eNCF inválido
DGII código 10 — Formato de eNCF inválido
00 — Payload excede el tamaño máximo (8 MB)
DGII código 100 — Payload excede el tamaño máximo (8 MB)
01 — Encabezado del e-CF incompleto
DGII código 101 — Encabezado del e-CF incompleto
02 — El detalle de líneas no puede estar vacío
DGII código 102 — El detalle de líneas no puede estar vacío
03 — Código de producto/servicio no registrado en DGII
DGII código 103 — Código de producto/servicio no registrado en DGII
04 — Dirección del comprador requerida
DGII código 104 — Dirección del comprador requerida
05 — País del comprador no soportado
DGII código 105 — País del comprador no soportado
06 — Formato de orden de compra inválido
DGII código 106 — Formato de orden de compra inválido
1 — Secuencia de eNCF agotada
DGII código 11 — Secuencia de eNCF agotada
2 — eNCF fuera del rango autorizado
DGII código 12 — eNCF fuera del rango autorizado
3 — eNCF duplicado
DGII código 13 — eNCF duplicado
4 — Tipo de comprobante no permitido para este RNC
DGII código 14 — Tipo de comprobante no permitido para este RNC
5 — Fecha de emisión en el futuro
DGII código 15 — Fecha de emisión en el futuro
6 — Fecha de emisión anterior al período permitido
DGII código 16 — Fecha de emisión anterior al período permitido
7 — Totales inconsistentes con el detalle de líneas
DGII código 17 — Totales inconsistentes con el detalle de líneas
8 — ITBIS calculado incorrectamente
DGII código 18 — ITBIS calculado incorrectamente
9 — Moneda no soportada
DGII código 19 — Moneda no soportada
— RNC inactivo o suspendido
DGII código 2 — RNC inactivo o suspendido
0 — Tasa de cambio requerida para moneda extranjera
DGII código 20 — Tasa de cambio requerida para moneda extranjera
— RNC no autorizado como emisor electrónico
DGII código 3 — RNC no autorizado como emisor electrónico
0 — Firma XAdES-BES inválida
DGII código 30 — Firma XAdES-BES inválida
1 — Certificado del firmante expirado
DGII código 31 — Certificado del firmante expirado
2 — Certificado del firmante revocado
DGII código 32 — Certificado del firmante revocado
3 — Certificado no emitido por una AC autorizada por INDOTEL
DGII código 33 — Certificado no emitido por una AC autorizada por INDOTEL
4 — Canonicalización XML no es Exclusive C14N
DGII código 34 — Canonicalización XML no es Exclusive C14N
5 — Digest del documento no coincide con la firma
DGII código 35 — Digest del documento no coincide con la firma
0 — Versión de XSD no soportada
DGII código 40 — Versión de XSD no soportada
1 — XML malformado
DGII código 41 — XML malformado
2 — Elemento XSD requerido ausente
DGII código 42 — Elemento XSD requerido ausente
3 — Namespace XML incorrecto
DGII código 43 — Namespace XML incorrecto
4 — eNCF no corresponde al tipo declarado
DGII código 44 — eNCF no corresponde al tipo declarado
0 — RNC del comprador inválido
DGII código 50 — RNC del comprador inválido
1 — Datos del comprador requeridos para este tipo
DGII código 51 — Datos del comprador requeridos para este tipo
2 — Monto excede el límite de e-CF tipo 32 (Consumo)
DGII código 52 — Monto excede el límite de e-CF tipo 32 (Consumo)
3 — Nota de crédito sin eNCF padre válido
DGII código 53 — Nota de crédito sin eNCF padre válido
4 — Nota de débito sin eNCF padre válido
DGII código 54 — Nota de débito sin eNCF padre válido
0 — Token DGII inválido o expirado
DGII código 60 — Token DGII inválido o expirado
1 — Cuota diaria de envíos excedida
DGII código 61 — Cuota diaria de envíos excedida
2 — Límite de tasa DGII alcanzado
DGII código 62 — Límite de tasa DGII alcanzado
0 — Servicio DGII en mantenimiento
DGII código 70 — Servicio DGII en mantenimiento
1 — Tiempo de espera agotado al contactar DGII
DGII código 71 — Tiempo de espera agotado al contactar DGII
2 — Error de conectividad con DGII
DGII código 72 — Error de conectividad con DGII
3 — Respuesta DGII malformada
DGII código 73 — Respuesta DGII malformada
0 — TrackId no encontrado en DGII
DGII código 80 — TrackId no encontrado en DGII
1 — TrackId no pertenece al RNC consultante
DGII código 81 — TrackId no pertenece al RNC consultante
2 — Aprobación comercial rechazada por el comprador
DGII código 82 — Aprobación comercial rechazada por el comprador
0 — ITBIS exento mal clasificado
DGII código 90 — ITBIS exento mal clasificado
1 — Tasa de ITBIS no permitida (use 0%, 16% ó 18%)
DGII código 91 — Tasa de ITBIS no permitida (use 0%, 16% ó 18%)
2 — ISC no aplicable a este tipo de bien o servicio
DGII código 92 — ISC no aplicable a este tipo de bien o servicio
3 — Propina legal (10%) mal aplicada
DGII código 93 — Propina legal (10%) mal aplicada
4 — Retención de ISR mal aplicada
DGII código 94 — Retención de ISR mal aplicada
5 — Retención de ITBIS mal aplicada
DGII código 95 — Retención de ITBIS mal aplicada
6 — Descuento excede el porcentaje permitido
DGII código 96 — Descuento excede el porcentaje permitido
7 — Formato de fecha inválido (use AAAA-MM-DD)
DGII código 97 — Formato de fecha inválido (use AAAA-MM-DD)
8 — Excedió los decimales permitidos (máx. 2)
DGII código 98 — Excedió los decimales permitidos (máx. 2)