Airtime API, SMS API, Payment API (pesalink, airtel and Mpesa b2c, b2b, stk-push)

Please wait...

C2B Online Check out



The service leverages on the deep penetration of the mobile phone and the proliferation of internet services to ease the payment and shopping experience for customers while allowing merchants to match their goods and services directly to consumers.

Lipa Na M-PESA online (Online Check Out) provides customers a chance to purchase items online. Customers select the items they want to pay for and pay with Lipa Na M-PESA online at the checkout point. The total cost for the items purchased online is deducted from the customers M-PESA account. The customer only needs to key in their mobile number and they will receive a USSD Prompt notification on their mobile phone to validate the transaction using their Bonga PIN.

Getting started

Register a PayBill or BuyGoods number that customers can use to make payments from on your Dibon Account. Also, needed is an API Key generated from your M-Pesa Account.

The above are registered on your Dibon Account Online Check Out section.

Integration

This documentation is intended to guide third party application developers interact with the Dibon Payments platform in an easy way using HTTP Post and JSON.

The API request is made via HTTP POST to

https://api.dibon.co.ke
All parameters below are compulsory. The parameters are:

Parameter Description Example
api_key This should match the api key that you have generated for your Dibon account here 2_aa67677e8bf1d4c8fe886a38c03a860
client_id This should match the id of your account; found on your dashboard 2
command_id Pass this as mpesa_c2b_oc mpesa_c2b_oc
business_shortcode The Paybill number or Till number being paid to and should be registred on the dashboard 123456
phone_number The subscriber's phone number (subscriber making the payment) in E.164 format 0712345678
amount Amount to be settled 200
account_name A unique id passed by the third party system DE45GK45

API Response

The response from the Dibon API will be a JSON object which the client application can process.

Please note that in order to ensure that you do not miss any transaction notifications the instant they come onto our api, you will need to register a call back url that we will invoke whenever we receive a notification for your service transaction. This is done on your Dibon Account Online Check Out Call Back Section.

Every time a transaction status changes, we will forward you the following information as POST variables as outlined below as a JSON object.

The following POST parameters that will be passed will be as follows.

Parameter Description Example
request_id The unique reference number as assigned by the Dibon API Dibon_2_HR8584JDJD
third_party_trans_id The reference number as assigned by the mobile money provider HR8584JDJD
account The Paybill number or Till number being paid to 888555
account_name A unique id passed by the third party system DE45GK45
transaction_time The date and time stamp of the transaction. 2017-05-18 18:23:23
account_balance The Paybill, Buygoods account balance. 3000
phone_number The subscriber's phone number (subscriber making the payment) in E.164 format +254903119111
customer_name The name of the subscriber who made the payment John Rambo
amount The transaction amount 4000

All payment notifications are logged and securely stored for easy access and interrogation through your C2B Payments Record.



Sample API Request
            {
              "api_key":"2_aa67677e8bf1d4c8fe886a38c03a860",
              "client_id":"2",
              "command_id":"mpesa_c2b_oc",
              "phone_number":"0712345678",
              "account_name":"Test",
              "business_shortcode":123456,
              "amount":"10"
            }

            


Sample API Response
            {
              "request_id":"Dibon_2_HR8584JDJD",
              "customer_name":"John Rambo",
              "account":"888555",
              "phone_number":"+254903119111",
              "third_party_trans_id":"HR8584JDJD",
              "amount":"4000",
              "account_name":"DE45GK45",
              "account_balance":"3000",
              "transaction_time":"2017-05-18 18:23:23"
            }