When it fires
When a merchant cancels a subscriber — either immediately or scheduled at the end of the current period — from the dashboard.- Immediate cancellation: subscriber status is set to
cancelledright away;subscriber.cancelledfires immediately - Cancel at period end: subscriber continues as
activeuntil the current period ends, then transitions tocancelledand this event fires
What to do
Depends on whether this is an immediate or end-of-period cancellation. Check whethercurrentPeriodEnd is in the future.
If currentPeriodEnd is in the past or now: Revoke access immediately.
If currentPeriodEnd is in the future: The subscriber paid through the end of the period. Maintain access until then and schedule revocation. You will not receive another webhook at period end — act on this event.
Payload
| Field | Type | Description |
|---|---|---|
event | string | Always subscriber.cancelled |
subscriberId | string | UUID of the subscriber record |
merchantId | string | Your merchant account UUID |
planId | string | UUID of the plan |
email | string | Subscriber email address |
status | string | Always cancelled |
currentPeriodEnd | string | ISO 8601 — if in the future, access continues until this date |
timestamp | string | ISO 8601 — when the event was generated |
Handler example
Node.js
Related events
subscriber.expired— Expiry due to non-payment (not a manual cancellation).subscriber.paused— Temporary halt; does not end the subscription.