Search Overlay

SafetyPay Bank Transfer

The Paysafe Payments API supports SafetyPay Bank Transfer which is a payment method for Brazil, Peru, Chile, Mexico, Colombia, Ecuador, Costa Rica. SafetyPay Bank Transfer is a non-card payment method that enables online bank transfers within the largest bank network in Latin America. Supported banks:

  • Brazil: Banco Itau Robot, Banco do Brasil Robot, Banrisul, Bradesco PagFacil, Santander Brasil.
  • Peru: BBVA Continental, BCP Cuotéalo, Banco Pichincha PER, Banco de Crédito, Caja Arequipa, Caja Huancayo, Caja Tacna, Caja Trujillo, Interbank, Scotiabank Peru.
  • Chile: Banco BCI One Step, Banco Estado, Banco Estado One Step, Scotiabank Chile.
  • Mexico: Afirme PayCash, BBVA Bancomer, HSBC Mexico, Santander MEX WS, Scotiabank Mexico.
  • Colombia: PSE - Bancolombia, PSE - BBVA Colombia, PSE - Banco de Bogota, PSE - Banco Davivienda, PSE - MOVII S.A., PSE - Banco Caja Social, PSE - Banco Popular, PSE - Banco GNB Sudameris, PSE - Citibank Colombia, PSE - Nequi, PSE - Daviplata, PSE - DALE, PSE - Banco Pichincha COL, PSE - RappiPay COL, PSE - Itau Corpbanca Colombia S.A., PSE - IRIS, PSE - Banco Cooperativo Coopcentral, PSE - Banco Falabella, PSE - Banco Scotia Colpatria, PSE – Bancamía, PSE - Confiar Cooperativa Financiera, PSE - GIROS Y FINANZAS, PSE - Cooperativa Financiera de Antioquia, PSE - Santander COL, PSE - Banco Agrario, PSE - Banco AV Villas, PSE - Banco ProCredit, PSE - Banco Serfinanza, COOFINEP.
  • Ecuador: Banco Guayaquil, Banco Pichincha ECU.
  • Costa Rica: Banco Nacional de Costa Rica.

Advantages

  • Large bank network in 7 countries
  • Payments with the biggest and most reputable bank institutions
  • Large customer base
  • One-step payments with some of the banks
  • Payment code expiration date for the two-step bank transfers. If the payment code is not paid in the appropriate time, it expires and the transaction is cancelled. 

The Payments API caters to the following needs for SafetyPay Bank Transfer:

BRAZIL

  • currencyCode: BRL
  • paymentType: SAFETYPAY_BANK_TRANSFER

PERU

  • currencyCode: PEN
  • paymentType: SAFETYPAY_BANK_TRANSFER

CHILE

  • currencyCode: CLP
  • paymentType: SAFETYPAY_BANK_TRANSFER

MEXICO

  • currencyCode: MXN
  • paymentType: SAFETYPAY_BANK_TRANSFER

COLOMBIA

  • currencyCode: COP
  • paymentType: SAFETYPAY_BANK_TRANSFER

ECUADOR

  • currencyCode: USD
  • paymentType: SAFETYPAY_BANK_TRANSFER

COSTA RICA

  • currencyCode: CRC
  • paymentType: SAFETYPAY_BANK_TRANSFER

Setup Requirements

For Paysafe to create a test account in sandbox and production environments, the following information is required.

  • Paysafecard API key

Transaction Types

  • Transaction Types: Payments

BRAZIL

AMOUNT IN BRAZILIAN PESO
Minimum Amount Maximum Amount
$3 R$4,980

PERU

AMOUNT IN PERUVIAN PESO
Minimum Amount Maximum Amount
S/.2* S/.3,724

*S/.100 minimum amount with BCP Cuotéalo for installments

CHILE

AMOUNT IN CHILEAN PESO
Minimum Amount Maximum Amount
$465 $880,000*

*$500,000 maximum amount with BCI bank

MEXICO

AMOUNT IN MEXICAN PESO
Minimum Amount Maximum Amount
$11 $18,899

COLOMBIA

AMOUNT IN COLOMBIAN PESO
Minimum Amount Maximum Amount
$2,277 $4,374,000

ECUADOR

AMOUNT IN US DOLLAR IN PAYMENTS API
Minimum Amount Maximum Amount
$0.5 $941
                                                             AMOUNT IN US DOLLAR IN CHECKOUT V2
