subscription object (and the customer and plan resolved through it). The shared delivery envelope, headers, and inline-expansion rules are on the webhooks overview and the event index; every sample below shows the full envelope.
subscription_created
subscription_created
Fires when a subscription is created, through
POST /v1/subscriptions, or when a checkout that binds a plan settles. Emitted by SubscriptionService.create and CheckoutSettlement.subscription_activated
subscription_activated
Fires when a subscription becomes
active: a trial converts, or the first charge succeeds. Emitted via the state machine (activate).subscription_updated
subscription_updated
Fires when a mutable field changes without a status transition. Today that is setting cancel-at-period-end. The changed flag is carried alongside the
subscription.subscription_plan_changed
subscription_plan_changed
Fires when a subscription’s plan changes: immediately via
POST /v1/subscriptions/{id}/change-plan (carries fromPlanId, toPlanId, and the proration result) or when a scheduled change is applied at renewal (carries toPlanId and scheduled: true). The changed-to plan is the one expanded into plan.subscription_paused / subscription_resumed
subscription_paused / subscription_resumed
Fire when a subscription is paused or resumed (
POST /v1/subscriptions/{id}/pause and .../resume). Each carries just the subscription (with customer and plan). The example is subscription_paused; subscription_resumed is identical with type and status: "active".subscription_past_due
subscription_past_due
Fires when a renewal charge fails and the subscription moves to
past_due; dunning has begun. Emitted by the state machine (renewal_failed) from the dunning service.subscription_recovered
subscription_recovered
Fires when dunning wins and a
past_due subscription returns to active. Emitted by the state machine (recover).subscription_unpaid
subscription_unpaid
Fires when dunning is exhausted and the subscription is written off to
unpaid. Emitted by the state machine (exhaust_dunning).subscription_cancelled
subscription_cancelled
Fires on an immediate cancel (
POST /v1/subscriptions/{id}/cancel). Any unused-time credit granted at cancellation is carried as creditKobo (minor units; 0 when none). Cancelling at period end emits subscription_updated instead, then subscription_cancelled when the period actually ends.subscription_expired
subscription_expired
Fires when a subscription reaches its
maxCycles and stops. Emitted by the state machine (reach_limit).subscription_incomplete_expired
subscription_incomplete_expired
Fires when an
incomplete subscription expires before it was ever activated (the initial payment never completed). Emitted by the state machine (expire_incomplete).