Bank Transfer
How to use Bank Transfer to submit a payin in Peru.
Post
https://gateway-test.luxtak.com/trade/pay
Payin by Bank Transfer
This endpoint allows you to submit a payin by Bank Transfer in Peru.
Parameters
Header
| Name | Type | Description |
|---|---|---|
| Content-Type* | string | application/json; chartset=UTF-8 |
| Authorization* | string | Basic Base($app_id:$security_key) |
Body
| Name | Type | Description |
|---|---|---|
| app_id* | string | created app's id at dashboard - Max. 32 chars - |
| timestamp* | string | yyyy-MM-dd HH:mm:ss - Max. 19 chars - |
| out_trade_no* | string | ID given by the merchant in their system - Max. 64 chars - |
| region* | string | Fixed value: PER |
| method* | string | Fixed value: BankTransfer |
| order_currency* | string | Fixed value: PEN |
| order_amount* | string | payment amount - 5~50,000 PEN - |
| subject* | string | payment reason or item title - Max. 128 chars - |
| content | string | payment reason detail or item detail. - Max. 255 chars - |
| trade_type* | string | fixed value: API |
| notify_url* | string | Where luxtak will send notification to |
| return_url | string | Redirect to Merchant's url when user finished checkout |
| buyer_id* | string | merchant user's id |
| timeout_express | string | m(minutes), h(hours), d(days), c(always end in current day). Used to control the expiration time of submitting an order (from initial to processing). (300mm in default, max 15d) |
| customer.name* | string | User's name |
| customer.email* | string | User's email |
| customer.identify.type | string | User's identification type - DNI or RUC- |
| customer.identify.number | string | User's identification number - DNI: 8 digits, RUC: 11 digits - |
Responses
| 200 | submit successfully |
{
"code": "10000",
"msg": "Success",
"prepay_id": "d09CTGR0UVg5cUVEYm0vQ2daV2poK0pOY0htRnF2Rk9UYTk4QndGb3JNRT0=-****75cc59F9",
"trade_no": "202***63",
"out_trade_no": "ou***800",
"web_url": "",
"pay_url": "https://gateway.kashio.com.pe?token=6YU***TgE",
"trade_status": "PROCESSING",
"reference": "251***169",
"due_date": "2025-05-15T08:57:18+00:00"
}
| 400 | duplicate out_trade_no |
{
"code": "40002",
"msg": "Business Failed",
"sub_code": "duplicate-out_trade_no",
"sub_msg": "out_trade_no is duplicate"
}
Tips
User payment tips
- Redirect users to the link in pay_url to complete the payment.
Example
curl --location --request POST 'https://gateway-test.luxtak.com/trade/pay' \
--header 'Authorization: Basic MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ==' \
--header 'Content-Type: application/json' \
--data-raw '{
* "app_id": "162************38",
* "out_trade_no": "202201010354007",
* "method": "BankTransfer",
* "order_amount": "12.01",
* "order_currency": "PEN",
* "subject": "trade pay test",
"content": "trade pay test content",
* "notify_url": "http://merchant/callback/success",
"return_url": "https://www.merchant.com",
* "buyer_id": "buyer_0101_0001",
* "timestamp": "2022-01-01 03:54:01",
"timeout_express":"1c",
* "customer": {
* "identify": {
* "type": "RUC",
* "number": "50284414727"
},
* "name": "Test User Name",
* "email": "test@luxtak.com"
}
}'
Tips
Note: 162********38 is luxtak's test app id for sandbox, and MTYyNTgyOTIxNDUzMTY2Mzg6UGFnc21pbGVfc2tfZDUwMWQ1ZGNkNTI5OGQ5N2MwNmUzYjI4YjA2OWZjZmY3NDU5ZjY2NzNiMjFjMTFlYTY3NDM5MDgzOTZkOTYxNQ== is authorization token associated with the test app id.
Warning
Please use your own app_id and generate your own authorization token when testing.
