Skip to main content
POST
Initializes a payment request

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
token
enum<string>
required

The token you want to receive

Available options:
KESy_TESTNET
amount
number
required

The amount of money you want user to pay

Required range: 1 <= x <= 500000
email
string<email>
required

The user's email, where they'll be sent payment notification

currency
enum<string>
required

The currency that user is paying in

Available options:
KES
metadata
object
required
callback_url
string<url>

Optional callback URL that you want user to be redirected to after completing payment

channels
enum<string>[]

The payment channel you want user to use

Available options:
card,
bank,
ussd,
qr,
mobile_money,
bank_transfer,
eft,
apple_pay,
payattitude
crypto_account
string

If you want the tokens to be sent to a different account from the one entered when creating business you can pass it here. It is a Hedera account ID e.g. 0.0.7441630

Response

201 - application/json

Payment request initialized succesfully

reference
string
required
authorization_url
string<url>
required

The URL to redirect user to for them to complete payment

access_code
string
required