Transaction Finalised Error Codes

When Tola finalises a transaction it will record a status code for why the transaction failed. This will be present in the asynchronous callback, or the Wallet API Event for the Transaction. Use the integer code to decide how to update your merchant application.

CodeMessageMeaning
1unknownOur supplier rejected the operation.
2invalidThe requested operation could not be mapped to our supplier's API. For example when the amount requested is not supported on the supplier API.
3rejectedOur supplier rejected the operation.
4expendviolationOur supplier rejected the operation because a fund transfer limit has been breached.
5insufficientfundsOur supplier rejected the operation due to a lack of funds available in the source account.
6syserrretryOur supplier experienced a system error resulting in the operation failing. A retry of the operation can be safely performed and may result in the operation succeeding. For example if a supplier is experiencing heavy loads and cannot service the request at this moment.
7syserrnoretryOur supplier experienced a system error resulting in the operation failing. The Merchant should check their paybill records before attempting any retry of this operation.
8expiredThis code only applies to Charge (C2B-Push) type transactions. Our supplier has failed to correctly notify us of the result of the operation before an expiry timer has fired. This could be due to a communications error between our supplier and the Tola Wallet Platform. The Merchant should check their paybill records and if necessary credit the user with services to the value of the transaction.
9charge-already-in-progressThe Tola platform prevented the Charge from proceeding because another Charge for the same MSISDN and paybill was recently sent to the Operator and is not yet completed.
10too-oldThe Tola platform has prevented the transaction from proceeding because it has been queued for too long and is no longer considered to be a valid request.
11pin-incorrectOur supplier rejected the Charge because the PIN entered by the consumer was incorrect.
12pin-timeoutOur supplier rejected the Charge because the consumer did not enter a PIN within the permitted timeframe.
13msisdn-invalidOur supplier rejected the transaction because the supplied MSISDN was not valid for the supplier's network.