In Chargebee settings, configure a dunning schedule under Retry Settings with desired intervals and maximum attempts
Set up a webhook endpoint in Chargebee and subscribe to the payment_failed event
On webhook receipt, retrieve the Invoice object via GET /api/v2/invoices/:id and inspect its dunning_status and next_retry_at fields
If business logic requires an out-of-band retry, call POST /api/v2/invoices/:id/collect_payment to trigger an immediate charge attempt
After exhausting retries, the invoice moves to not_paid status and the subscription may become cancelled; listen for subscription_cancelled events and trigger a win-back flow
Known gotchas
Chargebee's built-in dunning and a manual collect_payment call can race; pause built-in dunning via the API before issuing manual retries to avoid double-charging
Smart retries powered by Chargebee's payment intelligence are only available on certain plans; check your plan tier before relying on them
The dunning_status field is only populated on invoices linked to a subscription; one-time invoices use a different collection flow
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp