Token Request to generate a new token.serviceId: This is a number that represents the different services available. Check the table Services for the list of service IdsaccountNumber: Account number reference for pay bill transactions.msisdn: This is the mobile number of the customer doing the paymenttransactionDesc: This is a brief description of the payment.originatorConversationId: This is a unique identifier for each transaction.amount: This is the bill amount to be paid.customerNames: This is the customer who is making the bill payment.countryCode: This is the country type of the bill, e.g. KE, UScurrencyCode: This is the currency type of the bill, e.g KSH, USDsaveBillerNumber: This is a boolean that is set to save the payer's mobile number.callBackUrl: This is your callback url.| Field Name | Data Type | Options |
|---|---|---|
serviceId | integer | Mandatory for all Transaction Types |
accountNumber | string | Mandatory for all Transaction Types |
msisdn | string | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
transactionDesc | string | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
originatorConversationId | string | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
amount | integer | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
customerNames | string | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
countryCode | string | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
currencyCode | string | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
saveBillerNumber | boolean | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
callBackUrl | string | Optional for Transaction Type 1 (Query Bill), 3 (Validate Account). Mandatory for Transaction Type 2 (Post Payment) |
{
"message": {
"appDomainName": "LIVE",
"remarks": "Bill Payment submission accepted",
"originatorConversationId": "J88TYG1SB3MAN64GYOQU",
"systemConversationId": "7f520000-0e89-0ee0-e237-08d992be8d55",
"timestamp": "2021-10-19T05:08:56.4798511Z",
"dueDate": "-1",
"dueAmount": -1.0,
"currency": "KES",
"customerName": "",
"active": "Unknown",
"statusCode": -1,
"statusDescription": "Bill Payment submission accepted"
}
}
{
"message": {
"appDomainName": "LIVE",
"remarks": "Bill Number balance query accepted",
"originatorConversationId": "1af029e3-9a30-ec11-aad2-d7eb2584c33e",
"systemConversationId": "7f520000-0e89-0ee0-17e4-08d992bec7f3",
"timestamp": "2021-10-19T05:10:38.9604099Z",
"dueDate": "2021-10-26 00:00:00",
"dueAmount": 1074.0,
"currency": "KES",
"customerName": "JOSEPH GITHITHU",
"active": "Valid",
"statusCode": 0,
"statusDescription": "Bill information is available"
}
}
{
"message": {
"appDomainName": "LIVE",
"remarks": "Bill Number account validation accepted",
"originatorConversationId": "03046410-3b30-ec11-aad1-f8a031fd7c22",
"systemConversationId": "7f520000-0e89-0ee0-38a7-08d9925ef530",
"timestamp": "2021-10-18T17:44:42.7210436Z",
"dueDate": null,
"dueAmount": 0.0,
"currency": null,
"customerName": "Githithu ",
"active": "Valid",
"statusCode": 0,
"statusDescription": "Account number provided is valid"
}
}
{
"OriginatorConversationId": "2EJZQA1TOEO8KIYF28UB",
"SystemConversationId": "7f520000-0e89-0ee0-412f-08d992551076",
"StatusCode": 0,
"StatusDescription": "Transaction acknowledged successfully",
"ReceiptNumber": "59993790",
"ReceiverNarration": "Payment accepted successfuly",
"CustomerName": "Githithu ",
"CustomerNames": "Otis Payer's Name",
"ResponseExtraData": null
}
curl --location --request POST 'https://auth.zamupay.com/v1/bill-payments' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"serviceCode": "string",
"accountNumber": "string",
"transactionType": 0,
"transactionDesc": "string",
"originatorConversationId": "string",
"msisdn": "string",
"narration": "string",
"amount": 0,
"customerNames": "string",
"countryCode": "string",
"currencyCode": "string",
"saveBillerNumber": true,
"callBackUrl": "http://example.com"
}'{}