Toda mudança de estado registrada.
Event model é o ledger de mudanças. Worker event-dispatch envia webhooks. Replay manual disponível para reprocessamento.
Sistema

40+
tipos de evento
100%
mudanças trackadas
Replay
manual via dashboard ou API
HMAC-SHA256
webhooks assinados
Recursos do Event model
Cobertura Completa
Toda transição de estado dispara Event. Subscription, Invoice, Payment, NFe, Customer, Plan, Coupon, Credit — tudo.
- Cobertura 100%
- Todos os modelos
- Toda transição
Dispatcher para Webhooks
Worker event-dispatch lê eventos e envia para WebhookEndpoints registrados. Filtro por events array no endpoint.
- HMAC-SHA256 em cada delivery
- Retry com backoff exponencial
- WebhookDelivery model com status e attempts
Filtros Avançados
Dashboard permite filtro por tipo, recurso, período, organização. Útil para debug.
- Filtro por tipo
- Recurso e período
- Por organização
Replay Manual
Re-dispara webhook para evento específico. Útil quando endpoint do cliente esteve fora.
- Re-dispara webhook
- Recovery
- Manual ou via API
Retenção Configurável
Eventos antigos podem ser arquivados conforme política. Default sem limite hard-coded.
- Arquivamento configurável
- Sem limite default
- Política por org
Idempotência
Evento criado uma única vez por transição. Webhooks redelivered são duplicados, mas evento source é único.
- Source único
- Webhook duplicado OK
- Idempotency-Key
Estrutura Consistente
Todos eventos seguem mesmo schema. Cliente parsea sem branching complexo.
- Schema único
- Parser simples
- Sem branching
Suporte a Custom Events
API permite criação de eventos custom para integração de ferramentas internas.
- Custom events via API
- Tracking de funil
- Métricas próprias
Listar eventos via API
bash
curl https://api.billing.kobana.com.br/v1/events?type=invoice.paid&since=2026-06-01 \
-H "Authorization: Bearer sk_live_..."response
{
"data": [
{
"id": "evt_xyz",
"type": "invoice.paid",
"resource_type": "invoice",
"resource_id": "inv_abc",
"data": { "id": "inv_abc", "status": "paid", "total_cents": 29900 },
"created_at": "2026-06-06T12:30:00Z"
}
]
}