API Reference
Request for Transfer
POST /trans/v2/applyForTransfer
<Use this endpoint to request for small transfers (Mpesa Mobile Money Transfer / Airtel Mobile Money Transfer / Pesalink Transfer / Choice Internal Transfer)>
Parameters
payerAccountId
string
The ID of the account that is to make the transfer
TRUE
payeeBankCode
string
The bank code of the receiving bank
Use /staticData/getBankCodes endpoint to get the list of bank codes
TRUE
payeeAccountId
string
The number of the receiving account
TRUE
payeeAccountName
string
The name of the receiving account
This is mandatory when counterparty is a bank. When counterpaty is M-PESA/AIRTEL, it's optional.
FALSE
currency
string
Transfer currency (Supports KES, USD, GBP, EUR, TZS, UGX, RWF)
TRUE
amount
decimal
Transfer amount
TRUE
remark
string
The message to beneficiary. Not more than 100 characters. For transfers to Airtel Money, remark should not have any special characters and should be alphanumeric and max length is 64 characters.
FALSE
payeeMobileForNotification
string
Specify beneficiary's mobile number here and the bank will send SMS notification to inform him/her about the inbound.
FALSE
Response
{
"txId": ""
}Query Transaction List
POST /query/getTransList
Query the transaction records of an account.
This interface returns the transaction records page by page. Your program can assign the page number and the page size (how many records contains in a page) according to your need. If you want to get the transaction records in a call, just enlarge the page size. For example, pageNo=1 and pageSize = 50.
userId
string
User ID in your system, a unique string to indentify a certain end user.
FALSE
accountId
string
Account ID
TRUE
txType
array of string
Transaction type filter. Please refer to the transaction type definition. If you want to get all type of the transaction record, just input blank array, i.e. [].
TRUE
txStatus
array of string
Transaction status filter. Please refer to the transaction type definition. Example: [2, 8] - Get all processing and succeed transaction records.
TRUE
startTime
long
UTC timestamp in millisecond of the start time of the queried period.
TRUE
endTime
long
UTC timestamp in millisecond of the end time of the queried period.
TRUE
pageNo
int
Assign the page number.
TRUE
pageSize
int
Assign how many records to be returned per page.
TRUE
orderByDesc
int
Parameter to indicate how to sort the returns records. 1 - Sorting the records by transaction date in reversing order. 0 - Sorting the records by transaction date in positive order.
TRUE
Response
Query Transaction Details
POST /query/getTransResult
<Use this endpoint to query the details of a transaction>
Parameters
txId
string
The ID of the transaction
TRUE
Response
Last updated