Subscriptions

Recurring billing and subscription management.

Subscriptions can be created through checkout sessions with recurring products, or directly via the API using a stored customer's payment method.

Not available over the API on Paysio Debit & Payouts

POST /subscriptions returns 400 on Debit & Payouts workspaces: the processor requires the card security code for every charge and the API never stores it. Use hosted Checkout Sessions with recurring products instead — they fully support subscriptions. Listing, cancelling, pausing, and resuming existing subscriptions still work.

Create Subscription

Create a subscription by charging a stored customer's payment method. The first payment is charged immediately, unless a future start_date is provided — in which case the subscription is created with status 'scheduled' and no payment is charged until that date.

POSThttps://paysio.com/api/v1/subscriptions

Authorizations

Authorizationstringheaderrequired

Secret key (sk_*). Prepend your key with Bearer, e.g. Bearer sk_test_your_secret_key.

Body

customer_idstringrequired

ID of the customer with a stored payment method

product_idstringrequired

ID of a recurring product

payment_method_idstring

Charge a SPECIFIC saved method instead of the customer's default. Use an id from GET /customers/:id/payment-methods (the "vault_…" form or the bare UUID). It must belong to this customer and have been used at your business, otherwise the call returns 400 — a subscription is never silently created against a different card. Omit to use the default method.

start_datestring

ISO 8601 date. If in the future, creates a scheduled subscription that activates on this date. The customer is not charged until then.

metadataobject

Arbitrary key-value metadata (optional)

List Subscriptions

List subscriptions with customer and product details.

GEThttps://paysio.com/api/v1/subscriptions

Authorizations

Authorizationstringheaderrequired

Any API key. Prepend your key with Bearer, e.g. Bearer sk_test_your_secret_key.

Query parameters

limitinteger

1-100, default 10

starting_afterstring

Cursor for pagination

Get Subscription

Retrieve a single subscription. Includes cancel_at_period_end field.

GEThttps://paysio.com/api/v1/subscriptions/:id

Authorizations

Authorizationstringheaderrequired

Any API key. Prepend your key with Bearer, e.g. Bearer sk_test_your_secret_key.

Cancel Subscription

Cancel a subscription. Supports immediate cancellation or scheduling cancellation at the end of the current billing period. Note: subscriptions with status 'scheduled' (created with a future start_date) are always cancelled immediately regardless of the at_period_end flag.

POSThttps://paysio.com/api/v1/subscriptions/:id/cancel

Authorizations

Authorizationstringheaderrequired

Secret key (sk_*). Prepend your key with Bearer, e.g. Bearer sk_test_your_secret_key.

Body

reasonstring

Cancellation reason (optional)

at_period_endboolean

If true, subscription stays active until current period ends. Default: false. Ignored for scheduled subscriptions.

Pause Subscription

Pause an active subscription. Billing is suspended until resumed.

POSThttps://paysio.com/api/v1/subscriptions/:id/pause

Authorizations

Authorizationstringheaderrequired

Secret key (sk_*). Prepend your key with Bearer, e.g. Bearer sk_test_your_secret_key.

Resume Subscription

Resume a paused subscription. Billing dates are extended by the paused duration.

POSThttps://paysio.com/api/v1/subscriptions/:id/resume

Authorizations

Authorizationstringheaderrequired

Secret key (sk_*). Prepend your key with Bearer, e.g. Bearer sk_test_your_secret_key.