Minimum Amount Maximum Amount
$1 $941

COSTA RICA

AMOUNT IN COSTA RICAN COLON
Minimum Amount Maximum Amount
₡600 ₡594,660

Note: The amount limits may vary in accordance with the currency exchange rate.

Payments Flow Diagram

Typical Scenarios

SafetyPay Bank Transfer Payment

When you want to process a payment request using SafetyPay Bank Transfer as the payment type, you would do the following:

  1. Create a Payment Handle with the transactionType parameter set to PAYMENT and the paymentType parameter set to one of the following value: SAFETYPAY_BANK_TRANSFER

  2. Redirect the customer to the SafetyPay redirect URL so they can generate a payment code. The status of the Payment Handle becomes PAYABLE. The merchant gets notified of this status change via webhooks that have been configured.

  3. Use the paymentHandleToken returned in the response to process the Payment request. The Payment will have a status of PROCESSING until the customer has made the payment.

Once the Payment is successfully completed by customer online, the merchant gets Payment Completed notification via webhooks.

API Contracts

Create a Payment Handle Example

{
"paymentType": "SAFETYPAY_BANK_TRANSFER",
"safetyPayBankTransfer": {
"consumerId": "merchantclientid5HzDvoZSodKDJ7X7VQ"
},
"transactionType": "PAYMENT",
"amount": 9000,
"currencyCode": "PEN",
"profile": {
"firstName": "Account",
"lastName": "Holder",
"email": "accountholder0@example.com",
"phone": "1234567890",
"dateOfBirth": {
"day": 23,
"month": 12,
"year": 1990
}
},
"billingDetails": {
"nickName": "John Dee",
"street": "100",
"street2": "Queen Street",
"city": "Cupertino",
"zip": "14236",
"country": "US",
"state": "NY"
},
"merchantRefNum": "1653044860375",
"merchantDescriptor": {
"dynamicDescriptor": "Test Description",
"phone": "5555345456"
},
"shippingDetails": {
"recipientName": "Vishnu",
"street": "20735 Stevens Creek Blvd",
"street2": "Montessori",
"city": "Cupertino",
"zip": "95014",
"country": "US",
"state": "CA"
},
"dupCheck": false,
"deviceFingerprinting": {
"threatMetrixSessionId": "855d67c9-86dd-4b67-a036-72359bf5631a"
},
"returnLinks": [
{
"rel": "on_completed",
"href": "https://api.dev.paysafe.com/checkout/v2/pages/redirect-success.html",
"method": "GET"
},
{
"rel": "on_failed",
"href": "https://api.dev.paysafe.com/checkout/v2/pages/redirect-error.html",
"method": "GET"
},
{
"rel": "default",
"href": "https://api.dev.paysafe.com/checkout/v2/pages/redirect-success.html",
"method": "GET"
}
]
}

SafetyPay Redirect URL to Generate a Payment Code Example

