Saltar al contenido principal

Eventos

Catálogo completo de los eventos emitidos. El nombre sigue el patrón <recurso>.<hecho>; el campo data del payload trae el recurso serializado en el formato de la API v1 o un objeto de referencia compacto (documentado por evento). Un endpoint con la lista de eventos vacía recibe todos, incluidos los eventos futuros.

Cada página de abajo documenta, evento por evento, cuándo se dispara y un payload de ejemplo completo:

RecursoPáginaEventos
Clientespersonperson.created · person.updated · person.deleted · person.classification_changed
Cobroschargecharge.created · charge.updated · charge.deleted · charge.paid · charge.overdue
Acuerdosagreementagreement.created · agreement.updated · agreement.deleted · agreement.accepted · agreement.cancelled · agreement.broken (planeado) · agreement.completed
Disputasdisputedispute.created · dispute.updated · dispute.resolved · dispute.cancelled
Tareastasktask.created · task.updated · task.completed · task.deleted
Reglas de cobranzacollection_rulecollection_rule.created · collection_rule.updated · collection_rule.deleted
Plantillastemplatetemplate.created · template.updated · template.deleted
Clasificacionesclassificationclassification.created · classification.updated · classification.deleted
Interaccionesinteractioninteraction.created
Notificacionesnotificationnotification.sent · notification.delivered · notification.read · notification.failed
Negativacionesnegativationnegativation.review_required · negativation.registered · negativation.removed
Protestosprotestprotest.review_required · protest.registered · protest.paid · protest.cancelled
Pruebawebhook.testwebhook.test (disparado bajo demanda, no suscribible)

El envelope

Toda entrega usa el mismo envelope; solo el data varía:

{
"event": "charge.paid",
"timestamp": "2026-07-23T12:00:00.000Z",
"organizationId": "0f7a3c1e-2b4d-4e6f-8a9b-1c2d3e4f5a6b",
"data": { "...": "documentado por evento en las páginas de arriba" }
}
  • timestamp es el momento en que el evento ocurrió (no el del envío — los reintentos mantienen el mismo timestamp).
  • Los headers de la entrega (X-Webhook-Event, X-Webhook-Event-Id, X-Webhook-Delivery-Id, X-Webhook-Attempt, X-Webhook-Timestamp, X-Webhook-Signature) están descritos en la visión general; la verificación de la firma, en Seguridad.

Convenciones de los payloads

  • Eventos de entidad (*.created, *.updated y similares) traen el recurso completo en data, incluidos los campos monetarios como string decimal ("1500.00") y las fechas en ISO 8601.
  • Eventos de eliminación (*.deleted) traen solo { "id": "<uuid>" } — la eliminación es lógica (soft delete).
  • Eventos de hecho (charge.paid, notification.delivered, negativation.registered...) traen un objeto de referencia compacto con los ids relevantes (chargeId, personId...) — consulta el recurso completo en la API v1 si necesitas más.
  • Pueden agregarse campos nuevos en cualquier momento sin aviso; trata el data de forma tolerante (ignora lo que no conozcas).

Elegir qué suscribir

Para conciliación financiera, charge.paid, charge.overdue, agreement.* y protest.paid suelen bastar. Para espejar el estado completo en un sistema tuyo, suscribe todo (lista vacía) y procesa por prefijo. Los eventos *.review_required son útiles para conectar aprobaciones a herramientas internas (Slack, service desk) sin que nadie tenga que vigilar la cola de revisión.