The Checkout Session object

The Checkout Session object represents the flow your customer goes through to complete a payment or enrollment. 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.

AttributeTypeDescription
idstringUnique identifier for the Checkout Session.
objectstringIdentifier for the type of object. Its value is always checkout_session.
amountintegerAmount to charge for the session, as a positive integer in the smallest currency unit (for example, 1000 for $1000 CLP, since CLP has no minor unit). Present on payment and subscription flows, and omitted on the setup flow. See currencies.
business_profileobjectDetails that identify enrolled merchants for category-based pricing. See the Business Profile Object section below for its fields.
cancel_urlstringURL to redirect your customer to if they cancel the Checkout Session and return to your website.
created_atstringISO 8601 datetime in UTC for when the session was created.
currencystringThree-letter ISO 4217 currency code, uppercase. Must be a currency Fintoc supports in the customer's country; see the currencies page for the full list.
customerobjectThe Customer associated with the session. See the Customer Object section below for its fields.
customer_emailstringEmail Fintoc notifies if a refund occurs. Set this field if you use refunds.If you create a session without customer_email, this field is null and Fintoc sends no emails for the session.
expires_atstringISO 8601 datetime in UTC for when the session expires. Defaults to 24 hours after the session is created.
flowstringType of flow the session uses. One of payment, setup, or subscription.
line_itemsarrayItems on the session. For subscription sessions, these items define the recurring charges. This field is null when the session does not use line items.
metadataobjectSet of key-value pairs that you can attach to an object. Useful for storing additional information about the object in a structured format.If you create a session without metadata, this field is null in the notifications about the final status.
modestringIndicates whether the Checkout Session is in live mode or in test mode.
payment_methodstringID of the saved payment method used for the session, when the customer pays with a saved method. Prefixed with pm_. This field is null otherwise.
payment_method_optionsobjectSet of settings for each enabled payment method type, keyed by the type (for example, bank_transfer). See the Bank Transfer Options section below for its fields.
payment_method_typesarrayArray of payment method types enabled for the session. For payment flows, one or more of bank_transfer or card. For setup and subscription flows, one or more of pac (Chilean automatic debit), direct_debit (Mexican direct debit), or card. The available values depend on the customer's country.
payment_resourceobjectPayment resource associated with the session once the payment finishes. Contains a payment_intent; see the Payment Intent Object reference for its fields. If the session has not finished or expired, this field is null.
redirect_urlstringURL to redirect your customer to so they complete the Checkout Session using the Fintoc widget.
save_payment_methodstringIndicates whether the customer can save the payment method for future payments. One of enabled or disabled. Defaults to disabled.
session_tokenstringTemporary token used to configure the widget. This field is null when you send success_url and cancel_url while creating the session.
statusstringSession status. One of created, in_progress, finished, or expired.
subscriptionstringID of the subscription created during a subscription flow. Prefixed with sub_. This field is null for other flows.
success_urlstringURL to redirect your customer to after the Checkout Session completes successfully.
ui_modestringIndicates the user interface of the checkout. The available options are hosted, with a redirect to a Fintoc-hosted page, and embedded, for embedded buttons like Apple Pay.
{
  "id": "cs_li5531onlFDi235",
  "object": "checkout_session",
  "amount": 350000,
  "business_profile": {},
  "cancel_url": "https://merchant.com/987654321",
  "created_at": "2026-01-13T18:48:25Z",
  "currency": "CLP",
  "customer": {
    "id": "cus_3B2bODrQFje7ZVkT69xyaTSDwXQ",
    "object": "customer",
    "email": "[email protected]",
    "metadata": {},
    "name": "Felipe Castro",
    "tax_id": {
      "type": "cl_rut",
      "value": "11.111.111-1"
    }
  },
  "customer_email": null,
  "expires_at": "2026-01-14T18:48:25Z",
  "flow": "payment",
  "line_items": null,
  "metadata": {},
  "mode": "test",
  "payment_method": null,
  "payment_method_options": {},
  "payment_method_types": [
    "bank_transfer"
  ],
  "payment_resource": {
    "payment_intent": {
      "id": "pi_38DNJo3rbvGUzKFvCGZ6dxR1Kxx",
      "object": "payment_intent",
      "amount": 350000,
      "business_profile": {},
      "created_at": "2026-01-13T18:48:31Z",
      "currency": "CLP",
      "customer_email": null,
      "error_reason": null,
      "expires_at": "2026-01-14T18:48:25Z",
      "metadata": {},
      "mode": "test",
      "payment_type": "bank_transfer",
      "payment_type_options": {},
      "recipient_account": null,
      "reference_id": null,
      "sender_account": {
        "holder_id": "11.111.111-1",
        "institution_id": "cl_banco_falabella",
        "number": "813990168",
        "type": "checking_account"
      },
      "status": "succeeded",
      "transaction_date": null,
      "widget_token": null
    }
  },
  "redirect_url": "https://pay.fintoc.com/checkout/cs_li5531onlFDi235",
  "save_payment_method": "disabled",
  "session_token": null,
  "status": "finished",
  "subscription": null,
  "success_url": "https://merchant.com/success",
  "ui_mode": "hosted"
}

Customer Object

The customer attribute contains the Customer associated with the session, with the following fields:

AttributeTypeDescription
idstringUnique identifier for the Customer. Prefixed with cus_.
objectstringObject type. Always customer.
emailstringCustomer's email address.
metadataobjectSet of key-value pairs attached to the customer.
namestringCustomer's full name or business name.
tax_idnullable objectCustomer tax identifier. Null when not provided. See the Customer object for the tax_id.type and tax_id.value fields.

Bank Transfer Options

A bank_transfer payment involves the following account objects:

AttributeTypeDescription
recipient_accountobjectRecipient account for the transfer. See the Recipient Account Object section below for its fields. If you use Fintoc Collects, omit this object during payment creation.
sender_accountobject

Sender account for the transfer. See the Sender Account Object section below for its fields.

When you receive final payment status notifications, sender_account is null if the customer abandoned the payment before specifying a sender account.

Recipient Account Object

AttributeTypeDescription
holder_idstringIdentifier of the owner of the account. In Chile, it corresponds to a Chilean tax ID (RUT), and in Mexico it is either a Mexican tax ID (RFC) or a Mexican personal ID (CURP).
institution_idstringAccount's institution id. Learn more about institutions and their ids in the institutions reference.
numberstringAccount number. Does not include hyphens or prefixed zeros.
typestringAccount type. One of checking_account or sight_account.

Sender Account Object

AttributeTypeDescription
holder_idstringIdentifier of the owner of the account. In Chile, it corresponds to a Chilean tax ID (RUT), and in Mexico it is a Mexican tax ID (RFC) or a Mexican personal ID (CURP).
institution_idstringAccount's institution id. Learn more about institutions and their ids in the institutions reference.
numberstringAccount number. Does not include hyphens or prefixed zeros.
typestringAccount type. One of checking_account or sight_account.

Business Profile Object

AttributeTypeDescription
categorystringIdentifier of the category of the enrolled merchant. In Chile, it corresponds to a 6-character Servicio de Impuestos Internos (SII) activity code.
namestringEnrolled merchant's name. If set, Fintoc shows it as the "Recipient" on the succeeded payment screen.
tax_idstringEnrolled merchant's tax identifier. In Chile, it corresponds to a RUT.