When to use Checkout
Use Checkout when your customers initiate and pay for their own subscription: a self-serve pricing page, an upgrade flow, or a sign-up gate. If you create subscriptions on behalf of customers from your own backend (after a sales call, from an admin dashboard, or via contract), use the Subscriptions API instead.How it works
Your backend creates a Checkout Session with the customer, plan, and payment provider. Flexprice generates a hosted payment page URL and returns it to you. You redirect the customer there. Once payment is complete, Flexprice activates the subscription and finalizes the invoice. If the customer cancels, the session times out, or the payment fails, Flexprice cleans up all draft records automatically.Collection methods
A checkout session collects payment one of three ways, depending on whether you need a recurring mandate:- One-time payment link (default) — the customer pays a single hosted link. Every future invoice needs a new link.
- UPI Autopay mandate — the customer authorizes a recurring UPI mandate once, and future invoices auto-charge.
- Card mandate — the customer saves a card and authorizes recurring charges once, and future invoices auto-charge.
payment_provider_config on the session — see Autopay & Mandates.
Choose your payment provider
Each provider has its own setup page with connection instructions, webhook configuration, and test credentials.Razorpay
Accept payments via Razorpay payment links.
Start building
Checkout Sessions API
Create, retrieve, and manage sessions.
Implementation Guide
Backend, frontend redirect, webhook handling, and go-live checklist.
Autopay & Mandates
Collect a recurring mandate once, then auto-charge future invoices.
Webhook Events
Subscribe to
checkout.session.* events to trigger fulfillment in your system.Manual Subscriptions
Create subscriptions directly without a payment step.
Exportable UI
Pricing Widget, Table, and Cards — feed SDK, API, or your own data.