{
"id": "827c5fc7-64fa-4387-b24b-e46369e06154",
"paymentType": "SAFETYPAY_BANK_TRANSFER",
"paymentHandleToken": "PHBHJQtxYrkJNPNo",
"merchantRefNum": "1653044860375",
"currencyCode": "PEN",
"txnTime": "2022-08-19T08:38:02Z",
"billingDetails": {
"street": "100",
"street2": "Queen Street",
"city": "Cupertino",
"zip": "14236",
"state": "NY",
"country": "US"
},
"customerIp": "10.195.57.168",
"status": "INITIATED",
"links": [
{
"rel": "redirect_payment",
"href": "https://api.qa.paysafe.com/alternatepayments/v1/redirect?accountId=1020436290&paymentHandleId=827c5fc7-64fa-4387-b24b-e46369e06154&token=eyJhbGciOiJIUzI1NiJ9.eyJhY2QiOiIxMDIwNDM2MjkwIiwicHlkIjoiODI3YzVmYzctNjRmYS00Mzg3LWIyNGItZTQ2MzY5ZTA2MTU0IiwiZXhwIjoxNjYwOTAwMDgzfQ.Yfgj9_0mcszRauX-iHzJYiMP0sE9kDSSAzJvKSiduBQ"
}
],
"liveMode": false,
"simulator": "EXTERNAL",
"usage": "SINGLE_USE",
"action": "REDIRECT",
"executionMode": "ASYNCHRONOUS",
"amount": 9000,
"merchantDescriptor": {
"dynamicDescriptor": "Test Description",
"phone": "5555345456"
},
"timeToLiveSeconds": 599,
"gatewayResponse": {
"processor": "PAYSAFECARD",
"id": "pay_1020014799_kHZ2pDy5GwFrGj8mC8tos9H9FFLvjU0s_PEN"
},
"returnLinks": [
{
"rel": "on_completed",
"href": "https://api.dev.paysafe.com/checkout/v2/pages/redirect-success.html"
},
{
"rel": "on_failed",
"href": "https://api.dev.paysafe.com/checkout/v2/pages/redirect-error.html"
},
{
"rel": "default",
"href": "https://api.dev.paysafe.com/checkout/v2/pages/redirect-success.html"
}
],
"transactionType": "PAYMENT",
"gatewayReconciliationId": "pay_1020014799_kHZ2pDy5GwFrGj8mC8tos9H9FFLvjU0s_PEN",
"updatedTime": "2022-08-19T08:38:03Z",
"statusTime": "2022-08-19T08:38:03Z",
"safetyPayBankTransfer": {
"consumerId": "merchantclientid5HzDvoZSodKDJ7X7VQ"
},
"shippingDetails": {
"recipientName": "Vishnu",
"street": "20735 Stevens Creek Blvd",
"street2": "Montessori",
"city": "Cupertino",
"state": "CA",
"country": "US",
"zip": "95014"
},
"profile": {
"firstName": "Account",
"lastName": "Holder",
"email": "accountholder0@example.com",
"dateOfBirth": {
"day": 23,
"month": 12,
"year": 1990
},
"phone": "1234567890"
}
}

Process Payment Request Using paymentHandleToken

{
"merchantRefNum": "1653044860375",
"amount": 9000,
"currencyCode": "PEN",
"dupCheck": true,
"settleWithAuth": true,
"paymentHandleToken": "PHBHJQtxYrkJNPNo",
"customerIp": "172.0.0.1",
"description": "Casino game purchase"
}

Payment Completed Notification via Webhooks

{
"id": "09996c56-07b8-44a4-8e7f-e9a75c60831a",
"paymentType": "SAFETYPAY_BANK_TRANSFER",
"paymentHandleToken": "PHBHJQtxYrkJNPNo",
"merchantRefNum": "1653044860375",
"currencyCode": "PEN",
"settleWithAuth": true,
"dupCheck": false,
"txnTime": "2022-08-19T08:38:02Z",
"billingDetails": {
"street1": "100",
"street2": "Queen Street",
"city": "Cupertino",
"zip": "14236",
"state": "NY",
"country": "US"
},
"status": "PROCESSING",
"gatewayReconciliationId": "pay_1020014799_kHZ2pDy5GwFrGj8mC8tos9H9FFLvjU0s_PEN",
"amount": 9000,
"availableToRefund": 0,
"consumerIp": "10.195.57.168",
"liveMode": false,
"simulator": "EXTERNAL",
"updatedTime": "2022-08-19T08:38:24Z",
"statusTime": "2022-08-19T08:38:24Z",
"gatewayResponse": {
"processor": "PAYSAFECARD",
"id": "pay_1020014799_kHZ2pDy5GwFrGj8mC8tos9H9FFLvjU0s_PEN"
},
"availableToSettle": 0,
"safetyPayBankTransfer": {
"consumerId": "merchantclientid5HzDvoZSodKDJ7X7VQ"
},
"shippingDetails": {
"recipientName": "Vishnu",
"street": "20735 Stevens Creek Blvd",
"street2": "Montessori",
"city": "Cupertino",
"state": "CA",
"country": "US",
"zip": "95014"
},
"profile": {
"firstName": "Account",
"lastName": "Holder",
"email": "accountholder0@example.com",
"dateOfBirth": {
"day": 23,
"month": 12,
"year": 1990
},
"phone": "1234567890"
},
"settlements": {
"amount": 9000,
"txnTime": "2022-08-19T08:38:02.000+0000",
"availableToRefund": 0,
"merchantRefNum": "1653044860375",
"id": "09996c56-07b8-44a4-8e7f-e9a75c60831a",
"status": "RECEIVED"
}
}

To know more about each parameter, you can visit Payments.