Dunning is the automated process of recovering failed payments. When an invoice payment fails, the dunning policy defines a sequence of escalating actions - retry the payment, send reminder emails, and eventually cancel the subscription if payment isn't recovered.
How it works:
- An invoice payment fails
- The dunning policy's first step activates (e.g., retry after 3 days)
- If the retry fails, the next step activates (e.g., send a reminder email after 7 days)
- Steps escalate until payment succeeds or the final action triggers (e.g., cancel subscription after 30 days)
Dunning policies can be set at the organization level (default for all plans) or per-plan for different escalation paths.
Get the organization dunning policy
Returns the active dunning policy for the organization.
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Get the organization dunning policy › Responses
OK
Create or update the organization dunning policy
Creates a new dunning policy if none exists (201), or updates the existing one (200).
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Create or update the organization dunning policy › Responses
OK
Delete the organization dunning policy
Soft-deletes the active dunning policy for the organization.
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Delete the organization dunning policy › Responses
No Content
Get a plan-level dunning policy
Returns the dunning policy override for a specific plan.
path Parameters
planIdPlan UUID
Plan UUID
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Get a plan-level dunning policy › Responses
OK
Create or update a plan-level dunning policy
Creates (201) or updates (200) a dunning policy override scoped to a specific plan.
path Parameters
planIdPlan UUID
Plan UUID
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Create or update a plan-level dunning policy › Responses
OK
Delete a plan-level dunning policy
Removes the dunning policy override for a specific plan.
path Parameters
planIdPlan UUID
Plan UUID
Headers
X-Workspace-IdSelects the workspace this request operates in, by workspace UUID or slug (e.g. a sandbox workspace for test integrations). Omitted: the organization's default live workspace. Unknown workspace: 404; workspace outside your organization: 403. Discover workspaces via GET /workspaces.
Workspace UUID or slug.
Delete a plan-level dunning policy › Responses
No Content