Search Overlay

Online Bank Transfer

Online Bank Transfer allows customers to enter their bank accounts details on an online banking platform and digitally confirm a payment. The merchant then receives a payment notification once the transaction has been successfully completed.

The Paysafe Payments API supports Online Bank transfer via SafetyPay as a payment instrument for iGaming and Crypto Merchants in the following countries:

  • Brazil
  • Chile
  • Columbia
  • Costa Rica
  • Peru

Features

Online bank transfer: 

  • Has a large bank network in seven countries. 
  • Has payments with the biggest and most reputable bank institutions. 
  • Has a large customer base. 
  • Supports one-step payments with some banks. 
  • Supports 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. 

Setup Requirements

To create an account in sandbox and production environment: 

  1. Send your details to it_integrations@safetypay.com
    • You will receive access to Portal where you will see below details
      • Merchant secret key
      • Merchant signature key
  2. Share above details with us to create an API Key – you will use this API key in our API calls.

Your account manager will help to guide you through this process.

Certification Requirements

You are required to go through a certification process to support Safetypay Express as a payment method.

The Paysafe integration team will share certification requirements.

Transaction Types

Paysafe supports the following transaction type:

  • Payments – Used to transfer money from customer's bank account to merchant's account. After a successful payment, the merchant credits the customer's wallet.

    Processing currencies: BRL, CLP, COP, PEN, CRC
    Settlement currency: USD

NOTE: CLP and COP have no minor currency units. However, when you send an API request, you must send the amount with a 2 decimal shift - this is to maintain consistency across all payments methods, as a 2 decimal shift is standard in the Paysafe Payments API. When you want to process the amount of 123 in CLP or COP for example, you must send the amount as 12300 in your API request.

Payments Flow Diagram

Typical Scenarios

To process a payment request using Online Bank Transfer: 

  1. Create a Payment Handle with the following parameter settings:
    transactionType: PAYMENT
    paymentType: ONLINE_BANK_TRANSFER

    • As ONLINE_BANK_TRANSFER is available in multiple countries, you need to pass "countryCode" in the request. You can refer to the table at the bottom of the page for countryCodes.
    • You need to pass "bankNameCodes" in the request. There is also an option to display particular banks to the user in Safetypay express by sending Bankcodes in request. 
  2. Redirect the customer to the SafetyPay redirect URL, so they can select the bank and make the payment.

    • The status of the Payment Handle becomes PAYABLE.

    • The merchant gets notified of this status change via a webhook. 

  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.

You will receive a Payment Completed notification via webhooks when the customer successfully completes the payment. 

You can get the transaction status with a GET call if you don't get a webhook. It is recommended to avoid constant polling. See Webhooks and GET calls for more information.

  • After the customer has been redirected to SafetyPay Express, you will receive a Payment Handle Payable webhook. When you make a /payments call, you will get a payment status of either Processing, Completed or Failed.
  • After the customer completes the transaction at Safetypay Express, the customer will be redirected to your return link. You can check the status of the /payments response and redirect the customer to your relevant page depending on the payment status:
Payment status Description
PROCESSING

The transaction is not complete and is in progress. It does not mean that the transaction has failed.

You will get a COMPLETED or FAILED webhook for this transaction at a later stage when you will be able to update the transaction status at your end.

COMPLETED The customer has successfully completed the transaction at the SafetyPay end.
FAILED The payment has expired at the SafetyPay end.

Code Examples

Payment handle request without bank code

{
"amount": 1000,
"currencyCode": "BRL",
"dupCheck": true,
"merchantRefNum": "11b93b1f-2c97-401a-8fae-b2cf9c537048",
"transactionType": "PAYMENT",
"paymentExpiryMinutes":15,
"accountId": "1002495210",
"paymentType": "ONLINE_BANK_TRANSFER",
"profile": {
"email": "BRTESTQA202_01@gmail.com"
},
"paymentDetails": {
"countryCode": "BR"
},
"returnLinks": [
{
"rel": "default",
"href": "https://www.paysafe.com/en/"
}
]
}

