Create a checkout session
Creates a checkout session in the live or test mode of the API key used. The flow determines what the session does: payment collects a one-time payment, subscription starts a recurring subscription, and setup saves a payment method for future payments. Required fields depend on the flow. After creating the session, redirect your customer to the session’s redirect_url or initialize the Fintoc widget with the session’s session_token.
v2 · Base URL https://api.fintoc.com/v2Authorizations
Body
Three-letter ISO 4217 currency code, in uppercase. One of CLP or MXN.
CLP, MXN "CLP"
Amount to charge your customer, in the smallest unit of currency. For payment flow sessions, provide either amount or line_items. Omit for subscription and setup flow sessions, where amount does not apply.
350000
Business on whose behalf you collect the payment, for payment aggregators.
URL Fintoc redirects your customer to when the payment is not completed.
"https://merchant.com/cancel"
id of an existing customer to attach to the session. Cannot be combined with customer_data.
"cus_xK9mPq2RkV3WnDQG"
Data of a new customer to create and attach to the session. Cannot be combined with customer. You must provide either email or a complete tax_id (both type and value).
Email of your customer, used to send the payment receipt.
"customer@example.com"
ISO 8601 datetime, in UTC, of when the session expires. Must be at least 10 minutes in the future. Defaults to 24 hours after creation when omitted.
"2026-01-14T18:48:25Z"
Flow the session runs. One of payment (collects a one-time payment), subscription (starts a recurring subscription), or setup (saves a payment method for future payments). Defaults to payment.
payment, subscription, setup "payment"
Items to charge for. Required for subscription flow sessions. For payment flow sessions, provide either amount or line_items.
Set of key-value pairs to attach to the session.
id of a saved payment method to pay the session with. Requires customer and payment_method_types of ["bank_transfer"].
"pm_xL9mPq2RkV3WnDQG"
id of an existing subscription whose payment method this session updates once the customer completes it. Only for setup flow sessions.
"sub_xL9mPq2RkV3WnDQG"
Additional configuration of the session's payment methods, keyed by payment method type. Each key is one of your payment_method_types.
Payment method types your customer can use to pay the session. Valid values depend on the flow: payment accepts card, bank_transfer, and installments; subscription accepts card and pac (automatic recurring bank debit); setup accepts card, bank_transfer, and pac. In MXN sessions, subscription and setup flows accept only card. Defaults to the types your organization has enabled for the flow.
bank_transfer, installments, card, pac Whether to offer your customer the option to save their payment method for future payments. One of enabled or disabled. Only valid for payment flow sessions. When enabled, you must also provide customer or customer_data.
disabled, enabled "enabled"
URL Fintoc redirects your customer to after a successful payment.
"https://merchant.com/success"
UI mode for payment flow sessions. Set to embedded to initialize the Fintoc widget with the session's session_token instead of redirecting your customer. When embedded, you can omit both success_url and cancel_url.
embedded "embedded"
Response
The created checkout session.
Unique identifier of the checkout session.
"cs_li5531onlFDi235"
Type of the object. Always checkout_session.
Amount the session charges your customer, in the smallest unit of currency. For CLP the smallest unit is one peso (CLP has no decimals), so 350000 means $350,000 CLP. For MXN the smallest unit is one centavo, so 350000 means $3,500.00 MXN. null for setup and subscription flow sessions, which do not carry a single amount.
350000
Business on whose behalf you collect the payment, for payment aggregators. null when the session was created without a business profile.
URL Fintoc redirects your customer to when the payment is not completed. null when the session was created without redirect URLs.
"https://merchant.com/cancel"
ISO 8601 timestamp of when the checkout session was created.
"2026-01-13T18:48:25Z"
Three-letter ISO 4217 currency code, in uppercase. One of CLP or MXN.
CLP, MXN "CLP"
Email of your customer, used to send the payment receipt. null when not provided.
"customer@example.com"
ISO 8601 timestamp of when the checkout session expires. After this time your customer can no longer pay the session.
"2026-01-14T18:48:25Z"
Flow the session runs. One of payment (collects a one-time payment), subscription (starts a recurring subscription), or setup (saves a payment method for future payments).
payment, subscription, setup "payment"
Items the session charges for. null when the session was created without line items.
Set of key-value pairs you attached to the session.
Mode of the object. live objects use real institution data, test objects use fake data for integration testing.
test, live "live"
id of the saved payment method that pays the session. null when the session is not paid with a previously saved payment method.
"pm_xL9mPq2RkV3WnDQG"
Configuration of the session's payment methods, keyed by payment method type. Each key matches one of payment_method_types and holds the options you set when creating the session, such as the recipient_account for bank_transfer or the kinds for card. See POST /v2/checkout_sessions for the full shape.
Payment method types your customer can use to pay the session. One or more of card, bank_transfer, installments, and pac (automatic recurring bank debit).
bank_transfer, installments, card, pac Payment generated by the session. null until your customer starts a payment attempt.
URL of the Fintoc-hosted checkout page where your customer completes the payment. Redirect your customer to this URL after creating the session. null for sessions paid through the Fintoc widget instead of a redirect.
"https://pay.fintoc.com/cs_li5531onlFDi235"
Token used to initialize the Fintoc widget to pay the session. null for subscription and setup flow sessions and for payments completed outside the widget, like non-embedded card payments.
"eyJhbGciOiJIUzI1NiJ9.eyJpZCI6ImNzX2xpNTUzMSJ9.iV2qAVrqYLuqxF4"
Unique identifier for the setup intent created by setup and subscription flow sessions. null for other flows and until Fintoc attempts a setup. Retrieve the setup intent's status and error with the setup intent endpoint.
"seti_xL9mPq2RkV3WnDQG"
Lifecycle status of the session. created until your customer starts paying, in_progress while Fintoc processes the payment, and finished or expired once the session succeeds or expires.
created, in_progress, expired, finished "created"
id of the subscription started by a subscription flow session. null until the subscription is created and for other flows.
"sub_xL9mPq2RkV3WnDQG"
URL Fintoc redirects your customer to after a successful payment. null when the session was created without redirect URLs.
"https://merchant.com/success"
Customer the session belongs to. This key is omitted (not null) when the session has no customer.
Whether the session offers your customer the option to save their payment method for future payments. One of enabled or disabled. Only returned for payment flow sessions; null when not configured.
disabled, enabled, null "enabled"