Skip to main content

Paybill Payment API

This API allows a company to create a new spending transaction using Paybill (business) information.

Endpoint

POST /api/sandbox/v1/paybill

Base URL

https://api.kiotapay.co

Request Headers

KeyValueRequiredDescription
Content-Typeapplication/jsonSpecifies that the request body is in JSON format.
AuthorizationBearer <your-token>API authentication token. Replace <your-token> with a valid JWT.

Request Body

The body must contain the following fields:
{
  "businessNumber": "2232334",
  "accountNumber": "22442244",
  "amount": 1000,
  "remarks": "Here are the remarks",
  "occasion": "Here is the occasion",
  "callbackUrl": "https://kiotapay.co.ke",
"referenceId":"1234"
}
Explanation
FieldTypeDescription
businessNumberStringThe Paybill number associated with the receiver.
accountNumberStringThe account number associated with the receipient’s paybill
amountNumberThe amount to be transacted in the Kenyan Shillings currency.
remarksStringAdditional information about the transaction.
occasionStringA description or purpose for the transaction.
callbackUrlStringA valid POST URL where payment confirmation will be sent.
referenceIdStringThis is an optional field that represents the request ID from your system. It can be used to query the transaction, as it maps to the identifier used in your system.
Sample Response Body
{
    "status": 201,
    "message": "Success",
    "data": {
        "requestId": "8fa1fab3-a1d6-41fd-9199-d5517efc0d41",
        "accountNumber": "22442244",
        "businessNumber": "2232334",
        "amount": 1000.0,
        "status": "PENDING"
    }
}
Sample Callback Body
{
  "accountNumber": "1234567890",
  "businessNumber": "9876543210",
  "requestId": "d290f1ee-6c54-4b01-90e6-d701748f0851",
  "amount": 1500.75,
  "status": "SUCCESS" // SUCCESS, FAILED, PENDING
}