White-Label API (Direct Charge)

This endpoint can be used to either

  1. Retrieve a bank account for your customers to send fiat to. Once they do, you instantly receive USDT in your wallet.

  2. Directly charge mobile money phone numbers. You also instantly receive USDT in your wallet.

To do this, Make a POST request to the following endpoint.

https://api.localramp.co/v1/transaction/pay/direct-charge

The request takes this as the body

FieldData TypeDescription

reference

String

Required - Your unique transaction reference. Must be unique for every transaction. e.g "Abc123"

email

String

Required e.g "customer@example.com"

sender_currency

String

Required - The currency your user would be paying in. e.g "NGN"

country_code

String

Required - The country_code of the user paying in e.g "NG", "KE", "GH", "ZM"

usdt_amount

String

Required - usdt amount to be received e.g "200.00".

phone_number

String

Optionally Required - Required for mobile money e.g "+23390999099"

phone_network

String

Optionally Required - Required for mobile money e.g "mobile_money_MTN"

bvn

String

Optionally Required - BVN of user making deposit. For large usdt amounts when sender_currency is NGN.

With the following header

x-auth-token: <SECRET_KEY>

If the API call is successful, LocalRamp returns the following response:

{
    "status": "success",
    "data": {
        "account_name": "Jaka Technologies",
        "account_number": "8603043242",
        "bank_name": "African Bank",
        "optional_bank_ref": "ZHKAP",
        "payment_amount": "1000",
        "bank_account_timeout": "2023-04-06T17:37:42.900Z"
    }
}

Store the reference . It'll be used to verify the transaction.

The user is expected to make the bank transfer within 30 mins of initiating the transaction.

bank_account_timeout is when the bank account would no longer accept payments for this transaction.

optional_bank_ref is the optional transaction note/reference the user can add to the transaction.

The user is expected to only make the transfer from a personal bank account belonging to the user.

Before passing inusdt_amount, you'll need to know the maximum and minimum values allowed for a sender_currency. See limit section.

To get the list of supported currencies and country codes see the Get currencies section

Last updated