The format is in JSON.
Sample Encrypted payload
"Dab67dc400b3603013ac56d7e548f9f97aeec22739df266fdfbb5e7cb4ebbeecded95a49db6d43f4610e309a0b8f1aeeff521e523045dde1f16dbebab0bb70edb59c320249f074488027ccd08a3b159550ffe2ba91c2b5d63757470ddb8efdf40d17de5aa805b43e676c69f35adb5c548c2120558406c4a15e30a8e20cdafbfdc68872f2210459d92d1d58a7220f87a3ec5515677d7ff54b4389cef935f3afa3b32c0c9078b869a2839843ef5dad4d6921a4c385db551a3e15bed7abe7ddf242efa7683c1cbacaedb3a3581c1d82fbdbd53d37ee26138bb1db2951ebd37e6075a27e0355e918215c680a4e35b658e4be444d39b8a3680d69928cd3fe4e0d6b9868800d973812ccf1d51798018d4c0085c28dd43b2df472c199ff744d6ecbfc5d33b88b08ea1b7c7e09f8354a53c61bf83a9de9cc0c99bfb868843b90bd2f22d64b58f5a3e82d6dd80eb79d804eb36e53aa775ebf592e167ab0ed358847d3c21a5983e146dcd41e5f5c9335ec16b2cc964b36015b3f21cbbb28bbdf25915a0ce9166ba5d737c43a85620a1a0338755f5a"
IVKey and Secret used for encryption
IVKey : "0FJk4uPzoWBjXI+z"
Secret : "hq+fAexgn7hK2edm"
Sample Unencrypted JSON Payload
{
"SourceBankCode": "111",
"SourceBankName": "Stanbic IBTC Bank Plc.",
"InstitutionCode": "111111",
"ChannelCode": "1",
"CustomerName": "JOHN DOE",
"CustomerAccountNumber": "5522113366",
"BillerID": "599CB572-1188-4106-BC75-35A060A28ADF",
"BillerName": "Multi-choice",
"ProductID": "599CB572-1188-4106-BC75-35A060A28ADF",
"ProductName": "DSTV",
"Amount": "0",
"Params": {
"Smart Card Id": "1000000001",
"Subscription" : "Compact Plus"
}
}
Sample Unencrypted Validation payload
This method takes a JSON payload as an input and returns a JSON payload as response.
Sample payload before encryption
{
"SourceBankCode": "567899",
"SourceBankName": "Zenith Bank",
"InstitutionCode": "00123",
"ChannelCode": "2345",
"BillerId": "0BB98A28-F30B-D385-F3BF-39FF3BAB24BA", //Guid
"BillerName": " Test State IRS ",
"ProductID": "C1ACE7B4-8EC0-63F2-7C98-39FF3BA4D42F", //Guid
"ProductName": "Payments Hub For Banks Deposit / USSD Deposit",
"Amount": "0.00", //decimal // amount should be greater than 0
"Params": {
"ClientId": "2345666"
}
}
The sample payload contains a field called “Params” which is an array of key and value containing billers custom field which is to be validated by the biller.
Sample Notification payload
{
"SessionId": "",
"TransactionDate": "",
"TransactionTime": "",
"Amount": 0, //decimal
"ChannelCode": "",
"BankName": "",
"BranchName": "",
"BillerName": "Bet9ja",
"Params": {
"ClientId": "28473D7A-DAEE-4E0E-0455-08D9F7D7EDED",
"BillerID": "3291BFB6-F812-4D74-9E71-9770D0817F68",
"CustomerAccountNumber": "1234567890"
}
}
Sample response payload
{
"Message": "",
"HasError" false, //bool
"Amount": 7899 //decimal
"Params": {
"name": "Umar Kingsley",
"Phone": "08098998780"
}
"ErrorMessages": []
}
Note: ErrorMessages is an array of string which contain error(s) if any
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article