Start a subscription
Start a subscription on a recurring product and run the first-cycle
customer-initiated payment. Provide exactly one of customerId /
customerData. method is one of CARD, APPLE_PAY, GOOGLE_PAY,
CRYPTO.
- Card family (
CARD/APPLE_PAY/GOOGLE_PAY) — pass a freshcard.tokenizedInstrument. The first cycle is a customer-present CIT (3DS if the issuer requires SCA); the network credential is stored so Suby re-charges the renewal cycles off-session. Failed renewals are retried automatically on a progressive back-off schedule (up to 8 attempts over 30 days) — soft declines (insufficient funds, network/issuer errors, velocity limits) are retried; hard declines (stolen/lost card, closed account) end the subscription immediately. - Crypto (
method=CRYPTO) — nocard; instead passcrypto.mode(qr_deposit|wallet_connect),crypto.chainId, andcrypto.assetId, exactly like a one-time crypto payment. The first cycle is a customer-present deposit (the response carries a depositinstructionrather than a cardcheckouthandle). Renewals are driven by a per-cycle renew email (no off-session pull for crypto).
Authorizations
Secret API key. sk_live_… (production) or sk_sandbox_… (sandbox).
Headers
Optional key (≤255 chars, e.g. a UUID v4) that makes this POST safe to retry: the first request executes and its response is cached for 24h; a retry with the SAME key replays that response instead of re-executing (no duplicate payment/subscription). A reused key with a different request → 422 IDEMPOTENCY_KEY_CONFLICT; a retry while the first is still in flight → 409. See the Idempotency guide.
255"5f3b9c2e-1a4d-4f2b-9c31-7e2a1b6d8c04"
Body
"pro_abc123"
CARD, APPLE_PAY, GOOGLE_PAY, CRYPTO Mutually exclusive with customerData.
"cus_abc123"
Inline customer for create-on-the-fly. Mutually exclusive with customerId.
MoR VAT for the recurring price (applies to every cycle). exclusive (default) adds VAT on top; inclusive treats the price as VAT-inclusive.
inclusive, exclusive B2B purchase details. Accepted on ALL accounts — businessName / taxId are always stored on the customer, and businessName doubles as the card holder name. The VAT reverse-charge it triggers (0% VAT except France) only takes effect on Merchant-of-Record accounts; on non-MoR accounts no VAT applies at all, so it has no tax effect.
Card options. Required for the card family; omit for CRYPTO.
Crypto first-cycle routing. Required when method=CRYPTO; omit for the card family.
Your business reference (plan/order id). Stored + echoed on the subscription. Not unique.
120Key-value pairs. ≤50 keys, keys ≤40 chars, values are
strings ≤500 chars (or null to clear). Nested structures must be
JSON-stringified into a single string value.

