SafetyPay Bank Transfer

SafetyPay Bank Transfer allows users 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 SafetyPay Bank transfer via safetyPay as a Payment Instrument for iGaming and Crypto Merchants in Brazil, Peru, Chile, Mexico, Colombia, Ecuador, Costa Rica. You can process SafetyPay Bank Transfer online payments using the Payments API.

Setup Requirements

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

  • Paysafecard API key

Transaction Types

  • Payments

Minimum Amount

Maximum Amount
$1 $10,000

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.

APIs to use: Payment Handles + Payments

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.

Did you find this page useful?