Errores
Los errores siguen RFC 9457 (application/problem+json) con un campo code estable:
{ "type": "https://tools.ietf.org/html/rfc9110#section-15.5.21", "title": "Unprocessable Entity", "status": 422, "code": "validation_failed", "errors": [{ "path": "lines[0].unitPrice", "message": "Debe ser mayor que cero." }]}| HTTP | code |
Qué significa |
|---|---|---|
| 400 / 422 | validation_failed |
El documento no cumple el modelo o las reglas de la DGII; revisa errors[].path. |
| 401 | invalid_token |
Token ausente, vencido o revocado. Pide un token nuevo. |
| 403 | production_not_enabled |
La credencial o la empresa no están habilitadas para producción. |
| 404 | — | El recurso no existe o está fuera del alcance de tu credencial. |
| 409 | idempotency_conflict |
Reutilizaste un Idempotency-Key con otro contenido. |
| 403 | limit_exceeded / quota_exceeded |
Alcanzaste un límite del plan. |
| 422 | validation_failed con encf_assigned_by_platform en errors[] |
Enviaste un XML con e-NCF: Gravitas los asigna, quítalo. |
| 413 | payload_too_large |
El cuerpo excede el tamaño permitido. |
| 429 | rate_limited |
Demasiadas solicitudes; respeta Retry-After. |
Los rechazos de la DGII no son errores HTTP: el documento queda en estado rejected con los mensajes
de la DGII en su detalle.