The CheckoutSession object represents the payment flow your customer completes to pay you. You create one to start a payment, a subscription, or a payment method setup, and Fintoc returns the CheckoutSession object. It holds the amount, currency, payment method configuration, and the redirect URLs your customer uses to complete the session. The session tracks its status through created, in_progress, finished, and expired.
Amount the session charges your customer, in the smallest unit of currency. CLP has no decimals, so 5000 means 5000 pesos; MXN uses centavos, so 5000 means 50.00 pesos. null for setup flow sessions, which do not charge your customer.
business_profile
object or null
Business on whose behalf you collect the payment, for payment aggregators. null when the session has no business profile. See the Business profile object table below.
cancel_url
string or null
URL Fintoc redirects your customer to when the payment is not completed. null when the session was created without redirect URLs.
created_at
string
ISO 8601 timestamp of when the session was created.
currency
string
Three-letter ISO 4217 currency code, in uppercase. One of CLP or MXN.
customer
object or null
Customer the session belongs to. null when the session has no customer. See the Customer object table below.
customer_email
string or null
Email of your customer, used to send the payment receipt. null when not provided.
expires_at
string
ISO 8601 timestamp of when the session expires. After this time your customer can no longer pay the session.
flow
string
Flow the session runs. One of payment (one-time payment), subscription (recurring subscription), or setup (save a payment method for future payments).
line_items
array or null
Items the session charges for. null when the session was created without line items.
metadata
object
Set of key-value pairs you attached to the session.
mode
string
Mode of the object. live uses real institution data; test uses fake data for integration testing.
payment_method
string or null
id of the saved payment method that pays the session. null when the session is not paid with a saved payment method.
payment_method_options
object
Configuration of the session's payment methods, keyed by payment method type. Each key matches one of payment_method_types. For bank_transfer and pac, set a recipient_account, a sender_account, or both, described below. For card, set types in payment flow sessions or kinds (credit, debit) in setup and subscription flow sessions.
payment_method_types
array
Payment method types your customer can use to pay the session. One or more of bank_transfer (one-time bank transfer), installments (pay in installments), card (credit or debit card), and pac (automatic recurring bank debit).
payment_resource
object or null
Payment generated by the session. null until your customer starts a payment attempt. Holds a payment_intent; see the Payment Intent object.
redirect_url
string or null
URL of the Fintoc-hosted checkout page where your customer completes the payment. null for sessions paid through the Fintoc widget.
save_payment_method
string or null
Whether the session lets your customer save their payment method. One of enabled or disabled. Only returned for payment flow sessions; null when not configured.
session_token
string or null
Token used to initialize the Fintoc widget to pay the session. null for subscription and setup flows and for payments completed outside the widget.
setup_intent
string or null
id of the setup intent created by setup and subscription flow sessions. null for other flows and until Fintoc attempts a setup. See the Setup Intent object for the setup intent's status and error fields.
status
string
Lifecycle status of the session. One of created (your customer has not started paying), in_progress (Fintoc is processing the payment), finished (the session succeeded), or expired.
subscription
string or null
id of the subscription started by a subscription flow session. null until the subscription is created, and for other flows.
success_url
string or null
URL Fintoc redirects your customer to after a successful payment. null when the session was created without redirect URLs.
ui_mode
string
User interface the checkout uses. One of hosted (Fintoc-hosted page) or embedded (embedded buttons such as Apple Pay).
The Customer object (within the Checkout Session object)
The customer the session belongs to, when you attach one on creation.
Attribute
Type
Description
id
string
Unique identifier of the customer.
object
string
Type of the object. Always customer.
address
object or null
Address of the customer. null when not provided. See the Address object table below.
created_at
string
ISO 8601 timestamp of when the customer was created.
email
string or null
Email of the customer. null when not provided.
metadata
object
Set of key-value pairs attached to the customer.
mode
string
Mode of the object. live uses real institution data; test uses fake data for integration testing.
name
string or null
Name of the customer. null when not provided.
phone
string or null
Phone number of the customer. null when not provided.
tax_id
object or null
Tax identifier of the customer. null when not provided. See the Tax ID object table below.
The Address object (within the Customer object)
Attribute
Type
Description
city
string
City of the address.
country
string
Country of the address, as a two-letter ISO 3166-1 code.
line1
string
First line of the address.
line2
string
Second line of the address.
postal_code
string
Postal code of the address.
state
string
State or region of the address.
The Tax ID object (within the Customer object)
Attribute
Type
Description
type
string
Type of the tax identifier, for example cl_rut.
value
string
Value of the tax identifier.
The Payment method options object (within the Checkout Session object)
Use payment_method_options to configure payment methods in the session. For bank_transfer, set a recipient_account and, optionally, a sender_account. For pac, set a sender_account. For card, the Create checkout session endpoint defines types for payment flow sessions and kinds (credit, debit) for setup and subscription flow sessions.
Attribute
Type
Description
recipient_account
object
Account that receives the payment. See the Recipient account object table below. If you collect through Fintoc, omit it for better stability.
sender_account
object
Account your customer pays from. See the Sender account object table below. In final payment notifications it may be null if your customer abandoned the payment before choosing one.
The Recipient account object (within the Payment method options object)
The Recipient account object describes the bank account that receives the funds, returned in the recipient_account field.
Attribute
Type
Description
holder_id
string
Tax ID of the account holder. In Chile, a Chilean tax ID (RUT = Chilean tax ID); in Mexico, a Mexican tax ID (RFC = Mexican tax ID) or a Mexican personal ID (CURP).
Type of the account. One of checking_account or sight_account.
The Sender account object (within the Payment method options object)
The Sender account object describes the customer's bank account that the funds are paid from, returned in the sender_account field.
Attribute
Type
Description
holder_id
string
Tax ID of the account holder. In Chile, a Chilean tax ID (RUT); in Mexico, a Mexican tax ID (RFC) or a Mexican personal ID (CURP). Without a holder_id, Fintoc skips new contact validations.