Payment handle request with bank code

{
"amount": 1000,
"currencyCode": "BRL",
"dupCheck": true,
"merchantRefNum": "61896753-3204-491d-8344-61c5480ee3d9",
"transactionType": "PAYMENT",
"paymentExpiryMinutes":15,
"accountId": "1002495210",
"paymentType": "ONLINE_BANK_TRANSFER",
"profile": {
"email": "BRTESTQA202_01@gmail.com"
},
"paymentDetails": {
"countryCode": "BR",
"bankNameCodes": [
"ITAU"
]
},
"returnLinks": [{
"rel": "default",
"href": "https://www.paysafe.com/en/"
}
]
}

Payment handle response

{
"id": "2bb8fa2d-09fb-43b1-aa21-5f8225bb0a0e",
"paymentType": "ONLINE_BANK_TRANSFER",
"paymentHandleToken": "PHN2Gx7nItmtxmTL",
"merchantRefNum": "0a296dc9-1a2e-443b-bc28-6d18293445c1",
"currencyCode": "BRL",
"txnTime": "2023-03-14T04:45:42Z",
"customerIp": "213.208.158.220",
"status": "INITIATED",
"links": [
{
"rel": "redirect_payment",
"href": "https://api.test.paysafe.com/alternatepayments/v1/redirect?accountId=1002495210&paymentHandleId=2bb8fa2d-09fb-43b1-aa21-5f8225bb0a0e&token=eyJhbGciOiJIUzI1NiJ9.eyJhY2QiOiIxMDAyNDk1MjEwIiwicHlkIjoiMmJiOGZhMmQtMDlmYi00M2IxLWFhMjEtNWY4MjI1YmIwYTBlIiwiZXhwIjoxNjc4NzcwOTQ0fQ.rc5KYNx6smoTz4jBsbB6ZcWeIcoyl5eJerj-ovCGfo0"
}
],
"liveMode": false,
"simulator": "EXTERNAL",
"usage": "SINGLE_USE",
"action": "REDIRECT",
"executionMode": "SYNCHRONOUS",
"amount": 1000,
"timeToLiveSeconds": 898,
"gatewayResponse": {
"operationId": "0123073466130230",
"id": "926ce5b0-7978-4c7e-a3d9-16b2f891b589",
"processor": "SAFETYPAY"
},
"returnLinks": [

{
"rel": "default",
"href": "https://www.paysafe.com/en/"
}
],
"transactionType": "PAYMENT",
"gatewayReconciliationId": "926ce5b0-7978-4c7e-a3d9-16b2f891b589",
"updatedTime": "2023-03-14T04:45:44Z",
"statusTime": "2023-03-14T04:45:44Z",
"paymentExpiryMinutes":15,
"paymentDetails": {
"countryCode": "BR"
},
"profile": {
"email": "BRTESTQA202_01@gmail.com"
}
}

Payments request

{
"merchantRefNum": "aa1811d6-fb46-401e-9bdf-a0774f12a831",
"amount": 1000,
"currencyCode": "BRL",
"dupCheck": true,
"settleWithAuth": true,
"paymentHandleToken": "PHN2Gx7nItmtxmTL"
}

Payments response

