Webhook Payloads
Faturamento baseado em créditos
O payload enviado ao seu endpoint webhook quando eventos de faturamento baseado em créditos ocorrem — créditos virtuais (chamadas de API, tokens, horas de computação) concedidos, consumidos, expirados, transferidos ou alertas de saldo. Esses webhooks não estão relacionados às Carteiras do Cliente (saldos monetários).
Eventos de Webhook de Faturamento Baseado em Créditos
Os seguintes eventos de webhook estão disponíveis para acompanhar as alterações no ciclo de vida do faturamento baseado em créditos. Esses eventos se aplicam a direitos de créditos virtuais (chamadas de API, tokens, horas de computação), não às Carteiras do Cliente (saldos monetários).| Event | Description |
|---|---|
credit.added | Credits are granted to a customer (via subscription, one-time purchase, add-on, or API) |
credit.deducted | Credits are consumed through usage or manual debit |
credit.expired | Unused credits expired after the configured expiry period |
credit.rolled_over | Unused credits are carried forward to a new grant at cycle end |
credit.rollover_forfeited | Credits forfeited because the max rollover count was reached |
credit.overage_charged | Overage charges applied when usage continues beyond zero balance |
credit.manual_adjustment | Manual credit or debit adjustment made via dashboard or API |
credit.balance_low | Credit balance drops below the configured low balance threshold |
Eventos do Livro-razão
Todos os eventos do livro-razão (credit.added através de credit.manual_adjustment) compartilham o mesmo payload CreditLedgerEntryResponse documentado no esquema abaixo.
A carga inclui um campo metadata resolvido a partir da fonte da concessão de crédito — a assinatura ou pagamento criado no checkout. Isso permite que você vincule créditos de carteira ao seu próprio checkout metadata (por exemplo, um orgId) em vez do customer_id emitido pelo Dodo: concessões com fonte de assinatura mostram o metadata da assinatura e concessões com fonte de pagamento mostram o metadata do pagamento. O campo fica vazio quando a concessão não tem fonte resolvível (por exemplo, créditos concedidos diretamente via API).
Evento de Saldo Baixo (credit.balance_low)
O eventocredit.balance_low usa uma carga diferente (CreditBalanceLowPayload) focada em alertas de limite:
O cliente cujo saldo de crédito acionou o alerta.
A assinatura associada a esse direito de crédito.
O direito de crédito que tem saldo baixo.
Nome de exibição do direito de crédito.
Saldo atual de crédito no momento do alerta.
Total de créditos emitidos por ciclo de faturamento para essa assinatura.
A porcentagem de limite de saldo baixo configurada.
O valor absoluto de crédito ao qual o limite corresponde.
Usando credit.balance_low para Alertas Próativos
Use o webhook credit.balance_low para notificar os clientes antes que eles fiquem sem créditos:
Get Customer Balance
Verifique o saldo atual de um cliente via API.
Create Ledger Entry
Credito ou debito manualmente o saldo de um cliente.
Esquema da Carga Útil do Webhook
Response for a ledger entry
Brand id this credit ledger entry belongs to
Metadata associated with the credit grant's source (the subscription or payment created at checkout). Empty when the grant has no resolvable source (e.g. credits granted directly via the API).
Opções disponíveis:
credit_added, credit_deducted, credit_expired, credit_rolled_over, rollover_forfeited, overage_charged, overage_reset, auto_top_up, manual_adjustment, refund Última modificação em 26 de junho de 2026