Niobi Unified Payment v2
curl --request POST \
--url https://sandbox.users.niobi.co/api/v2/niobi-payment \
--header 'Content-Type: application/json' \
--data '
{
"client_id": "K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr",
"params": {
"amount": 1000,
"currency": "KES",
"payment_reference": "TRANS-123456789",
"first_name": "John",
"last_name": "Doe",
"mobile": "254123456789",
"email": "john@doe.com",
"country": "KE",
"city": "Nairobi",
"postal_code": "001001",
"line1": "abc, xyz",
"client_callback_url": "https://your-domain.com/niobi/result",
"payment_method_type": "send money",
"customer_identifier": 1234,
"description": "abc, xyz",
"MTN": [
{
"phone_number": "254123456789"
}
],
"Orange": [
{
"phone_number": "254123456789"
}
],
"Vodacom": [
{
"phone_number": "254123456789"
}
],
"Airtel": [
{
"phone_number": "254123456789"
}
],
"AT": [
{
"phone_number": "254123456789"
}
],
"Vodafone": [
{
"phone_number": "254123456789"
}
],
"TNM": [
{
"phone_number": "254123456789"
}
],
"Zamtel": [
{
"phone_number": "254123456789"
}
],
"Halotel": [
{
"phone_number": "254123456789"
}
],
"Tigo": [
{
"phone_number": "254123456789"
}
],
"Free": [
{
"phone_number": "254123456789"
}
],
"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"
}
]
},
"salt": "waqassharif00494",
"sender": "ApexVim",
"timestamp": 1709363033,
"signature": "2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807"
}
'import requests
url = "https://sandbox.users.niobi.co/api/v2/niobi-payment"
payload = {
"client_id": "K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr",
"params": {
"amount": 1000,
"currency": "KES",
"payment_reference": "TRANS-123456789",
"first_name": "John",
"last_name": "Doe",
"mobile": "254123456789",
"email": "john@doe.com",
"country": "KE",
"city": "Nairobi",
"postal_code": "001001",
"line1": "abc, xyz",
"client_callback_url": "https://your-domain.com/niobi/result",
"payment_method_type": "send money",
"customer_identifier": 1234,
"description": "abc, xyz",
"MTN": [{ "phone_number": "254123456789" }],
"Orange": [{ "phone_number": "254123456789" }],
"Vodacom": [{ "phone_number": "254123456789" }],
"Airtel": [{ "phone_number": "254123456789" }],
"AT": [{ "phone_number": "254123456789" }],
"Vodafone": [{ "phone_number": "254123456789" }],
"TNM": [{ "phone_number": "254123456789" }],
"Zamtel": [{ "phone_number": "254123456789" }],
"Halotel": [{ "phone_number": "254123456789" }],
"Tigo": [{ "phone_number": "254123456789" }],
"Free": [{ "phone_number": "254123456789" }],
"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"
}
]
},
"salt": "waqassharif00494",
"sender": "ApexVim",
"timestamp": 1709363033,
"signature": "2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
client_id: 'K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr',
params: {
amount: 1000,
currency: 'KES',
payment_reference: 'TRANS-123456789',
first_name: 'John',
last_name: 'Doe',
mobile: '254123456789',
email: 'john@doe.com',
country: 'KE',
city: 'Nairobi',
postal_code: '001001',
line1: 'abc, xyz',
client_callback_url: 'https://your-domain.com/niobi/result',
payment_method_type: 'send money',
customer_identifier: 1234,
description: 'abc, xyz',
MTN: [{phone_number: '254123456789'}],
Orange: [{phone_number: '254123456789'}],
Vodacom: [{phone_number: '254123456789'}],
Airtel: [{phone_number: '254123456789'}],
AT: [{phone_number: '254123456789'}],
Vodafone: [{phone_number: '254123456789'}],
TNM: [{phone_number: '254123456789'}],
Zamtel: [{phone_number: '254123456789'}],
Halotel: [{phone_number: '254123456789'}],
Tigo: [{phone_number: '254123456789'}],
Free: [{phone_number: '254123456789'}],
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'
}
]
},
salt: 'waqassharif00494',
sender: 'ApexVim',
timestamp: 1709363033,
signature: '2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807'
})
};
fetch('https://sandbox.users.niobi.co/api/v2/niobi-payment', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.users.niobi.co/api/v2/niobi-payment",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'client_id' => 'K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr',
'params' => [
'amount' => 1000,
'currency' => 'KES',
'payment_reference' => 'TRANS-123456789',
'first_name' => 'John',
'last_name' => 'Doe',
'mobile' => '254123456789',
'email' => 'john@doe.com',
'country' => 'KE',
'city' => 'Nairobi',
'postal_code' => '001001',
'line1' => 'abc, xyz',
'client_callback_url' => 'https://your-domain.com/niobi/result',
'payment_method_type' => 'send money',
'customer_identifier' => 1234,
'description' => 'abc, xyz',
'MTN' => [
[
'phone_number' => '254123456789'
]
],
'Orange' => [
[
'phone_number' => '254123456789'
]
],
'Vodacom' => [
[
'phone_number' => '254123456789'
]
],
'Airtel' => [
[
'phone_number' => '254123456789'
]
],
'AT' => [
[
'phone_number' => '254123456789'
]
],
'Vodafone' => [
[
'phone_number' => '254123456789'
]
],
'TNM' => [
[
'phone_number' => '254123456789'
]
],
'Zamtel' => [
[
'phone_number' => '254123456789'
]
],
'Halotel' => [
[
'phone_number' => '254123456789'
]
],
'Tigo' => [
[
'phone_number' => '254123456789'
]
],
'Free' => [
[
'phone_number' => '254123456789'
]
],
'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'
]
]
],
'salt' => 'waqassharif00494',
'sender' => 'ApexVim',
'timestamp' => 1709363033,
'signature' => '2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.users.niobi.co/api/v2/niobi-payment"
payload := strings.NewReader("{\n \"client_id\": \"K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr\",\n \"params\": {\n \"amount\": 1000,\n \"currency\": \"KES\",\n \"payment_reference\": \"TRANS-123456789\",\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"mobile\": \"254123456789\",\n \"email\": \"john@doe.com\",\n \"country\": \"KE\",\n \"city\": \"Nairobi\",\n \"postal_code\": \"001001\",\n \"line1\": \"abc, xyz\",\n \"client_callback_url\": \"https://your-domain.com/niobi/result\",\n \"payment_method_type\": \"send money\",\n \"customer_identifier\": 1234,\n \"description\": \"abc, xyz\",\n \"MTN\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Orange\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodacom\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Airtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"AT\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodafone\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"TNM\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Zamtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Halotel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Tigo\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Free\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"sendmoney\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"paybill\": [\n {\n \"paybill_number\": \"123456\",\n \"account_number\": \"123456789\"\n }\n ],\n \"tillnumber\": [\n {\n \"till_number\": \"123456\"\n }\n ],\n \"pesalink\": [\n {\n \"bank_name\": \"ABC\",\n \"bank_code\": \"00\",\n \"branch_name\": \"ABC\",\n \"account_name\": \"ABC\",\n \"account_number\": \"123456789\"\n }\n ]\n },\n \"salt\": \"waqassharif00494\",\n \"sender\": \"ApexVim\",\n \"timestamp\": 1709363033,\n \"signature\": \"2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.users.niobi.co/api/v2/niobi-payment")
.header("Content-Type", "application/json")
.body("{\n \"client_id\": \"K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr\",\n \"params\": {\n \"amount\": 1000,\n \"currency\": \"KES\",\n \"payment_reference\": \"TRANS-123456789\",\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"mobile\": \"254123456789\",\n \"email\": \"john@doe.com\",\n \"country\": \"KE\",\n \"city\": \"Nairobi\",\n \"postal_code\": \"001001\",\n \"line1\": \"abc, xyz\",\n \"client_callback_url\": \"https://your-domain.com/niobi/result\",\n \"payment_method_type\": \"send money\",\n \"customer_identifier\": 1234,\n \"description\": \"abc, xyz\",\n \"MTN\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Orange\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodacom\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Airtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"AT\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodafone\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"TNM\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Zamtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Halotel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Tigo\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Free\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"sendmoney\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"paybill\": [\n {\n \"paybill_number\": \"123456\",\n \"account_number\": \"123456789\"\n }\n ],\n \"tillnumber\": [\n {\n \"till_number\": \"123456\"\n }\n ],\n \"pesalink\": [\n {\n \"bank_name\": \"ABC\",\n \"bank_code\": \"00\",\n \"branch_name\": \"ABC\",\n \"account_name\": \"ABC\",\n \"account_number\": \"123456789\"\n }\n ]\n },\n \"salt\": \"waqassharif00494\",\n \"sender\": \"ApexVim\",\n \"timestamp\": 1709363033,\n \"signature\": \"2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.users.niobi.co/api/v2/niobi-payment")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_id\": \"K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr\",\n \"params\": {\n \"amount\": 1000,\n \"currency\": \"KES\",\n \"payment_reference\": \"TRANS-123456789\",\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"mobile\": \"254123456789\",\n \"email\": \"john@doe.com\",\n \"country\": \"KE\",\n \"city\": \"Nairobi\",\n \"postal_code\": \"001001\",\n \"line1\": \"abc, xyz\",\n \"client_callback_url\": \"https://your-domain.com/niobi/result\",\n \"payment_method_type\": \"send money\",\n \"customer_identifier\": 1234,\n \"description\": \"abc, xyz\",\n \"MTN\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Orange\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodacom\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Airtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"AT\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodafone\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"TNM\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Zamtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Halotel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Tigo\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Free\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"sendmoney\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"paybill\": [\n {\n \"paybill_number\": \"123456\",\n \"account_number\": \"123456789\"\n }\n ],\n \"tillnumber\": [\n {\n \"till_number\": \"123456\"\n }\n ],\n \"pesalink\": [\n {\n \"bank_name\": \"ABC\",\n \"bank_code\": \"00\",\n \"branch_name\": \"ABC\",\n \"account_name\": \"ABC\",\n \"account_number\": \"123456789\"\n }\n ]\n },\n \"salt\": \"waqassharif00494\",\n \"sender\": \"ApexVim\",\n \"timestamp\": 1709363033,\n \"signature\": \"2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807\"\n}"
response = http.request(request)
puts response.read_bodyMake Payments
Niobi Unified Payment v2
Handles payment processing for Niobi, supporting multiple payment methods.
POST
/
api
/
v2
/
niobi-payment
Niobi Unified Payment v2
curl --request POST \
--url https://sandbox.users.niobi.co/api/v2/niobi-payment \
--header 'Content-Type: application/json' \
--data '
{
"client_id": "K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr",
"params": {
"amount": 1000,
"currency": "KES",
"payment_reference": "TRANS-123456789",
"first_name": "John",
"last_name": "Doe",
"mobile": "254123456789",
"email": "john@doe.com",
"country": "KE",
"city": "Nairobi",
"postal_code": "001001",
"line1": "abc, xyz",
"client_callback_url": "https://your-domain.com/niobi/result",
"payment_method_type": "send money",
"customer_identifier": 1234,
"description": "abc, xyz",
"MTN": [
{
"phone_number": "254123456789"
}
],
"Orange": [
{
"phone_number": "254123456789"
}
],
"Vodacom": [
{
"phone_number": "254123456789"
}
],
"Airtel": [
{
"phone_number": "254123456789"
}
],
"AT": [
{
"phone_number": "254123456789"
}
],
"Vodafone": [
{
"phone_number": "254123456789"
}
],
"TNM": [
{
"phone_number": "254123456789"
}
],
"Zamtel": [
{
"phone_number": "254123456789"
}
],
"Halotel": [
{
"phone_number": "254123456789"
}
],
"Tigo": [
{
"phone_number": "254123456789"
}
],
"Free": [
{
"phone_number": "254123456789"
}
],
"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"
}
]
},
"salt": "waqassharif00494",
"sender": "ApexVim",
"timestamp": 1709363033,
"signature": "2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807"
}
'import requests
url = "https://sandbox.users.niobi.co/api/v2/niobi-payment"
payload = {
"client_id": "K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr",
"params": {
"amount": 1000,
"currency": "KES",
"payment_reference": "TRANS-123456789",
"first_name": "John",
"last_name": "Doe",
"mobile": "254123456789",
"email": "john@doe.com",
"country": "KE",
"city": "Nairobi",
"postal_code": "001001",
"line1": "abc, xyz",
"client_callback_url": "https://your-domain.com/niobi/result",
"payment_method_type": "send money",
"customer_identifier": 1234,
"description": "abc, xyz",
"MTN": [{ "phone_number": "254123456789" }],
"Orange": [{ "phone_number": "254123456789" }],
"Vodacom": [{ "phone_number": "254123456789" }],
"Airtel": [{ "phone_number": "254123456789" }],
"AT": [{ "phone_number": "254123456789" }],
"Vodafone": [{ "phone_number": "254123456789" }],
"TNM": [{ "phone_number": "254123456789" }],
"Zamtel": [{ "phone_number": "254123456789" }],
"Halotel": [{ "phone_number": "254123456789" }],
"Tigo": [{ "phone_number": "254123456789" }],
"Free": [{ "phone_number": "254123456789" }],
"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"
}
]
},
"salt": "waqassharif00494",
"sender": "ApexVim",
"timestamp": 1709363033,
"signature": "2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
client_id: 'K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr',
params: {
amount: 1000,
currency: 'KES',
payment_reference: 'TRANS-123456789',
first_name: 'John',
last_name: 'Doe',
mobile: '254123456789',
email: 'john@doe.com',
country: 'KE',
city: 'Nairobi',
postal_code: '001001',
line1: 'abc, xyz',
client_callback_url: 'https://your-domain.com/niobi/result',
payment_method_type: 'send money',
customer_identifier: 1234,
description: 'abc, xyz',
MTN: [{phone_number: '254123456789'}],
Orange: [{phone_number: '254123456789'}],
Vodacom: [{phone_number: '254123456789'}],
Airtel: [{phone_number: '254123456789'}],
AT: [{phone_number: '254123456789'}],
Vodafone: [{phone_number: '254123456789'}],
TNM: [{phone_number: '254123456789'}],
Zamtel: [{phone_number: '254123456789'}],
Halotel: [{phone_number: '254123456789'}],
Tigo: [{phone_number: '254123456789'}],
Free: [{phone_number: '254123456789'}],
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'
}
]
},
salt: 'waqassharif00494',
sender: 'ApexVim',
timestamp: 1709363033,
signature: '2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807'
})
};
fetch('https://sandbox.users.niobi.co/api/v2/niobi-payment', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://sandbox.users.niobi.co/api/v2/niobi-payment",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'client_id' => 'K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr',
'params' => [
'amount' => 1000,
'currency' => 'KES',
'payment_reference' => 'TRANS-123456789',
'first_name' => 'John',
'last_name' => 'Doe',
'mobile' => '254123456789',
'email' => 'john@doe.com',
'country' => 'KE',
'city' => 'Nairobi',
'postal_code' => '001001',
'line1' => 'abc, xyz',
'client_callback_url' => 'https://your-domain.com/niobi/result',
'payment_method_type' => 'send money',
'customer_identifier' => 1234,
'description' => 'abc, xyz',
'MTN' => [
[
'phone_number' => '254123456789'
]
],
'Orange' => [
[
'phone_number' => '254123456789'
]
],
'Vodacom' => [
[
'phone_number' => '254123456789'
]
],
'Airtel' => [
[
'phone_number' => '254123456789'
]
],
'AT' => [
[
'phone_number' => '254123456789'
]
],
'Vodafone' => [
[
'phone_number' => '254123456789'
]
],
'TNM' => [
[
'phone_number' => '254123456789'
]
],
'Zamtel' => [
[
'phone_number' => '254123456789'
]
],
'Halotel' => [
[
'phone_number' => '254123456789'
]
],
'Tigo' => [
[
'phone_number' => '254123456789'
]
],
'Free' => [
[
'phone_number' => '254123456789'
]
],
'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'
]
]
],
'salt' => 'waqassharif00494',
'sender' => 'ApexVim',
'timestamp' => 1709363033,
'signature' => '2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://sandbox.users.niobi.co/api/v2/niobi-payment"
payload := strings.NewReader("{\n \"client_id\": \"K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr\",\n \"params\": {\n \"amount\": 1000,\n \"currency\": \"KES\",\n \"payment_reference\": \"TRANS-123456789\",\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"mobile\": \"254123456789\",\n \"email\": \"john@doe.com\",\n \"country\": \"KE\",\n \"city\": \"Nairobi\",\n \"postal_code\": \"001001\",\n \"line1\": \"abc, xyz\",\n \"client_callback_url\": \"https://your-domain.com/niobi/result\",\n \"payment_method_type\": \"send money\",\n \"customer_identifier\": 1234,\n \"description\": \"abc, xyz\",\n \"MTN\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Orange\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodacom\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Airtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"AT\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodafone\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"TNM\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Zamtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Halotel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Tigo\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Free\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"sendmoney\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"paybill\": [\n {\n \"paybill_number\": \"123456\",\n \"account_number\": \"123456789\"\n }\n ],\n \"tillnumber\": [\n {\n \"till_number\": \"123456\"\n }\n ],\n \"pesalink\": [\n {\n \"bank_name\": \"ABC\",\n \"bank_code\": \"00\",\n \"branch_name\": \"ABC\",\n \"account_name\": \"ABC\",\n \"account_number\": \"123456789\"\n }\n ]\n },\n \"salt\": \"waqassharif00494\",\n \"sender\": \"ApexVim\",\n \"timestamp\": 1709363033,\n \"signature\": \"2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://sandbox.users.niobi.co/api/v2/niobi-payment")
.header("Content-Type", "application/json")
.body("{\n \"client_id\": \"K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr\",\n \"params\": {\n \"amount\": 1000,\n \"currency\": \"KES\",\n \"payment_reference\": \"TRANS-123456789\",\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"mobile\": \"254123456789\",\n \"email\": \"john@doe.com\",\n \"country\": \"KE\",\n \"city\": \"Nairobi\",\n \"postal_code\": \"001001\",\n \"line1\": \"abc, xyz\",\n \"client_callback_url\": \"https://your-domain.com/niobi/result\",\n \"payment_method_type\": \"send money\",\n \"customer_identifier\": 1234,\n \"description\": \"abc, xyz\",\n \"MTN\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Orange\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodacom\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Airtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"AT\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodafone\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"TNM\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Zamtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Halotel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Tigo\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Free\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"sendmoney\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"paybill\": [\n {\n \"paybill_number\": \"123456\",\n \"account_number\": \"123456789\"\n }\n ],\n \"tillnumber\": [\n {\n \"till_number\": \"123456\"\n }\n ],\n \"pesalink\": [\n {\n \"bank_name\": \"ABC\",\n \"bank_code\": \"00\",\n \"branch_name\": \"ABC\",\n \"account_name\": \"ABC\",\n \"account_number\": \"123456789\"\n }\n ]\n },\n \"salt\": \"waqassharif00494\",\n \"sender\": \"ApexVim\",\n \"timestamp\": 1709363033,\n \"signature\": \"2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://sandbox.users.niobi.co/api/v2/niobi-payment")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_id\": \"K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr\",\n \"params\": {\n \"amount\": 1000,\n \"currency\": \"KES\",\n \"payment_reference\": \"TRANS-123456789\",\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"mobile\": \"254123456789\",\n \"email\": \"john@doe.com\",\n \"country\": \"KE\",\n \"city\": \"Nairobi\",\n \"postal_code\": \"001001\",\n \"line1\": \"abc, xyz\",\n \"client_callback_url\": \"https://your-domain.com/niobi/result\",\n \"payment_method_type\": \"send money\",\n \"customer_identifier\": 1234,\n \"description\": \"abc, xyz\",\n \"MTN\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Orange\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodacom\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Airtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"AT\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Vodafone\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"TNM\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Zamtel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Halotel\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Tigo\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"Free\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"sendmoney\": [\n {\n \"phone_number\": \"254123456789\"\n }\n ],\n \"paybill\": [\n {\n \"paybill_number\": \"123456\",\n \"account_number\": \"123456789\"\n }\n ],\n \"tillnumber\": [\n {\n \"till_number\": \"123456\"\n }\n ],\n \"pesalink\": [\n {\n \"bank_name\": \"ABC\",\n \"bank_code\": \"00\",\n \"branch_name\": \"ABC\",\n \"account_name\": \"ABC\",\n \"account_number\": \"123456789\"\n }\n ]\n },\n \"salt\": \"waqassharif00494\",\n \"sender\": \"ApexVim\",\n \"timestamp\": 1709363033,\n \"signature\": \"2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807\"\n}"
response = http.request(request)
puts response.read_bodyBody
application/json
Payload required for initiating a Niobi payment transaction.
The Client id is your public key which is generated when you are creating a new API integration from our app.
Example:
"K1PoY1WYricSpXh6Wm24twnk6ecPJOWrHGsqiKJr"
Show child attributes
Show child attributes
Salt for security.
Example:
"waqassharif00494"
Identifier of the sender.
Example:
"ApexVim"
Timestamp of the request.
Example:
1709363033
Signature for verifying the request.
Example:
"2193d01d50d4bd5da234ac0e0add5d4ccb40907a1b1ab27a12d2c1d88a5d5807"
Response
Ok.
⌘I

