POST /charge

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
ussd Object No
ussd.type String No

The three-digit USSD code

Possible values:

  • "737"
  • "966"
  • "822"
  • "919"
email String Yes

Customer's email address

amount String Yes

Amount should be in kobo if currency is NGN, pesewas, if currency is GHS, and cents, if currency is ZAR

mobile_money Object No
mobile_money.provider String No

The telco provider of customer's phone number. This can be fetched from the List Bank endpoint

mobile_money.phone String No

Customer's phone number

device_id String No

This is the unique identifier of the device a user uses in making payment. Only -, .`, = and alphanumeric characters are allowed.

metadata String No

Stringified JSON object of custom data

eft Object No
eft.provider String No

The EFT provider

Possible values:

  • "ozow"
pin String No

4-digit PIN (send with a non-reusable authorization code)

reference String No

Unique transaction reference. Only -, .`, = and alphanumeric characters allowed.

authorization_code String No

An authorization code to charge.

birthday String No

The customer's birthday in the format YYYY-MM-DD e.g 2017-05-16

bank Object No
bank.account_number String No

Customer's account number

bank.code String No

Customer's bank code

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.