Subscription Statuses
Subscription Statuses
| Status | Description |
|---|---|
INITIATION | Subscription has been created but the customer hasn't completed checkout yet |
ACTIVE | Subscription is active and billing normally |
PAST_DUE | A recurring payment has failed. Inflow will retry automatically |
UNPAID | Multiple payment attempts have failed |
INACTIVE | Subscription is no longer active (e.g., all cycles completed) |
PENDING_CANCELLATION | Cancellation requested — will take effect at the end of the current billing cycle |
CANCELED | Subscription has been fully canceled |
Subscription Lifecycle
INITIATION → ACTIVE → (recurring billing) → ACTIVE
↘ PAST_DUE → ACTIVE (retry success)
→ UNPAID (retry exhausted)
↘ PENDING_CANCELLATION → CANCELED
↘ INACTIVE (cycles completed)
Typical Flow
- INITIATION — Customer starts the checkout process.
- ACTIVE — First payment succeeds. Recurring billing begins.
- ACTIVE (ongoing) — Each billing cycle processes successfully.
- PAST_DUE — A payment fails. Inflow retries automatically.
- ACTIVE — Payment retry succeeds, subscription returns to normal.
- CANCELED — Subscription is canceled by the merchant, customer, or due to payment failures.
Waitlist Statuses
If the offer has waitlist enabled, subscriptions also have a separate waitlist status:
| Waitlist Status | Description |
|---|---|
pending_waitlist | Customer subscribed, awaiting merchant approval |
approved | Merchant approved, payment will be processed within 24 hours |
active | Payment successful, subscription is active |
failed_capture | Payment attempt failed after approval |
declined | Merchant declined the subscriber |
Status in the API
When querying subscriptions via the API, the status field contains the subscription status:
{
"id": "sub_abc123",
"status": "ACTIVE",
"name": "Pro Plan",
"amountInCents": 2999,
"currency": "EUR",
"interval": "month",
"intervalCount": 1,
"createdAt": "2025-01-15T10:30:00.000Z",
"updatedAt": "2025-02-15T10:30:00.000Z"
}Filtering by Status
You can filter subscriptions by status in both the Dashboard and the API:
curl "https://api.inflowpay.xyz/subscription?status=ACTIVE" \
-H "X-Inflow-Api-Key: your_private_key"Available filter values: INITIATION, ACTIVE, PAST_DUE, UNPAID, INACTIVE, PENDING_CANCELLATION, CANCELED
Updated 1 day ago