Documentación · Webhooks · API v1 · versión 2026-10-22
Tipos de evento
Los 50 tipos de evento que Trevol manda a tus webhooks, agrupados por documento, con cuándo se emite cada uno.
Cada evento tiene la forma {id, object: "event", type, timestamp, environment, api_version, data}. El data es un resumen: nunca los datos del comprador, del vendedor ni del trabajador. Cómo recibirlos y verificarlos: Webhooks. La referencia de los objetos (Event, DocumentEventData…) está en Objetos.
invoice
| Tipo | Cuándo |
|---|---|
invoice.accepted |
La DIAN validó la factura. Pasa por cualquier camino (API, app, conector o verificación de fondo). |
invoice.rejected |
La DIAN rechazó la factura. Corrígela con PUT y se reenvía con el mismo número. |
invoice.error |
La factura quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). |
invoice.delivered |
La factura ya tiene PDF, ZIP y un correo en estado final (la primera vez). |
invoice.email_bounced |
El correo de la factura rebotó o el comprador lo marcó como queja (delivery.email.status: bounced o complained). |
invoice.email_failed |
El correo de la factura falló de forma definitiva (delivery.email.status: failed). |
credit_note
| Tipo | Cuándo |
|---|---|
credit_note.accepted |
La DIAN validó la nota crédito. Pasa por cualquier camino (API, app, conector o verificación de fondo). |
credit_note.rejected |
La DIAN rechazó la nota crédito. Corrígela con PUT y se reenvía con el mismo número. |
credit_note.error |
La nota crédito quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). |
credit_note.delivered |
La nota crédito ya tiene PDF, ZIP y un correo en estado final (la primera vez). |
credit_note.email_bounced |
El correo de la nota crédito rebotó o el comprador lo marcó como queja (delivery.email.status: bounced o complained). |
credit_note.email_failed |
El correo de la nota crédito falló de forma definitiva (delivery.email.status: failed). |
debit_note
| Tipo | Cuándo |
|---|---|
debit_note.accepted |
La DIAN validó la nota débito. Pasa por cualquier camino (API, app, conector o verificación de fondo). |
debit_note.rejected |
La DIAN rechazó la nota débito. Corrígela con PUT y se reenvía con el mismo número. |
debit_note.error |
La nota débito quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). |
debit_note.delivered |
La nota débito ya tiene PDF, ZIP y un correo en estado final (la primera vez). |
debit_note.email_bounced |
El correo de la nota débito rebotó o el comprador lo marcó como queja (delivery.email.status: bounced o complained). |
debit_note.email_failed |
El correo de la nota débito falló de forma definitiva (delivery.email.status: failed). |
support_document
| Tipo | Cuándo |
|---|---|
support_document.accepted |
La DIAN validó el documento soporte. Pasa por cualquier camino (API, app, conector o verificación de fondo). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
support_document.rejected |
La DIAN rechazó el documento soporte. Corrígela con PUT y se reenvía con el mismo número. (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
support_document.error |
El documento soporte quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
support_document_adjustment
| Tipo | Cuándo |
|---|---|
support_document_adjustment.accepted |
La DIAN validó la nota de ajuste del documento soporte. Pasa por cualquier camino (API, app, conector o verificación de fondo). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
support_document_adjustment.rejected |
La DIAN rechazó la nota de ajuste del documento soporte. Corrígela con PUT y se reenvía con el mismo número. (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
support_document_adjustment.error |
La nota de ajuste del documento soporte quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document
| Tipo | Cuándo |
|---|---|
equivalent_document.accepted |
La DIAN validó el documento equivalente. Pasa por cualquier camino (API, app, conector o verificación de fondo). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document.rejected |
La DIAN rechazó el documento equivalente. Corrígela con PUT y se reenvía con el mismo número. (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document.error |
El documento equivalente quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document.delivered |
El documento equivalente ya tiene PDF, ZIP y un correo en estado final (la primera vez). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document.email_bounced |
El correo de el documento equivalente rebotó o el comprador lo marcó como queja (delivery.email.status: bounced o complained). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document.email_failed |
El correo de el documento equivalente falló de forma definitiva (delivery.email.status: failed). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document_adjustment
| Tipo | Cuándo |
|---|---|
equivalent_document_adjustment.accepted |
La DIAN validó la nota de ajuste del documento equivalente. Pasa por cualquier camino (API, app, conector o verificación de fondo). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document_adjustment.rejected |
La DIAN rechazó la nota de ajuste del documento equivalente. Corrígela con PUT y se reenvía con el mismo número. (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document_adjustment.error |
La nota de ajuste del documento equivalente quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document_adjustment.delivered |
La nota de ajuste del documento equivalente ya tiene PDF, ZIP y un correo en estado final (la primera vez). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document_adjustment.email_bounced |
El correo de la nota de ajuste del documento equivalente rebotó o el comprador lo marcó como queja (delivery.email.status: bounced o complained). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
equivalent_document_adjustment.email_failed |
El correo de la nota de ajuste del documento equivalente falló de forma definitiva (delivery.email.status: failed). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
payroll
| Tipo | Cuándo |
|---|---|
payroll.accepted |
La DIAN validó la nómina electrónica. Pasa por cualquier camino (API, app, conector o verificación de fondo). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
payroll.rejected |
La DIAN rechazó la nómina electrónica. Corrígela con PUT y se reenvía con el mismo número. (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
payroll.error |
La nómina electrónica quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
payroll_adjustment
| Tipo | Cuándo |
|---|---|
payroll_adjustment.accepted |
La DIAN validó la nota de ajuste de nómina. Pasa por cualquier camino (API, app, conector o verificación de fondo). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
payroll_adjustment.rejected |
La DIAN rechazó la nota de ajuste de nómina. Corrígela con PUT y se reenvía con el mismo número. (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
payroll_adjustment.error |
La nota de ajuste de nómina quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo (nunca el mensaje de la DIAN). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
radian_event
| Tipo | Cuándo |
|---|---|
radian_event.accepted |
La DIAN validó el evento RADIAN. Pasa por cualquier camino (API, app, conector o verificación de fondo). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
radian_event.rejected |
La DIAN rechazó el evento. Un rechazo es final: el siguiente intento es otro POST /v1/radian_events (otro número). (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |
radian_event.error |
El evento quedó en error: la DIAN no confirmó y Trevol dejó de reintentar. data.error lleva un code y un texto fijo. Reenvíalo con POST …/send. (Catálogo 2: un * de un endpoint creado antes de la fase 3 no lo recibe hasta que se guarde de nuevo su lista de eventos.) |