---
title: The subscription lifecycle
description: The six states a subscription can be in, and the rules for moving between them.
domain: subscription
status: shipped
visibility: public
last_verified: 2026-08-06
order: 10
---
A subscription is always in exactly one of six states. The state says what the subscription is doing right now: waiting to start, on a trial, billing normally, on its way out, paused, or finished.

```viz subscription-lifecycle
```

Not every subscription passes through every state. A plan with no trial starts at active. One with no future start date begins right away. The diagram shows the common path; the rules below cover every allowed move.

## The six states

| State | What it means |
|---|---|
| Scheduled | Created with a start date in the future. Not billing yet. |
| Trialing | On a free trial. It will start billing when the trial ends. |
| Active | The normal state. Billing on its schedule. |
| Paused | Temporarily suspended. No invoices go out while it is paused. |
| Cancelling | A cancellation is scheduled. Service continues until the cancel date. |
| Cancelled | Finished. This is the end of the line, and a subscription never leaves it. |

## Two things at once: state and payment

The state above is only half the picture. It tells you where the subscription is in its life. It does not tell you whether the customer has paid.

That is a separate axis, the payment status, worked out from the subscription's invoices:

| Payment status | What it means |
|---|---|
| Not billed | No invoice has been raised yet. |
| Paid | Everything invoiced is paid. |
| Due | An invoice is open and waiting for payment. |
| Overdue | An invoice has passed its due date unpaid. |

The two are independent. A subscription can be active and overdue at the same time: it is running normally, but the last invoice has not been paid. Keeping these apart means a missed payment does not change what the subscription is; it changes whether it owes money. The payment status comes from the subscription's [invoices](/guide/invoices/invoice-lifecycle), and recovery of unpaid invoices is handled by [dunning](/guide/dunning/how-dunning-works).

## How a subscription moves between states

Not every move is allowed. A subscription follows a fixed set of transitions:

| From | Can move to |
|---|---|
| Scheduled | Trialing, Active, Cancelled |
| Trialing | Active, Cancelling, Cancelled |
| Active | Paused, Cancelling, Cancelled |
| Paused | Active, Cancelling, Cancelled |
| Cancelling | Active (this is an uncancel), Cancelled |
| Cancelled | nothing; it is the end |

A few things follow from this table:

- **You can only pause from active.** A trialing or cancelling subscription cannot be paused.
- **Cancelling is reversible.** Moving from cancelling back to active is an uncancel. Once a subscription is cancelled, though, there is no way back; you start a new subscription instead.
- **Any live state can go straight to cancelled.** An immediate cancellation skips the cancelling step.

## What triggers each move

- **Into scheduled or trialing:** creating a subscription with a future start date, or with trial days on its price.
- **Into active:** a scheduled subscription reaching its start date, a trial ending, a paused subscription resuming, or a cancelling subscription being uncancelled.
- **Into paused:** pausing an active subscription.
- **Into cancelling:** scheduling a cancellation for a future date.
- **Into cancelled:** an immediate cancellation, or a scheduled cancel date arriving.

## One currency, from the customer

A subscription bills in exactly one currency, and it has to be the customer's.
A customer's currency is fixed when you create them and never changes, so when
you put them on a plan, only prices in that currency can be chosen. The rest are
greyed out in the picker, and the API and importer refuse them too.

This is not a formality. Everything downstream of the subscription assumes the
customer and the invoice agree: a credit note has to match both the customer and
the invoice it credits, the customer's default ledger view is in their currency,
and wallet credit can only be drawn against invoices in the same currency. A
subscription billing a dollar customer in euros would produce invoices that
cannot be credited, do not show up where the customer looks, and cannot be paid
from their balance.

If you need to bill the same company in a second currency, create a second
customer in that currency. The two are separate billing relationships, which is
what they are in practice.
