API Reference
Reports
API REFERENCE
Reports
Transaction and wallet history, 30 records per page.
Get Transactions History
Get your transactions in a date range, 30 per page.
POST/reportshistory@getTransactionsHistory
Request Body
FieldTypeRequiredDescription
paramsobjectYesParameters for the operation. Send
{} if there are none.start_datestringYes
YYYY-MM-DDend_datestringYes
YYYY-MM-DDpageintegerNoPage number
Request Body Example
json
{
"jsonrpc": "2.0",
"method": "history@getTransactionsHistory",
"params": {
"start_date": "2026-10-01",
"end_date": "2026-10-12",
"page": 1
},
"id": "1"
}JSON-RPC response
Response Fields
FieldTypeDescription
resultobjectOperation result
result.transactionsobjectPaginated transaction list
result.current_pageintegerPage returned
result.pagesintegerTotal pages
The bearer token is missing, invalid or expired. The response is plain JSON with HTTP
401, not a JSON-RPC envelope. Log in again and retry once.
Response Fields
FieldTypeDescription
statusstringAlways
401.messagestringError message
Example Response
json
{
"status": 401,
"message": "Failed, Not authorized"
}Get Wallet History
Get your top-ups, ledger movements and running balances for a date range, per currency (USD and KES). Results are 30 per page.
POST/reportshistory@getWalletHistory
Request Body
FieldTypeRequiredDescription
paramsobjectYesParameters for the operation. Send
{} if there are none.start_datestringYes
YYYY-MM-DDend_datestringYes
YYYY-MM-DDpageintegerNoPage number
Request Body Example
json
{
"jsonrpc": "2.0",
"method": "history@getWalletHistory",
"params": {
"start_date": "2026-10-01",
"end_date": "2026-10-12"
},
"id": "1"
}JSON-RPC response
Response Fields
FieldTypeDescription
resultobjectOperation result
result.top_upsobjectTop-ups, per currency
result.top_ups.USDarray<object>USD records
result.top_ups.KESarray<object>KES records
result.transactionsobjectTransactions, per currency
result.transactions.USDarray<object>USD records
result.transactions.KESarray<object>KES records
result.running_balancesobjectRunning balance, per currency
result.running_balances.USDnumberUSD balance
result.running_balances.KESnumberKES balance
result.current_pageintegerPage returned
result.pagesintegerTotal pages
Example Response
json
{
"jsonrpc": "2.0",
"result": {
"top_ups": {
"USD": [],
"KES": []
},
"transactions": {
"USD": [],
"KES": []
},
"running_balances": {
"USD": 0,
"KES": 1250000
},
"current_page": 1,
"pages": 1
},
"id": "1"
}The bearer token is missing, invalid or expired. The response is plain JSON with HTTP
401, not a JSON-RPC envelope. Log in again and retry once.
Response Fields
FieldTypeDescription
statusstringAlways
401.messagestringError message
Example Response
json
{
"status": 401,
"message": "Failed, Not authorized"
}