{
"id": "dcf27a44-0380-49ba-a65e-5319925a4838",
"paymentType": "ONLINE_BANK_TRANSFER",
"paymentHandleToken": "PHN2Gx7nItmtxmTL",
"merchantRefNum": "43af49ee-5a87-41d2-b09f-ed9300ede621",
"currencyCode": "BRL",
"settleWithAuth": true,
"dupCheck": true,
"txnTime": "2023-03-14T05:05:21Z",
"customerIp": "213.208.158.220",
"status": "PROCESSING",
"gatewayReconciliationId": "b839e5a6-0879-498a-bb09-a28764dc6be4",
"amount": 1000,
"availableToRefund": 0,
"consumerIp": "213.208.158.220",
"liveMode": false,
"simulator": "EXTERNAL",
"updatedTime": "2023-03-14T05:05:42Z",
"statusTime": "2023-03-14T05:05:42Z",
"gatewayResponse": {
"operationId": "0123073466165265",
"id": "b839e5a6-0879-498a-bb09-a28764dc6be4",
"processor": "SAFETYPAY",
"status": "101"
},
"availableToSettle": 0,
"profile": {
"email": "BRTESTQA202_01@gmail.com"
},
"settlements": {
"amount": 1000,
"txnTime": "2023-03-14T05:05:21.000+0000",
"availableToRefund": 0,
"merchantRefNum": "43af49ee-5a87-41d2-b09f-ed9300ede621",
"id": "dcf27a44-0380-49ba-a65e-5319925a4838",
"status": "PROCESSING"
}
}

Country Codes

Country

Country Code

Brazil BR
Chile CL
Columbia CO
Costa Rica CR
Peru PE

Bank Codes

Bank Name Code Currencies Min Amount Max Amount 
ITAU BRL No minimum amount BRL 57,000
SANTANDER BRL No minimum amount BRL 57,000
BANCO_DO_BRASIL BRL No minimum amount BRL 57,000
BRADESCO BRL No minimum amount BRL 57,000
BANCO_ESTADO CLP No Minimum amount CLP 8,500,000
BANCO_BCI CLP No Minimum amount CLP 500,000
SCOTIABANK_CHILE CLP No Minimum amount CLP 8,500,000
BBVA_COLOMBIA COP 1 COP COP 40,000,000
BANCO_DE_BOGOTA COP 1 COP COP 40,000,000
BANCO_AV_VILLAS COP 1 COP COP 40,000,000
BANCO_CAJA_SOCIAL COP 10,000.00 COP COP 40,000,000
BANCO_SCOTIABANK_COLPATRIA COP 1 COP COP 40,000,000
ITAU COP 1 COP COP 40,000,000
BANCO_DAVIVIENDA COP 1 COP COP 40,000,000
BANCO_DE_OCCIDENTE COP 2,000 COP COP 40,000,000
BANCO_GNB_SUDAMERIS COP 1 COP COP 40,000,000
BANCO_PICHINCHA_COL COP 1 COP COP 40,000,000
BANCO_POPULAR COP 1 COP COP 40,000,000
BANCO_PROCREDIT COP 1 COP COP 40,000,000
ONLINE_BANK_PAYMENT_BANCOLOMBIA_COLOMBIA COP 1 COP COP 40,000,000
ONLINE_BANK_PAYMENT_BANCOOMEVA_COLOMBIA COP 1 COP COP 40,000,000
CITIBANK_COLOMBIA COP 1 COP COP 40,000,000
BANCO_FALABELLA COP 1 COP COP 40,000,000
BANCO_COOPERATIVO_COOPCENTRAL COP 1 COP COP 40,000,000
BANCO_AGRARIO COP 1 COP COP 40,000,000
NEQUI_COLOMBIA COP 1 COP COP 40,000,000
ONLINE_BANK_PAYMENT_BANCO_SANTANDER_COLOMBIA COP No Minimum amount COP 40,000,000
DAVIPLATA COP 1 COP COP 40,000,000
CONFIAR_COOPERATIVA_FINANCIERA COP 1 COP COP 40,000,000
BANCO_SERFINANZA COP 1 COP COP 40,000,000
CFA_COOPERATIVA_FINANCIERA COP 1 COP COP 40,000,000
BANCAMIA COP 1 COP COP 40,000,000
RAPPIPAY COP 1 COP COP 40,000,000
COLTEFINANCIERA COP 1 COP COP 40,000,000
COTRAFA COP 1 COP COP 40,000,000
BANCO_CREDIFINANCIERA COP #N/A COP 40,000,000
COLTEFINANCIERA COP No Minimum amount COP 40,000,000
MOVII_SA COP No Minimum amount COP 40,000,000
DALE COP No Minimum amount COP 40,000,000
GIROS_Y_FINANZAS COP No Minimum amount COP 40,000,000
IRIS COP No Minimum amount COP 40,000,000
COOFINEP COP No Minimum amount COP 40,000,000
BANCO_NACIONAL_DE_COSTA_RICA CRC No minimum amount CRC 6,200,000
BBVA_CONTINENTAL PEN No minimum amount PEN 43,000
BANCO_DE_CREDITO PEN No minimum amount PEN 43,000
SCOTIABANK PEN No minimum amount PEN 43,000
INTERBANK PEN No minimum amount PEN 43,000
CAJA_TACNA_PERU PEN 10 PEN PEN 43,000
CAJA_TRUJILLO_PERU PEN No minimum amount PEN 43,000
CAJA_HUANCAYO_PERU PEN No minimum amount PEN 43,000
CAJA_AREQUIPA PEN No minimum amount PEN 43,000
BCP_CUOTEALO PEN No Minimum amount PEN 7,000

