Connecting it up
Webhooks and the API
For merchants with their own backend. Built, and not yet proven.
If you already run software, you can have payments tell your own system what happened: webhooks for events, and a small API for reading subscription status and reporting metered usage.
The API and webhooks is not live yet
Both are built and neither has been proven by a real integration end to end. They are documented here so you know the road exists, but if one of them is what you need, get in touch before you build on it and we will work through your first integration with you rather than have you discover an edge case in production.
The shape of it
Deliberately familiar: if you have integrated Stripe, you should recognise every piece. Signed webhooks with a timestamp, a stable event id so retries are safe to handle twice, and a status endpoint to reconcile against when you miss something.
subscription.created: grant access.payment.succeeded: a renewal landed; the money is already in your wallet.payment.failed: with a reason, so you can nudge the right way.subscription.cancelled: revoke access.
The one rule worth stating twice
Do not gate access on webhooks alone. They travel over the internet and can be missed. One restart at the wrong moment and a cancellation never reaches you, leaving somebody on a paid plan forever with nothing to correct it. Check status as well. This is not specific to us; every payment provider tells you the same thing.