Lifecycle
Subscription statuses
Every subscription has a status that tells you where it is in its lifecycle: up to date, retrying a failed payment, paused, or finished.
Statuses at a glance
| Status | Meaning | Charges scheduled? |
|---|---|---|
FULFILLED | The subscription is active and up to date. The last payment was successful. | Yes, next renewal |
PAST_DUE | A renewal payment failed and the plan's retry settings are retrying it. | Yes, next retry |
PAUSED | The subscription has been paused. No payments are charged until it is resumed. | No |
CANCELLED | The subscription has ended. Final status. | No |
ARCHIVED | The initial payment failed, so the subscription never started. Final status. | No |
Lifecycle
The diagram leaves out cancellations triggered by the merchant, the backoffice or a chargeback. They are listed under Cancellation.
How a subscription moves between statuses
Start
A subscription is created when the result of its first (initial) payment is received. There is no status while that payment is in progress.
- If the initial payment is accepted, the subscription is created as
FULFILLED. - If the initial payment fails, the subscription is created as
ARCHIVEDand is never charged.
Renewals and retries
- Each successful renewal keeps the subscription in
FULFILLED. - If a renewal fails and the plan has retries left, it becomes
PAST_DUE. - If a retry succeeds, it goes back to
FULFILLED. - If a renewal fails and there are no retries left, or the plan has no retry settings, it becomes
CANCELLED. - If the bank returns a hard decline (an error that will not succeed on retry), it becomes
CANCELLEDstraight away, even if retries are left.
Pause and resume
A subscription in FULFILLED or PAST_DUE can be paused. It becomes PAUSED and no payments are charged.
When it is resumed, it goes back to the status it had before the pause. For example, a subscription paused while PAST_DUE is PAST_DUE again after resuming.
Pausing an already paused subscription, or resuming one that is not paused, has no effect.
Cancellation
A subscription becomes CANCELLED for one of these reasons:
| Reason | When |
|---|---|
END_PLAN | A payment failed and there are no retries left (or the plan has no retries). |
HARD_DECLINE | A payment failed with an error that cannot be retried. |
MERCHANT_API | The merchant cancelled it through the API. |
BACKOFFICE_API | It was cancelled from the backoffice. |
DISPUTE | A dispute was received for one of its payments. |
CANCELLATION_SETTINGS | The plan's cancellation settings triggered it (for example, after receiving a chargeback). |
Final statuses
CANCELLED and ARCHIVED are final. A subscription in a final status:
- is never charged again;
- cannot be paused, resumed, cancelled, updated or moved to another plan.
To continue billing a customer whose subscription is in a final status, create a new subscription.