Eventos de notificação (notification.*)
Ciclo de vida das mensagens enviadas ao devedor pela régua (e-mail, SMS, WhatsApp...). O data é sempre um objeto de referência enxuto — o recurso completo está em GET /api/v1/notifications/{notificationId}.
Valores de channel: email · sms · whatsapp · voice · manual.
notification.sent
Dispara quando a mensagem é aceita pelo provedor de envio.
{
"event": "notification.sent",
"timestamp": "2026-07-23T09:00:05.000Z",
"organizationId": "0f7a3c1e-2b4d-4e6f-8a9b-1c2d3e4f5a6b",
"data": {
"notificationId": "6f8a0c2e-4b6d-4e1f-9a3c-5d7f9b1e3a5c",
"channel": "email",
"recipient": "financeiro@paoquente.com.br",
"chargeId": "4a2b6c8d-1e3f-4a5b-9c7d-2e4f6a8b0c1d",
"personId": "7c1e9f2a-3b4d-4c5e-8f6a-1b2c3d4e5f60"
}
}
chargeId é null em notificações não vinculadas a uma cobrança específica.
No ambiente de teste (sandbox), o envio real é simulado (nenhum e-mail/SMS/WhatsApp sai) mas este evento continua sendo disparado com o campo adicional "sandbox": true em data — assim você valida o consumidor de webhook sem enviar nada ao devedor.
notification.delivered
Dispara quando o provedor confirma a entrega ao destinatário.
{
"event": "notification.delivered",
"timestamp": "2026-07-23T09:00:41.000Z",
"organizationId": "0f7a3c1e-2b4d-4e6f-8a9b-1c2d3e4f5a6b",
"data": {
"notificationId": "6f8a0c2e-4b6d-4e1f-9a3c-5d7f9b1e3a5c",
"channel": "email",
"deliveredAt": "2026-07-23T09:00:40.000Z"
}
}
notification.read
Dispara quando o canal reporta leitura (nem todo canal reporta).
{
"event": "notification.read",
"timestamp": "2026-07-23T10:12:03.000Z",
"organizationId": "0f7a3c1e-2b4d-4e6f-8a9b-1c2d3e4f5a6b",
"data": {
"notificationId": "6f8a0c2e-4b6d-4e1f-9a3c-5d7f9b1e3a5c",
"channel": "email",
"readAt": "2026-07-23T10:12:01.000Z"
}
}
notification.failed
Dispara em falha de envio ou de entrega (bounce). O campo extra identifica a origem:
Falha no envio (o provedor recusou/erro na chamada) — campo error:
{
"event": "notification.failed",
"timestamp": "2026-07-23T09:00:06.000Z",
"organizationId": "0f7a3c1e-2b4d-4e6f-8a9b-1c2d3e4f5a6b",
"data": {
"notificationId": "6f8a0c2e-4b6d-4e1f-9a3c-5d7f9b1e3a5c",
"channel": "whatsapp",
"error": "Provider timeout after 10000ms"
}
}
Bounce (entrega recusada pelo destino) — campo reason; se o canal for e-mail, o endereço é marcado como inválido no cadastro do cliente:
{
"event": "notification.failed",
"timestamp": "2026-07-23T09:03:18.000Z",
"organizationId": "0f7a3c1e-2b4d-4e6f-8a9b-1c2d3e4f5a6b",
"data": {
"notificationId": "6f8a0c2e-4b6d-4e1f-9a3c-5d7f9b1e3a5c",
"channel": "email",
"reason": "Mailbox does not exist"
}
}