Dodo Payments provides real-time webhook notifications to keep you informed about critical events related to transactions, subscriptions, refunds, disputes, and license key management. Below is a detailed guide to these events, categorized for clarity, along with implementation tips and considerations.
Payment Events
Refund Events
Dispute Events
Subscription Events
License Key Events
Entitlement Grant Events
For detailed payload schemas, sample events, and the full revocation_reason reference, see Entitlement Grant Webhooks.
Credit Events
Recovery Events
For detailed payload schemas, field descriptions, and handler examples, see Recovery Webhooks.
Dunning Events
For detailed payload schemas, field descriptions, and handler examples, see Recovery Webhooks.
Payout Events
These events track the movement of your funds from Dodo Payments to your bank account, mirroring the payout statuses shown in the dashboard. The payload is a payout object with the same shape as an entry from GET /payouts.
Do not assume payout events are terminal or strictly ordered. payout.failed can legitimately arrive after payout.success when a bank returns the transfer, and payout.success can arrive after payout.failed when a failed payout is later recovered. Always treat the status on the payload as the current state.
payout.created was previously emitted as payout.not_initiated. If you have an existing endpoint filtering on payout.not_initiated, update the filter to payout.created so it keeps matching.
For detailed payload schemas, field descriptions, and handler examples, see Payout Webhooks.
These webhook events are designed to provide merchants with critical updates to manage their operations effectively. Implement robust handlers for each relevant event in your webhook integration to ensure smooth and reliable functionality.