type and read data.object. See
Receiving webhooks for registration and signature verification.
Subscription events
subscription.created
subscription.created
Trigger: A new subscription is created.
subscription.activated
subscription.activated
Trigger: A trial subscription converts to active (trial period ends, first charge succeeds).
subscription.renewed
subscription.renewed
Trigger: A billing cycle completes successfully — card charged or transfer matched.
subscription.past_due
subscription.past_due
Trigger: The first renewal attempt fails. Dunning starts.
subscription.grace
subscription.grace
Trigger: All dunning retries exhausted. Grace period begins.
subscription.delinquent
subscription.delinquent
Trigger: Grace period expired without payment. Access is revoked.
subscription.recovered
subscription.recovered
Trigger: An outstanding invoice is paid (card retry succeeded or bank transfer matched) while the subscription is in
past_due or grace. Access is restored.subscription.paused
subscription.paused
Trigger: Subscription is paused via the API. Billing stops. Access revoked.
subscription.resumed
subscription.resumed
Trigger: A paused subscription is resumed. Billing restarts.
subscription.canceled
subscription.canceled
Trigger: Subscription is canceled (at period end or immediately).
subscription.upgraded
subscription.upgraded
Trigger: Customer’s plan is upgraded (move to higher-priced plan).
subscription.downgraded
subscription.downgraded
Trigger: Customer’s plan is downgraded (move to lower-priced plan).
subscription.plan_changed
subscription.plan_changed
Trigger: Plan changed to a plan of equal price (lateral move).
subscription.plan_change_scheduled
subscription.plan_change_scheduled
Trigger: A plan change is queued for the end of the current period.
subscription.plan_change_canceled
subscription.plan_change_canceled
Trigger: A scheduled plan change is canceled before it fires.
Invoice events
invoice.created
invoice.created
Trigger: A new invoice is created (at renewal or from a plan change proration).
invoice.paid
invoice.paid
Trigger: Invoice is fully paid — card charged or transfer matched in full.
invoice.partially_paid
invoice.partially_paid
Trigger: A transfer was received but only covers part of the invoice.
invoice.voided
invoice.voided
Trigger: Invoice is voided (canceled before collection).
Transfer events
transfer.matched
transfer.matched
Trigger: An inbound bank transfer was matched to an open invoice and paid it in full.
transfer.partial
transfer.partial
Trigger: A transfer arrived for less than the invoice amount. Invoice moves to
partially_paid.transfer.suspense
transfer.suspense
Trigger: A transfer arrived from a virtual account but there’s no open invoice to match it to.Resolve via
POST /admin/suspense/:id/resolve.