Skip to main content
Como la emisión es asíncrona, un documento pasa por varios estados desde que lo envías hasta que el ente tributario lo acepta o lo rechaza. Un rechazo no es el final del camino: podés corregir el documento y reemitirlo sobre el mismo folio, sin quemar uno nuevo.

Flujo general

1

Recepción

Envías el documento con POST /api/companies/{company_id}/invoices. Emify lo valida y lo acepta para procesamiento. La respuesta incluye el id del documento.
2

Procesamiento

Emify genera el documento tributario, lo firma con el certificado de la empresa y lo remite al ente tributario. Este paso ocurre en segundo plano.
3

Resolución

El ente tributario acepta o rechaza el documento. Emify actualiza el estado y emite el evento de webhook correspondiente.
4

Corrección (solo si hubo rechazo)

Si el documento fue rechazado, podés corregirlo y reemitirlo sobre el mismo folio. El documento se vuelve a firmar y a enviar, y el ciclo se repite desde el procesamiento. Ver Corregir un documento rechazado.

Estados

Un documento expone dos estados complementarios:
  • status — dónde está el documento dentro del procesamiento de Emify.
  • fiscal_status — el veredicto del ente tributario sobre el documento.

Estado de procesamiento (status)

En los mercados donde el documento se firma de forma síncrona al crearlo (como Chile), la respuesta de creación ya devuelve SIG y las representaciones (XML/PDF) quedan disponibles de inmediato, sin esperar la respuesta del ente tributario. En otros mercados el documento arranca en PEN.

Estado fiscal (fiscal_status)

Refleja la respuesta del ente tributario. Cuando hay un rechazo u objeción, el motivo llega en fiscal_status_reason. Un documento aceptado incluye además los identificadores que asigna el ente tributario: track_id (seguimiento en el SII), cae y cae_expiration_date (código de autorización y su vencimiento) y qr_code.
La fuente de verdad sobre los cambios de estado son los eventos de webhook. Consulta GET /api/companies/{company_id}/webhooks/events para ver el catálogo de eventos disponibles.

Corregir un documento rechazado

Un documento que el ente tributario rechazó no tiene validez tributaria: el folio que consumió nunca respaldó un documento válido. En vez de emitir de nuevo con un folio nuevo —y dejar el rechazado quemado, con un salto en tu numeración que después hay que justificar—, podés corregir el contenido y reemitirlo sobre el mismo folio.
Reemitir sobrescribe el documento: el contenido corregido reemplaza al anterior bajo el mismo folio, y el XML y el PDF que hayas descargado del intento rechazado quedan obsoletos.Por eso la operación exige confirm_folio_reuse: true. Emify no puede saber si el documento anterior llegó a circular ni si el folio es realmente reutilizable —hay rechazos, como folio no autorizado o folio anulado, donde no lo es—: esa afirmación la hace tu sistema, y queda registrada.

Cuándo se puede

Además, la reemisión es exclusiva de los mercados donde el número sale de un rango de folios autorizado localmente (como Chile). Donde el número lo autoriza el organismo en el momento de emitir, no hay folio que reutilizar.

Cómo se hace

El cuerpo es el documento corregido completo, con la misma forma y las mismas validaciones que la emisión, más confirm_folio_reuse. El documento a reemitir se identifica por la terna company_id + invoice_type (ambos en el cuerpo) + folio (path). Un folio no es único por sí solo: el mismo número puede existir para una boleta y para una factura de la misma empresa, así que el tipo lo define el contenido que enviás.
Un error en invoice_type no da error: apunta a otro documento real con ese mismo folio y lo sobrescribe. Verificá que el tipo del cuerpo sea el del documento que querés corregir.
La respuesta confirma que el folio no cambió y en qué intento quedó el documento:

Qué cambia y qué no

El folio nunca vuelve a estar disponible: sigue consumido por este mismo documento antes y después de la reemisión. El intento rechazado —con el XML que se firmó y la respuesta del ente tributario— queda archivado. Tras una reemisión el documento vuelve a SIG y arranca un envío nuevo, así que el ciclo de estados y los webhooks se comportan igual que en una emisión normal.

Errores

Todos cortan sin modificar nada: ni el documento, ni el folio, ni el estado.

Saber si un documento fue reemitido

La consulta de estado informa cuántas veces se reemitió el documento y cuándo fue la última vez. Un documento nunca reemitido devuelve reissue_count: 0 y last_reissued_at: null.
Sirve para detectar que la copia del XML o del PDF que tenés guardada corresponde a una versión anterior del mismo folio.

Cómo obtener el resultado

Con webhooks (recomendado)

Configura un webhook y Emify te notificará cada cambio de estado sin que tengas que consultar. Es la forma eficiente de integrar la emisión asíncrona.

Con polling

Si no usas webhooks, consulta el documento periódicamente hasta que alcance un estado final:
Usa intervalos razonables (por ejemplo, con backoff) para no saturar la API. Los webhooks evitan el polling por completo.

Documentos emitidos

Desde que el documento está firmado (estado SIG en adelante) puedes obtener sus representaciones; no necesitas esperar a que el ente tributario lo acepte: Los formatos 80mm y 58mm corresponden a impresión en rollo (ticket); A4 a impresión en hoja.
Si solicitas el PDF o el XML mientras el documento todavía está en PEN (aún no firmado), el endpoint responde 404. Espera al estado SIG — vía webhook o polling — antes de pedir la representación.