Los cuatro desenlaces
Qué hacer, en orden
1
Salió autorizado
Listo. Si trae observaciones, leelas y seguí — no son un error.
2
Error de validación (400)
Corregí el pedido. No dejó nada colgado: no se consumió número.
3
ARCA rechazó (422)
Corregí lo que dice
details.arca y volvé a emitir. El número se liberó
solo.4
No se sabe qué pasó (409)
Reconciliá. No reintentes. Es el único caso que puede costarte un
comprobante duplicado.
5
Error del servidor (500 o 502)
Mirá la lista de comprobantes sin resolver. Si hay algo, reconciliá; si no,
reintentá con la misma clave de idempotencia.
La red de seguridad: reintentar con la misma clave de idempotencia nunca
duplica. Ante cualquier duda, ése es el movimiento gratis.
Todas las respuestas de esta guía se provocaron y se ejecutaron. Los
desenlaces que no se pueden forzar contra ARCA —un corte, una respuesta
ilegible— se produjeron contra la frontera falseada, que es el mismo circuito
con ARCA sustituido en el último salto.
Autorizado con observaciones no es un fallo
ARCA puede aprobar y observar el mismo comprobante. Con CAE y aprobado, el comprobante es válido: la observación es información para tu cliente, no un error tuyo.Una emisión aprobada y observada, real
Una emisión aprobada y observada, real
ARCA rechazó: el número se libera
Cuando ARCA contesta con errores, no hay CAE y el número vuelve a estar disponible.Un rechazo no deja un hueco. ARCA nunca registró ese comprobante, así que
del otro lado el número sigue libre, y Emissa libera el suyo para que
coincidan. Verificado: tras un rechazo del número 1, la emisión siguiente —ya
corregida— tomó el número 1 otra vez.
Cómo leer el motivo
El mensaje es genérico a propósito; el motivo va endetails.arca, con el código y el
texto que devolvió ARCA, y viaja también en producción. Leelo siempre: es lo que le
dice a tu cliente qué corregir. Es un rechazo fiscal, no una falla de Emissa.
rechazoArca), y el webhook
invoice.resolved lo trae cuando el estado final es REJECTED. Los textos son los de
ARCA, literales y recortados a 500 caracteres; si errores viene vacío, el motivo
está en observaciones.
Los códigos son del catálogo de ARCA, no de Emissa. Caen en dos familias:
Cómo se ve un rechazo de ARCA
Cómo se ve un rechazo de ARCA
El caso que hay que leer entero: no se sabe qué pasó
Éste es el único que puede costarte un comprobante duplicado. Qué pasó: el pedido salió, y la respuesta no volvió o no se pudo leer. ARCA pudo haber autorizado el comprobante y perderse la confirmación en el camino. Desde afuera, autorizado y no autorizado se ven igual.Es un
409 y no un 502 a propósito: un 502 invita a reintentar, y acá
reintentar es exactamente lo que no hay que hacer.Qué pasa si reintentás a ciegas
La corrida completa
La corrida completa
Lo que sí hay que hacer: reconciliar
En producción el409 ARCA_CAE_UNKNOWN no trae details, así que no te dice
el id del comprobante. Lo encontrás por externalReference
(GET /v1/invoices/search?externalReference=…) o, si no la mandaste, en
GET /v1/invoices/unresolved.
Si el comprobante ya estaba resuelto
Si el comprobante ya estaba resuelto
No hace nada, y lo dice:
Un error del servidor también puede dejar algo sin resolver
Y esto es lo menos evidente de toda la guía. Cuando el servicio de ARCA devuelve un error HTTP que no es SOAP, la respuesta que recibís es genérica —un500
«Error interno del servidor»— y ese mensaje no te dice lo que necesitás saber:
que quedó un comprobante tomando número.
El camino de recuperación, ejecutado
El camino de recuperación, ejecutado
409 y funciona igual.Qué sigue
Todos los errores
La tabla de consulta, código por código.
Cómo se numera una serie
Por qué el número importa.