Response Codes

We have a standard set of response or status codes that are used across all of the Hub APIs.

  • With the Async Payments API, the webhook will share status changes as the transaction is updated.
  • With the Synchronous APIs, transaction results are provided within seconds as a Response to the trans_com call.

Successful response code

If you get a successful response with code MR101, then you know that is the final status and it was successful.

Failure response codes

If you get any ER response then the transaction has failed.

An ER result will never change status; once failed, it remains failed, you should not call get_trans_status for ER results.

A transaction that receives a clear error response (any ER code) is considered failed and will not be reprocessed. Where the sender has already been charged, the partner can safely refund the sender. Where the sender has not been charged, no refund is necessary.

Reaction flow chart

The following flow chart shows you what to do, based on the response codes you get.

641641

What to do based on response codes

Pending response codes

Pending response codes are either MR102 or MR103.

A pending result may occur due to downstream systems being unresponsive. In such cases, a back-office analysis is required to determine the state of the transaction and the appropriate remedy.

❗️

Note:

For pending responses, the partner should NOT refund the sender until the MFS back-office analysis has been completed we have agreed on remedy.

Where a result is not obtained or is ambiguous, the partner may query status by calling get_trans_status.

If you get an inconclusive result (MR102 or MR103) after three attempts then stop calling get_trans_status and consider the result as Inconclusive and log a ticket with our support team via email: [email protected].

Queued response code

The queued response code is MR108.

A queued response will only be received if the partner has elected to enable the queueing of transactions. Transactions will be queued where a temporary event prevents us from executing transactions to the receiving platform. Queued transactions execute (release) automatically once the temporary event has been resolved.

The partner should call get_trans_status to receive the final execution status.

All available response codes

The table below describes the available response codes

CodeMessageDescriptionAction
MR101 SuccessThe transaction has been successfully executed to the destination platform.No further action is required.
MR102 PendingThe transaction has not been executed.Commit transaction by calling trans_com.
MR103PendingThe transaction was not confirmed likely due to response not being received in the expected time from the destination platform. The partner needs to call get_trans_status for an update. If status is still pending, back office analysis is required.Call get trans status.
If status is still pending after 1 hour, contact MFS support.
MR104Log SuccessThe transaction has been logged successfully. Client can proceed to Commit.Commit transaction by calling trans_com.
MR105Cash pick up completeThe voucher cash pick up has been completed.No further action is required.
MR106Cash pick up pending.The voucher cash pick up has not been completedNo further action is required.
MR107Cash pick up cancelledThe voucher for cash pick up has been cancelled.No further action is required.
MR108Transaction queuedThe transaction has been queued for execution.Use get_trans_status to confirm final execution status.
MR109Transaction cancelledThe transaction has been cancelled.No further action is required.
ER101Authentication errorThe partner has provided an invalid corporate code / password.Verify corporate code and password and retry.
ER102Invalid partner codeThe recipient partner code provided is invalid.Verify recipient partner code and retry.
ER103Partner corridor not activeThe attempted corridor is inactive.Contact MFS Support.
ER104Invalid currency codeThe currency code provided is not ISO 4217 compliant.Verify the currency code and retry.
**ER105Invalid amount formatThe transaction amount provided is incorrect.Correct amount (positive number with 2 decimals) and retry.
ER106Invalid MSISDN formatThe MSISDN provided is not passed in ITU-T E.164 GSM DCS 1800 format, e.g. 250700800900.Verify the MSISDN and retry.
ER107Invalid transaction IDThe partner has provided an invalid MFS transaction ID or the MFS transaction ID identified using the Transaction ID of the sending 3P is invalid.Verify the MFS transaction ID and retry.
ER108Subscriber not foundSubscriber not registered on destination platform.Double check the mobile number, and/or inform sending customer that the recipient account cannot be found on the destination platform, thus the transfer cannot proceed.
ER109Subscriber not authorized to receive amountAmount being sent exceeds the limit allowed for the client.Contact recipient before retry, alternatively try smaller amount.
ER110Insufficient fund in merchant accountThe transaction failed due to insufficient funds on the on the E-wallet merchant account to process the transaction.Contact MFS Support
ER111Transaction could not be executedThe requested transaction cannot be executed.Failure on receiving wallet. Refund sender.
ER115Expired transfer proposal.The transaction proposal has expired (more than 24 hours).Submit new log instruction to create new transaction proposal
ER200E-Wallet System errorThe transaction failed due to an error occurring on the E-Wallet platform.Failure on receiving wallet. Refund sender.
ER201MFS System errorThe transaction failed due to an error occurring on the MFS platform.Contact MFS Support.
ER202Blacklist errorThe log failed as the subscriber matched to a blacklist itemContact MFS Support.
ER203Daily Sender Velocity Limit ExceededThe log failed as the request causes the daily velocity limit to be exceeded for the senderRetry next day.
ER204Daily Recipient Velocity Limit ExceededThe log failed as the request causes the daily velocity limit to be exceeded for the recipientRetry next day.
ER205Weekly Sender velocity Limit ExceededThe log failed as the request causes the weekly velocity limit to be exceeded for the senderRetry next day.
ER206Weekly Recipient velocity Limit ExceededThe log failed as the request causes the weekly velocity limit to be exceeded for the recipientRetry next day.
ER207Monthly Sender velocity Limit ExceededThe log failed as the request causes the monthly velocity limit to be exceeded for the senderRetry next day.
ER208Monthly Recipient velocity Limit Exceeded for RecipientThe log failed as the request causes the monthly velocity limit to be exceeded for the recipientRetry next day.
ER209Transaction Max Amount exceededThe log failed as the max transaction amount will be /has been exceeded.Confirm max transaction limit, amend amount and retry.
ER210Invalid voucher codeThe partner has provided an invalid voucher code.Verify the voucher code and retry.
ER211Invalid voucher partnerThe partner has provided an invalid voucher partner.Verify the voucher partner and retry.
ER212Invalid sender addressThe sender address provided is invalid.Confirm address and retry.
ER213Invalid ID numberThe ID number provided is invalid, or no ID number has been provided.Confirm ID number and retry.
ER214Invalid sender nameThe sender name provided is invalid, or no sender name has been provided.Confirm sender name and retry.
ER215Invalid sender surnameThe sender surname provided id invalid or no sender surname has been provided.Confirm sender surname and retry.
ER216Invalid sender date of birthThe sender date of birth provided is invalid.Confirm sender date of birth and retry.

What’s Next