Flujo de emisión
Desde la versión v1.4.0, toda emisión de DTE es asíncrona.
Por qué asíncrono
Procesar un DTE contra el SII toma unos segundos. Un modelo asíncrono te da una respuesta inmediata y un manejo robusto de reintentos, sin dejar tu request colgado esperando.
El flujo
- Tu sistema envía
POST /v1/dte/emitircon el JSON del documento. Folyo valida los datos y responde202 Acceptedde inmediato con unjob_id. - Folyo procesa el documento y lo envía al SII en segundo plano.
- Recibes el resultado por uno de tres canales:
| Canal | Cuándo usar |
|---|---|
| Webhook | Recomendado. Tu endpoint recibe el evento dte.emitido con el resultado. |
| Polling | GET /v1/dte/emision/:jobId cada 2-3 segundos hasta que estado != "pending". |
| SSE | Solo para dashboards en el browser. No recomendado para integraciones server-side. |
Estados del job
pending— en cola.processing— en proceso contra el SII.completed— enviado exitosamente al SII.failed— error, sea rechazo del SII o interno. Revisa el campoerrorpara el detalle.