The Payment Intent object
The PaymentIntent object represents a single payment your customer makes toward your account, where the payment_type field identifies the method behind it, such as bank_transfer, card, installment, or cash. It appears when you create a payment, as the payment_resource of a Checkout Session once your customer pays, and in payment webhook events. Its status field tracks the payment through created, in_progress, succeeded, failed, pending, requires_action, expired, and rejected.
{
"id": "pi_BO381oEATXonG6bj",
"object": "payment_intent",
"amount": 1000,
"business_profile": {
"category": "009613",
"name": "Test Business 1",
"tax_id": "777777777"
},
"created_at": "2021-10-15T15:23:11.474Z",
"currency": "CLP",
"customer": null,
"customer_email": "[email protected]",
"error_reason": null,
"expires_at": null,
"metadata": {},
"mode": "live",
"next_action": null,
"payment_method": null,
"payment_type": "bank_transfer",
"payment_type_options": {},
"recipient_account": {
"holder_id": "222222222",
"institution_id": "cl_banco_de_chile",
"number": "123456",
"type": "checking_account"
},
"reference_id": "90123712",
"sender_account": {
"holder_id": "111111111",
"institution_id": "cl_banco_estado",
"number": "123456",
"type": "checking_account"
},
"status": "created",
"subscription": null,
"transaction_date": "2021-10-15T15:24:15.474Z",
"widget_token": "pi_BO381oEATXonG6bj_sec_a4xK32BanKWYn"
}| Attribute | Type | Description |
|---|---|---|
id | string | Unique identifier of the Payment Intent. |
object | string | Type of the object. Always payment_intent. |
amount | integer | Amount to pay, in the smallest unit of currency. CLP has no decimals, so 5000 means 5000 pesos; MXN uses centavos, so 5000 means 50.00 pesos. Must be greater than 0. |
business_profile | object or null | Business that receives the payment, when you collect it on behalf of a sub-merchant. null when not provided. See the Business Profile object below. |
created_at | string | ISO 8601 timestamp of when the Payment Intent was created, in UTC. |
currency | string | Three-letter ISO 4217 currency code, in uppercase. One of CLP or MXN. |
customer | object or null | Customer associated with the Payment Intent. null when no customer is attached. |
customer_email | string or null | Email of your customer, used for refund notifications. null when not provided, in which case Fintoc does not send refund emails for the Payment Intent. |
error_reason | string or null | Error code explaining why the Payment Intent failed. null when the payment has not failed. See Payment Intent Error Reason for the list of error reasons. |
expires_at | string or null | ISO 8601 timestamp of when the Payment Intent expires, in UTC. null when the Payment Intent does not expire. |
metadata | object | Set of key-value pairs you can attach to the Payment Intent, useful for storing additional information in a structured format. |
mode | string | Mode of the object. live uses real institution data; test uses fake data for integration testing. |
next_action | object or null | Action your customer must complete for the payment to continue, such as confirming the payment in a banking app. The type key indicates the kind of action. null when no action is pending. |
payment_method | string or null | id of the saved payment method that paid the Payment Intent. null when the payment was not made with a saved payment method. |
payment_type | string | Type of payment that produced this Payment Intent. One of bank_transfer, cash, card, installment, or pac (automatic recurring bank debit), or a provider-specific external redirect identifier such as banco_estado. |
payment_type_options | object | Additional options specific to payment_type. Empty object when payment_type has no extra options. |
recipient_account | object or null | Account that receives the payment. null when payment_type is not bank_transfer. See The Recipient Account object and the Sender Account object below. |
reference_id | string or null | Operation number from the bank of the sender account. null when a payment takes longer than usual to be confirmed by the bank, or when your customer abandoned the payment before returning an operation number. |
sender_account | object or null | Account that sends the payment. null when payment_type is not bank_transfer, or when your customer abandons the payment before choosing a sender account. See The Recipient Account object and the Sender Account object below. |
status | string | Payment status. One of created (the payment has not started), in_progress (Fintoc is processing the payment), succeeded (the payment completed), failed (the payment did not complete), pending (the payment is awaiting confirmation), requires_action (your customer must complete the action in next_action), expired (the payment expired before completing), or rejected (the payment was rejected). |
subscription | string or null | id of the subscription that generated this Payment Intent. null when the payment is not part of a subscription. |
transaction_date | string or null | ISO 8601 timestamp of when the bank authorized the transaction, in UTC. null when your customer abandoned the payment before transferring. |
widget_token | string or null | Temporary token used to configure the widget. Only returned when you create the Payment Intent; null afterward. |
The Recipient Account object and the Sender Account object (within the Payment Intent object)
These objects describe the bank accounts on each side of the payment, returned in the recipient_account field for the account that receives the funds and the sender_account field for the customer's account that pays. They apply only when payment_type is bank_transfer; for other payment types, both fields are null.
| Attribute | Type | Description |
|---|---|---|
holder_id | string | Account owner's tax ID. In Chile, this value is a Chilean tax ID (RUT). In Mexico, this value is a Mexican tax ID (RFC) or unique population registry code (CURP). |
institution_id | string | Account's institution id. Learn more about institutions and their ids in Payment initiation countries and institutions. |
number | string | Account number. Does not include hyphens or prefixed zeros. |
type | string | Account type. One of checking_account or sight_account. |
The Business Profile object (within the Payment Intent object)
This object describes the business that receives the payment when you collect it on behalf of a sub-merchant, returned in the business_profile field.
| Attribute | Type | Description |
|---|---|---|
category | string | Identifier of the category of the sub-merchant. In Chile, it is a 6-character SII activity code. |
name | string | Enrolled merchant's name. If set, it appears as the "Recipient" on the succeeded payment screen. |
tax_id | string | Enrolled merchant's tax ID. In Chile, it is a Chilean tax ID (RUT). In Mexico, it is a Mexican tax ID (RFC) or unique population registry code (CURP). |