Skip to main content
POST
/
api
/
niobi-payment
Niobi Unified Payment
curl --request POST \
  --url https://dev.users.niobi.co/api/niobi-payment \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "amount": 10,
  "currency": "KES",
  "first_name": "John",
  "last_name": "Doe",
  "mobile": "254123456789",
  "email": "[email protected]",
  "country": "KE",
  "city": "Nairobi",
  "postal_code": "001001",
  "line1": "abc, xyz",
  "payment_method_type": "send money",
  "customer_identifier": 1234,
  "payment_reference": "123456789",
  "description": "abc, xyz",
  "client_callback_url": "https://your-domain.com/niobi/result",
  "MTN": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Orange": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Vodacom": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Airtel": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "AT": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Vodafone": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "TNM": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Zamtel": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Halotel": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Tigo": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "Free": [
    {
      "phone_number": "254123456789",
      "correspondent": "MPESA_KEN"
    }
  ],
  "sendmoney": [
    {
      "phone_number": "254123456789"
    }
  ],
  "paybill": [
    {
      "paybill_number": "123456",
      "account_number": "123456789"
    }
  ],
  "tillnumber": [
    {
      "till_number": "123456"
    }
  ],
  "pesalink": [
    {
      "bank_name": "ABC",
      "bank_code": "00",
      "branch_name": "ABC",
      "account_name": "ABC",
      "account_number": "123456789"
    }
  ]
}
'

Authorizations

Authorization
string
header
required

Enter token in format (Bearer )

Body

application/json

Supported Banks


NameCode
Kenya Commercial Bank01
Standard Chartered02
Absa Bank Kenya03
Ncba Bank Kenya07
Prime Bank10
Cooperative Bank11
National Bank of Kenya12
Citibank N.A Kenya16
Middle East Bank Kenya18
Bank of Africa Kenya19
Credit Bank Limited25
CFC Stanbic Kenya31
Paramount Bank50
Jamii Bora Bank51
Guaranty Trust Bank53
Guardian Bank55
I&M Bank 57
Diamond Trust Bank63
Sidian Bank66
Equity Bank Kenya68
Family Bank Limited70
Gulf African Bank72
First Community Bank74
Kenya Women's Finance Trust78


amount
integer<amount>
required

This is the Amount of money you wish to transfer. This amount shall always be less than the total value in your Balance

Example:

10

currency
string<currency>
required

This is the currency of the payouts you are making. At the moment, Niobi Payments supports KES transactions only

Example:

"KES"

first_name
string<first_name>
required

This is the first name of the Payee who is being paid out

Example:

"John"

last_name
string<last_name>
required

This is the last name of the Payee who is being paid out

Example:

"Doe"

mobile
string<mobile>
required

This is the mobile number of the Payee who is being paid out. Use the correct formatting as described in the example

Example:

"254123456789"

email
string<email>
required

This is the email of the Payee who is being paid out

country
string<country>
required

This is the country of the Payee who is being paid out

Example:

"KE"

city
string<city>
required

This is the city of the Payee who is being paid out

Example:

"Nairobi"

postal_code
string<postal_code>
required

This is the postal code of the Payee who is being paid out

Example:

"001001"

line1
string<line1>
required

This is the street address of the Payee who is being paid out

Example:

"abc, xyz"

payment_method_type
enum<string>
required

This is the preferred payment method you want to use to payout the money and what makes the Niobi Payment API really unique as we support all popular mobile money and bank payments

Available options:
MTN,
Orange,
Vodacom,
Airtel,
AT,
Vodafone,
TNM,
Zamtel,
Halotel,
Tigo,
Free,
send money,
till number,
pay bill,
pesalink
Example:

"send money"

customer_identifier
integer<integer>

This is the Customer Identifier number for sub-wallet.

Example:

1234

payment_reference
string<payment_reference>

This is the account number associated with Niobi, that holds the value from which a pyaout is being made

Example:

"123456789"

description
string<description>

This is the description or message from payer who is paying out

Example:

"abc, xyz"

client_callback_url
string<client_callback_url>

You can provide call back URL to get payment confirmation response.

Example:

"https://your-domain.com/niobi/result"

MTN
object[]

Using MTN method needs a recipient's phone number and correspondent of payment method and correspondent of payment method

Orange
object[]

Using Orange method needs a recipient's phone number and correspondent of payment method

Vodacom
object[]

Using Vodacom method needs a recipient's phone number and correspondent of payment method

Airtel
object[]

Using Airtel method needs a recipient's phone number and correspondent of payment method

AT
object[]

Using AT method needs a recipient's phone number and correspondent of payment method

Vodafone
object[]

Using Vodafone method needs a recipient's phone number and correspondent of payment method

TNM
object[]

Using TNM method needs a recipient's phone number and correspondent of payment method

Zamtel
object[]

Using Zamtel method needs a recipient's phone number and correspondent of payment method

Halotel
object[]

Using Halotel method needs a recipient's phone number and correspondent of payment method

Tigo
object[]

Using Tigo method needs a recipient's phone number and correspondent of payment method

Free
object[]

Using Free method needs a recipient's phone number and correspondent of payment method

sendmoney
object[]

Using M-Pesa Send Money method needs a recipient's phone number

paybill
object[]

Using M-Pesa PayBill method needs A Paybill Number and Account Number

tillnumber
object[]

Using M-Pesa till number method needs the recipient's Till Number

Niobi Payments also allows payouts via Bank Transfers using Pesalink. This transfer needs the following information

Response

Ok.