WebhooksEvents

Subscription state changes

Choose published lifecycle events and reconcile subscription access.

The public webhook specification currently lists subscription.created, subscription.activated, subscription.canceled, and subscription.renewed. It does not publish a subscription.updated webhook contract.

Choose a published event

Use the subscription event catalogue for schemas and examples. Do not subscribe to an undocumented generic update event on the basis of an older guide.

Reconcile access

A subscription lifecycle notification is not automatically proof of payment. Fetch the current subscription through the API and inspect its status and effective period or cancellation dates before granting or revoking access. Use invoice.paid for an invoice-based fulfilment workflow; avoid applying the same business effect from two events.

Verify the raw signature, accept work into a durable inbox, and use a business idempotency key. Do not rely on event order or assume previous_attributes is present.

Receive and verify events.

Owner: david · Reviewed 30 Sep 2026 · Next review 30 Oct 2026

On this page