Errores
IDEMPOTENCY_CONFLICT (409)
La Idempotency-Key ya se usó con un cuerpo distinto, o hay otro request con la misma key en curso.
IDEMPOTENCY_CONFLICT
HTTP 409 Conflict
Reutilizaste una Idempotency-Key de forma incompatible. Ocurre en dos situaciones:
- Misma key, cuerpo distinto: ya emitiste un request con esa key y un payload diferente. La key quedó asociada a la primera respuesta durante 24 h, así que no se puede reusar para un documento distinto.
- Request en curso: hay otro request con la misma key ejecutándose en este momento (dos
llamadas simultáneas con la misma key). En este caso la respuesta incluye el header
Retry-After.
Ejemplo — cuerpo distinto
{
"type": "https://docs.dtevia.com.gt/errors/idempotency-conflict",
"title": "IDEMPOTENCY_CONFLICT",
"status": 409,
"detail": "Esta Idempotency-Key ya fue usada con un cuerpo distinto. Usá una key nueva para un request nuevo."
}Ejemplo — request en curso
{
"type": "https://docs.dtevia.com.gt/errors/idempotency-conflict",
"title": "IDEMPOTENCY_CONFLICT",
"status": 409,
"detail": "Otro request con la misma Idempotency-Key está en curso. Reintentá en unos segundos."
}Esta respuesta trae además el header
Retry-After(segundos) que indica cuánto esperar antes de reintentar.
Cómo resolverlo
- Una key por documento: generá una
Idempotency-Keynueva (un UUID, o tu propio ID de orden) para cada DTE distinto que quieras emitir. No reuses la misma key para payloads diferentes. - Para reintentar el mismo documento, repetí el request con exactamente el mismo cuerpo y
la misma key: recibirás la respuesta original (con
Idempotency-Replayed: true), sin generar un duplicado. - Si fue un request en curso, esperá lo que indique
Retry-Aftery volvé a intentar. - La key vive 24 horas y está acotada por tenant. Pasada esa ventana, la misma key vuelve a estar libre.
Ver Idempotencia e integridad para el contrato completo.