Payment Methods

These are payment modes that determine how a transaction will be processed.

Below are supported payment methods

MOBILE_MONEY

To collect or payout funds using mobile money, you need to set the method parameter in the request body as MOBILE_MONEY

Mobile money payments also require you to provide the customer's mobile phone number as, account_number registered with any of the supported mobile money networks/telecoms in the international format, including its country code e.g 256777111000

Sample Request Body
Sample Request Body
{
...
"method": "MOBILE_MONEY"
"account_number": "256777111000",
...
}

CARD

To collect funds using cards, you need to set the method parameter in the request body as CARD . The card method supports only collections at the moment.

Sample Request Body
Sample Request Body
{
...
"method": "CARD"
...
}

Refunds are also supported for cards. Learn more about them here

By default, you do not provide the customer's card details to process card transactions. You simply specify the method as, CARD and we will return a payment_url where the customer will complete their transaction.

When the customer is redirected to the payment_url, they will securely provide their card details and their transaction will be processed without storing their card details. We will only store and share the masked version of their card number.

BANK

To collect or payout funds using a bank, you need to set the method parameter in the request body as BANK . The bank method supports both collections and payouts.

Sample Request Body
Sample Request Body
{
...
"method": "BANK"
...
}

When used for collections, we will return a payment_url where the customer will complete their transaction. When the customer is redirected to the payment_url, they will securely provide their bank account details and their transaction will be processed.

CRYPTO

To collect funds using cards, you need to set the method parameter in the request body as CRYPTO . The crypto method supports only collections at the moment. Funds collected will be stored in the base currency of the provider_id used to make the payment. e.g setting the provider_id=btc_usd means that we will collect the amount as USD and the customer will pay using BTC. Your USD account will be credited at the end of the transaction and we will settle you in USD.

Sample Request Body
Sample Request Body
{
...
"method": "CRYPTO"
...
}

We will return a, payment_url where the customer should be redirected to complete the transaction.