Testing Instructions

Country currencyCode countryCode Instructions Bank Name Codes
        If you want to test with bankNameCode, pass the following codes in the request:
Brazil BRL BR
  • On the SafetyPay Express page:
    • Select SP Test Bank Default for the bank.
    • Click Make the payment
  • You will be redirected to the Bank Test page:
    • Enter test for the userid and test for the password.
    • Confirm the transaction.
ITAU
Chile CLP CL
  • On the SafetyPay Express page:
    • Select SP Test Bank Default for the bank.
    • Click Make the payment.
  • You will be redirected to the Bank Test page:
    • Enter test for the userid and test for the password.
    • Confirm the transaction.

--------------

  • On the SafetyPay Express page:
    • Select SP Test Bank Direct for the bank.
    • Click Make the payment
  • You will be redirected to the Bank Test page:
    • Enter test for the userid and test for the password.
    • Select Chile, Pesos for the Currency.
    • Enter the "Payment Code" from the Safetypay Express page for the Transaction ID.
    • Enter the amount from the Safetypay Express page for the Amount.
    • Click Accept to confirm the transaction.
BANCO_ESTADO
Columbia COP CO
  • On the SafetyPay Express page:
    • Select your preferred bank: BANCAMIA
    • Enter your details: Select NIT
    • NIT: 1012201233
    • Name: test
    • Surname: test
    • Email: test@test.com
    • Cellular: 9614752681
    • City of Residence: Bogota
  • Click View Payment Information.
  • Click Go to PSE.
  • Click Continue.
COTRAFA
Costa Rica CRC CR
  • On the SafetyPay Express page:
    • Select SP Test Bank Direct for the bank.
    • Click Go to Pay.
  • You will be redirected to the Bank Test page:
    • Enter test for the userid and test for the password.
    • Select Chile, Pesos for the Currency.
    • Enter the "Payment Code" from the Safetypay Express page for the Transaction ID.
    • Enter the amount from the Safetypay Express page for the Amount.
    • Click Accept to confirm the transaction.
BANCO_NACIONAL_DE_COSTA_RICA
Peru PEN PE
  • On the SafetyPay Express page:
    • Select SP Test Bank Default for the bank.
    • Click Make the payment.
  • You will be redirected to the Bank Test page:
    • Enter test for the userid and test for the password.
    • Confirm the transaction.

--------------

  • On the SafetyPay Express page:
    • Select SP Test Bank Direct for the bank.
    • Click Make the payment.
  • You will be redirected to the Bank Test page:
    • Enter test for the userid and test for the password.
    • Select Chile, Pesos for the Currency.
    • Enter the "Payment Code" from the Safetypay Express page for the Transaction ID.
    • Enter the amount from the Safetypay Express page for the Amount.
    • Click Accept to confirm the transaction.
BBVA_CONTINENTAL