Bank Transfer Payments

Redirect Bank Transfer Payments

All Bank Transfer (BANK_TRANSFER) payment methods offer a redirect solution (payment_method_flow = REDIRECT). The API returns a redirect_URL, which is used to redirect the user to a dLocal-hosted page. The user will be able to see the details in order to complete the transfer via their home banking.
Using the Redirect method, the payment will have the PENDING status until the user completes the transfer, and dLocal gets notified.
The usage of the redirect_url must be with a GET operation.
The example below belongs to payment using Caixa in Brazil. For a full list of BANK_TRANSFER payment methods available, visit the Payment Methods page.
Example Request
Example Response

Example Request

1
curl -X POST \
2
-H 'X-Date: 2018-02-20T15:44:42.310Z' \
3
-H 'X-Login: sak223k2wdksdl2' \
4
-H 'X-Trans-Key: fm12O7G9' \
5
-H 'Content-Type: application/json' \
6
-H 'X-Version: 2.1' \
7
-H 'User-Agent: MerchantTest / 1.0 ' \
8
-H 'Authorization: V2-HMAC-SHA256, Signature: 1bd227f9d892a7f4581b998c21e353b1686a6bdad5940e7bb6aa596c96e0a6ec' \
9
-d '{body}'
10
https://api.dlocal.com/payments
Copied!

Example Request Body

1
{
2
"amount": 100,
3
"currency": "BRL",
4
"country": "BR",
5
"payment_method_id": "CA",
6
"payment_method_flow": "REDIRECT",
7
"payer": {
8
"name": "Thiago Gabriel",
9
"email": "[email protected]",
10
"document": "52463567015"
11
},
12
"order_id": "623576234",
13
"notification_url": "http://merchant.com/notifications"
14
}
Copied!

Example Response

1
{
2
"id": "D-4-82f1d728-6966-41f8-8fea-fc9ee0e7cded",
3
"amount": 100,
4
"currency": "BRL",
5
"payment_method_id": "CA",
6
"payment_method_type": "BANK_TRANSFER",
7
"payment_method_flow": "REDIRECT",
8
"country": "BR",
9
"created_date": "2018-12-26T21:19:02.000+0000",
10
"status": "PENDING",
11
"status_detail": "The payment is pending",
12
"status_code": "100",
13
"order_id": "623576234",
14
"notification_url": "http://merchant.com/notifications",
15
"redirect_url": "https://pay.dlocal.com/collect/pay/pay/M-de20ae10-0953-11e9-b88f-39144191f925?xtid=CATH-ST-1545859142-2123845504"
16
}
Copied!
Example of redirect page of a Caixa bank transfer

Direct Bank Transfer Payments

Some Bank Transfer payments are available via our Direct Bank Transfer solution (payment_method_flow = DIRECT). The important parameters of the Bank Transfer ticket are returned via API, so the merchant can build their own UI.
The example below belongs to direct payment using Banco Industrial in Argentina.
Example Request
Example Response

Example Request

1
curl -X POST \
2
-H 'X-Date: 2018-02-20T15:44:42.310Z' \
3
-H 'X-Login: sak223k2wdksdl2' \
4
-H 'X-Trans-Key: fm12O7G9' \
5
-H 'Content-Type: application/json' \
6
-H 'X-Version: 2.1' \
7
-H 'User-Agent: MerchantTest / 1.0 ' \
8
-H 'Authorization: V2-HMAC-SHA256, Signature: 1bd227f9d892a7f4581b998c21e353b1686a6bdad5940e7bb6aa596c96e0a6ec' \
9
-d '{body}'
10
https://api.dlocal.com/payments
Copied!

Example Request Body

1
{
2
"amount": 100,
3
"currency": "ARS",
4
"country": "AR",
5
"payment_method_flow": "DIRECT",
6
"payment_method_id": "IO",
7
"payer": {
8
"name": "Juan Gómez",
9
"email": "[email protected]",
10
"phone": "4832695335",
11
"document": "27183121",
12
"address": {
13
"country": "AR",
14
"state": "Santa Fe",
15
"city": "Rosario",
16
"zip_code": "2341",
17
"street": "Av. de las Acacias",
18
"number": "5940"
19
}
20
},
21
"order_id": "5346523564",
22
"notification_url": "http://google.com"
23
}
Copied!

Example Response

1
{
2
"id": "D-4-c36158e8-cf6b-4195-8cea-721d56ebb9b5",
3
"amount": 100,
4
"currency": "ARS",
5
"payment_method_id": "IO",
6
"payment_method_type": "BANK_TRANSFER",
7
"payment_method_flow": "DIRECT",
8
"country": "AR",
9
"bank_transfer": {
10
"bank_account_type": "CHECKING",
11
"bank_name": "Banco Industrial S.A.",
12
"bank_code": "BIND",
13
"beneficiary_name": "Dlocal Argentina S.A.",
14
"bank_account": "3220001805006588350028",
15
"bank_account2": "1-658835/2",
16
"bank_account_label": "CBU",
17
"bank_account2_label": "Número de cuenta",
18
"beneficiary_document_type": "CUIT",
19
"beneficiary_document": "30715778722",
20
"reference": "1000000000013",
21
"redirect_url": "https://pay.dlocal.com/gmf-apm/payments/M-a4a6b0a4-59eb-4389-8a69-139b17a38b7a",
22
"bank_branch": "1",
23
"user_payment_amount": 100
24
"payment_instruction": "A través de tu home banking, o desde el banco desde el que prefieras operar, utilizando la referencia y el resto de los datos detallados más arriba."
25
},
26
"ticket": {},
27
"created_date": "2020-07-03T20:56:56.000+0000",
28
"status": "PENDING",
29
"status_detail": "The payment is pending.",
30
"status_code": "100",
31
"order_id": "5346523564",
32
"notification_url": "http://google.com"
33
}
Copied!
Example of UI built with the data above.

The Bank Transfer Object

Property
Type
Description
bank_account_type
String
Type of ticket, can be CHECKINGor SAVING
bank_name
String
Name of the Bank
bank_code
String
Code of the Bank
beneficiary_name
String
Name of the account holder
bank_account
String
Bank account number
bank_account2
String
Secondary bank account number
bank_account_label
String
Label to be displayed related to bank_account
bank_account2_label
String
Label to be displayed related to bank_account2
beneficiary_document_type
String
Type of document of the account holder
benficiary_document
String
Document number of the account holder
reference
String
Reference code for the payer to add on payment
redirect_url
String
URL of the full version of the ticket. In case you want to redirect.
user_payment_amount
Number
Amount the user needs to pay
payment_instruction
String
Instructions for making the payment
Last modified 5mo ago