Overview
Once a subscription is created andACTIVE, you have full control over how it behaves over time. This page covers the four operations that change a subscription’s state:
All lifecycle operations use the subscription
id (integer) from the Create Subscription response — not the planCode. Make sure you have saved data.subscription.id before calling any of these endpoints.Key Requirements
Retrieve your API keys from your dashboard by following the steps on our Authentication page. Use your public API key for all lifecycle requests.
Pause a Subscription
Suspends recurring billing for a subscription. No charges will be attempted while the subscription isPAUSED. The customer’s card remains enrolled — billing resumes when the pause is lifted.
You can set an optional resumeAt date to automatically restart billing on a specific date. If you omit it, the subscription stays paused until you manually call Resume.
Body parameters
Sample response
Resume a Subscription
Lifts a pause and restarts automatic billing. The next charge date is recalculated from the moment the subscription resumes. Only subscriptions with a status ofPAUSED can be resumed.
Resume has no request body — just pass the subscription
id in the URL.Cancel a Subscription
Permanently cancels a subscription. Once cancelled, all future billing stops immediately andnextChargeDate is cleared. This cannot be undone.
Body parameters
Sample response
Change Plan
Moves a customer from their current plan to a different one. Use this when a customer upgrades, downgrades, or switches pricing tiers. You control when the change takes effect using theeffective field:
effective defaults to NEXT_CYCLE if you leave it out. This is the safer option for most cases — the customer’s current billing period is honoured before the new plan kicks in.
Body parameters
Sample response
Error handling
Developer notes
- Use Pause when a customer needs a temporary break (e.g. a student on holiday). Billing resumes cleanly without needing to create a new subscription.
- Use Cancel only when the customer’s subscription should permanently end. If there’s any chance they will return, Pause is the better choice.
- Change Plan with
NEXT_CYCLEis the safest option for upgrades/downgrades — it respects the customer’s paid billing window. UseIMMEDIATELYonly when you need the change to take effect right away (e.g. an emergency downgrade). pendingPlanIdin the Change Plan response shows the new plan is queued but not yet active. The switch happens at the next billing cycle.- All lifecycle operations require the subscription
id(integer), not theplanCode. Keep a mapping of customer → subscriptionidin your database.
What’s next
Subscription Reads
View subscription details, charge history, upcoming charges, and the full event audit log.
Subscription Plans
Create or update the plans your customers subscribe to.