Bank Transfer
POST https://api-sandbox.letpay.io/bankTransfer/simple
Overview
This process is designed to facilitate direct bank transfers in Chile, optimizing user experience and conversion rates. It allows your customers to make payments quickly and securely, integrating efficiently with local requirements.
The process offers:
- Immediate display of payment information to the payer, without the need for complex preliminary data collection, which contributes to a higher conversion rate. To use this process, simply send the required fields as indicated in the documentation.
- Utilization of the payer's RUT (Rol Único Tributario) linked to the transaction. It's recommended that merchants have already collected this data beforehand. However, there's an option to collect it on the checkout page – although this approach might result in a slightly lower conversion rate, it can be advantageous in specific scenarios depending on your business needs. To use this process, send the payer's RUT in the tax_id field, and specify RUT in the tax_id_type field. You should also include the payer's email. If the tax_id is invalid, the transaction may be declined.
Minimum and Maximum Amounts
Bank | Minimum Amount | Maximum amount (New recipients) | Maximum amount (Old recipients) |
---|---|---|---|
Banco de Chile-Edwards | 1 CLP | 350,000 CLP | 5’000,000 CLP (Diario)-DigiPass |
Banco de Chile-Edwards | 2’000,000 (Diario)-Digi Card | ||
Banco de Crédito e Inversiones (BCI) | 1 CLP | 250,000 CLP -Multipass | 5’000,000 -Multipass |
Banco de Crédito e Inversiones (BCI) | 600,000 CLP- BCIPASS | 7’000,000 CLP- BCIPASS | |
Banco Estado | 1 CLP | 100,000 CLP (Cta. RUT) | 1’000,000 CLP (Taxpayer Number account) |
Banco Estado | 250,000 CLP (Checking Account) | 5’000,000 CLP (Checking Account) | |
ITAU | 1 CLP | 300,000 CLP | 7,000,000 CLP |
Banco Santander | 1000 CLP | 250,000 CLP | 5,000,000 CLP |
Scotiabank | 1 CLP | 300,000 CLP | 5,000,000 CLP |
Banco Falabella | 1 CLP | 200.000 CLP (Banco Estado contact) | 7’000,000 CLP (Checking Account) |
Banco Falabella | 1’000,000 CLP (Contact with other banks) | 2’000,000 CLP (Vista Account) |
Reference Checkout UI Bank Transfer
Select Banking Institution
Redirect URL to the Bank Page
Bank Transfer Flow
Authorization
Header | Value |
---|---|
X-Auth-Token | MY_ACCESS_TOKEN |
Request description
contract_id
(required/string): Merchant's contract id.notification_url
(required/string): URL to post callbacks to this payment.reference_id
(required/string/max 45 chars): External code created by the merchant to reference this payment (e.g. order number).ip_address
(optional/string): Remote IP Address(IPv4/IPv6).return_url
(optional/string): Return URL to redirect user.extra_data
(optional/object): If you want to send extra data in your request.payment
(required/object): The payment data:amount
(required/float): Total amount of the payment. Value must have a maximum of two decimal places.asset
(required/string): Reference code for asset for the sale's amount.country
(required/string): Country code in ISO 3166-2.currency
(required/string): Currency code in ISO-4217.bank_transfer
(optional/object): The bank transfer description:description
(optional/string): Descriptor to use at transaction.
person
(required/object): The person data:email
(required/string): Person’s email provided to the merchant.full_name
(optional/string): Person’s full name.tax_id
(required/string): Unique identifier for this person in country tax system.tax_id_type
(required/enum): Type of identifier for this person in country tax system (e.g. in Chile: RUT). Valid options:RUT
,CC
,PP
.
Response Description
transaction_status
(string): Current status of the payment.payment_token
(string): Unique payment identification for this payment.refresh_token
(string): Updated access token for future calls.reference_id
(string): External code created by the merchant to reference this payment (e.g. order number).amount
(string): Amount of this payment.redirect_url
(string): The redirect url.totals
(object): The payment totals.amount
(float): Amount in default region asset.asset
(string): Asset used in this amount.original_amount
(float): Amount as informed by merchant.original_asset
(string): Asset used in this originalAmount.customer_fees
(float): Total calculated fee assigned to customer.customer_amount
(float): Total amount for customer (amount + customer_fees).
customer_fees
(object): List of incident customer fees and respective values.
Example Request
- 200 - Success
- 400 - Bad Request
- 401 - Unauthorized
- 422 - Unprocessable Entity
- 502 - Bad Gateway
Example Request
200 - Success
curl --location 'https://api-sandbox.letpay.io/bankTransfer/simple' \
--header 'X-Auth-Token: MY_ACCESS_TOKEN' \
--data-raw '{
"contract_id": "MY_CONTRACT_ID",
"notification_url": "https://my.notification.url/callback/",
"reference_id": "MY_REFERENCE_ID",
"ip_address": "1.1.1.1",
"return_url": "https://my.site.com",
"extra_data": {},
"payment": {
"amount": 1000.00,
"asset": "CLP",
"country": "CL",
"currency": "CLP",
"bank_transfer": {
"description": "teste"
}
},
"person": {
"email": "[email protected]",
"full_name": "Alice Sonnentag",
"tax_id": "103008875",
"tax_id_type": "RUT"
}
}'
Example Response
Header
Content-Type: application/json
Body
{
"transaction_status": "PROCESSING",
"payment_token": "MY_PAYMENT_TOKEN",
"reference_id": "MY_REFERENCE_ID",
"redirect_url": "BANK_TRANSFER_URL",
"amount": "1000.00",
"totals": {
"amount": 1000,
"original_amount": 1000,
"original_asset": "CLP",
"customer_fees": 0,
"customer_amount": 1000,
"asset": "CLP"
},
"customer_fees": {},
"refresh_token": ""
}
Example Request
400 - Bad Request
curl --location 'https://api-sandbox.letpay.io/bankTransfer/simple' \
--header 'X-Auth-Token: MY_ACCESS_TOKEN' \
--data-raw '{
"contract_id": "MY_CONTRACT_ID",
"notification_url": "https://my.notification.url/callback/",
"reference_id": "MY_REFERENCE_ID",
"ip_address": "1.1.1.1",
"return_url": "https://my.site.com",
"extra_data": {},
"payment": {
"amount": 1000.00,
"asset": "CLP",
"country": "CL",
"currency": "CLP",
"bank_transfer": {
"description": "teste"
}
},
"person": {
"email": "[email protected]",
"full_name": "Alice Sonnentag",
"tax_id": "103008875",
"tax_id_type": "RUT"
}
}'
Example Response
Header
Content-Type: application/json
Body
{
"timestamp": "2024-01-16T20:54:57.880+0000",
"status": 400,
"error": "Bad Request",
"path": "/bankTransfer/simple",
"errors": [
{
"code": "00.01.0044",
"description": "person.tax_id: invalid tax ID number"
}
],
"refresh_token": "MY_ACCESS_TOKEN"
}
Example Request
401 - Unauthorized
curl --location 'https://api-sandbox.letpay.io/bankTransfer/simple' \
--header 'X-Auth-Token: MY_ACCESS_TOKEN' \
--data-raw '{
"contract_id": "MY_CONTRACT_ID",
"notification_url": "https://my.notification.url/callback/",
"reference_id": "MY_REFERENCE_ID",
"ip_address": "1.1.1.1",
"return_url": "https://my.site.com",
"extra_data": {},
"payment": {
"amount": 1000.00,
"asset": "CLP",
"country": "CL",
"currency": "CLP",
"bank_transfer": {
"description": "teste"
}
},
"person": {
"email": "[email protected]",
"full_name": "Alice Sonnentag",
"tax_id": "103008875",
"tax_id_type": "RUT"
}
}'
Example Response
Header
Content-Type: application/json
Body
{
"timestamp": "2024-01-16T15:35:10.131+0000",
"status": 401,
"error": "Unauthorized",
"message": "Access Denied",
"path": "/bankTransfer/simple"
}
Example Request
422 - Unprocessable Entity
curl --location 'https://api-sandbox.letpay.io/bankTransfer/simple' \
--header 'X-Auth-Token: MY_ACCESS_TOKEN' \
--data-raw '{
"contract_id": "MY_CONTRACT_ID",
"notification_url": "https://my.notification.url/callback/",
"reference_id": "MY_REFERENCE_ID",
"ip_address": "1.1.1.1",
"return_url": "https://my.site.com",
"extra_data": {},
"payment": {
"amount": 1000.00,
"asset": "CLP",
"country": "CL",
"currency": "CLP",
"bank_transfer": {
"description": "teste"
}
},
"person": {
"email": "[email protected]",
"full_name": "Alice Sonnentag",
"tax_id": "103008875",
"tax_id_type": "RUT"
}
}'
Example Response
Header
Content-Type: application/json
Body
{
"timestamp": "2024-01-16T20:50:25.715+0000",
"status": 422,
"error": "Unprocessable Entity",
"path": "/bankTransfer/simple",
"errors": [
{
"code": "00.01.0021",
"description": "Invalid contract / project"
}
],
"refresh_token": "MY_ACCESS_TOKEN"
}
Example Request
502 - Bad Gateway
curl --location 'https://api-sandbox.letpay.io/bankTransfer/simple' \
--header 'X-Auth-Token: MY_ACCESS_TOKEN' \
--data-raw '{
"contract_id": "MY_CONTRACT_ID",
"notification_url": "https://my.notification.url/callback/",
"reference_id": "MY_REFERENCE_ID",
"ip_address": "1.1.1.1",
"return_url": "https://my.site.com",
"extra_data": {},
"payment": {
"amount": 1000.00,
"asset": "CLP",
"country": "CL",
"currency": "CLP",
"bank_transfer": {
"description": "teste"
}
},
"person": {
"email": "[email protected]",
"full_name": "Alice Sonnentag",
"tax_id": "103008875",
"tax_id_type": "RUT"
}
}'
Example Response
Header
Content-Type: application/json
Body
{
"timestamp": "2024-01-16T20:12:28.156+0000",
"status": 502,
"error": "Bad Gateway",
"path": "/bankTransfer/simple",
"errors": [
{
"code": "00.03.0001",
"description": "There was an issue when contacting an external API, please contact support"
}
],
"refresh_token": "MY_ACCESS_TOKEN"
}