The payload sent to your webhook endpoint when credit-based billing events occur — virtual credits (API calls, tokens, compute hours) granted, consumed, expired, rolled over, or balance alerts. These webhooks are not related to Customer Wallets (monetary balances).
Documentation Index
Fetch the complete documentation index at: https://docs.dodopayments.com/llms.txt
Use this file to discover all available pages before exploring further.
| 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 |
credit.added through credit.manual_adjustment) share the same CreditLedgerEntryResponse payload documented in the schema below.
credit.balance_low event uses a different payload (CreditBalanceLowPayload) focused on threshold alerting:
credit.balance_low for Proactive Alertscredit.balance_low webhook to notify customers before they run out of credits:
Response for a ledger entry
credit_added, credit_deducted, credit_expired, credit_rolled_over, rollover_forfeited, overage_charged, overage_reset, auto_top_up, manual_adjustment, refund