Skip to main content

Failure Codes

When a transaction fails, Nium returns the relevant ISO return code to let you know.

The International Organization for Standardization (ISO) standardizes messages sent to clients in the event of transaction failures. This standard ensures consistency across currencies, countries, and payout methods. For return codes, Nium specifically uses ISO 20022.

Standardized return codes simplify your integration by reducing the need to translate multiple financial codes and messages.

ISO 20022, a globally recognized standard, also allows clients to pass return codes to end customers. In turn, clients can configure their integration to return Nium’s descriptions and recommended actions in transaction responses.

Returning Nium's descriptions and recommended actions saves time and improves usability by immediately informing users why a transaction failed and how to fix it.

ISO terms

The following terms commonly appear in ISO definitions and return codes used throughout Nium’s transaction failure messages.

TermDescription
CreditorThe beneficiary of the transaction — the person or entity receiving the funds.
DebtorThe remitter or sender — the person or entity sending the funds.
Dormant AccountAn account that has been inactive for a specific period.
Identification CodeA unique number used to identify an account, customer, or institution.
End CustomerThe beneficiary who ultimately receives the funds.
Clearing SystemA financial network that processes, reconciles, and settles transactions between financial institutions.
Remittance InformationDetails about a transaction, such as purpose, amount, and parties involved.

Return codes

The table below lists common ISO 20022 return codes along with Nium's recommended actions.

For more information on the different ISO 20022 codes, see ISO 2022.

ISO CodeISO DefinitionDescriptionRecommended Action
AB05TimeoutCreditorAgentTransaction timed out at the creditor's bank.Temporary issue - Check your wallet for a refund. If refunded, reinitiate the transaction.
AB08OfflineCreditorAgentThe creditor's bank is offline.Temporary issue - Nium couldn’t connect to the beneficiary's bank. Check your wallet for a refund. If refunded, reinitiate the transaction.
AC01IncorrectAccountNumberThe beneficiary's account number format is invalid.Confirm the correct beneficiary.accountNumber with the beneficiary.
Use Nium Verify to validate account details before adding a beneficiary or creating a payout.
AC03InvalidCreditorAccountNumberThe beneficiary's account number is invalid or missing.Confirm the correct beneficiary.accountNumber with the beneficiary.
Use Nium Verify to validate account details before adding a beneficiary or creating a payout.
AC04ClosedAccountNumberThe beneficiary's account is closed.Ask the beneficiary for updated account details.
AC06BlockedAccountThe beneficiary's account is blocked, dormant, or inactive.Request updated account details from the beneficiary.
AC08InvalidBranchCodeThe branch code is invalid or missing.Confirm the routing code is correct.
Use the Search Routing Code request. If valid but unsupported, contact Nium support.
AC09InvalidAccountCurrencyThe account doesn’t support the quoted currency.Confirm with the beneficiary which currencies the account supports.
Use the Nium Playbook or Fetch Supported Corridors request to check:
  1. If Nium supports the currency.
  2. Available payout methods for the beneficiary's country and currency.
AC12InvalidAccountTypeThe beneficiary’s account type is invalid.beneficiary.accountType is not supported for the selected payout method.
AC13InvalidDebtorAccountTypeThe sender’s account type is missing or invalid.The remitter.accountType is not supported for the selected payout method.
AG01TransactionForbiddenThe transaction is prohibited due to regulatory restrictions.Ask the beneficiary for an alternative bank account or payout method.
AG03TransactionNotSupportedThe transaction type is not supported on the beneficiary's account.Ask the beneficiary for an alternative bank account or payout method.
AM09WrongAmountThe received amount differs from the expected amount.Reinitiate the transaction with the correct amount.
AM13AmountExceedsClearingSystemLimitThe transaction amount exceeds clearing system limits.Reinitiate the transaction with a lower amount.
AM21LimitExceededThe transaction amount exceeds the allowed limit.Use the Nium Playbook or Fetch Supported Corridors request to check per-user payout limits.
If within limits, ask the beneficiary to check with their bank for any additional restrictions.
BE07MissingDebtorAddressThe sender’s address is missing or incorrect.Retry the transaction and include all required address details.
Use the Nium Playbook or Fetch Supported Corridors request to confirm what fields are required.
BE10InvalidDebtorCountryThe sender’s country code is missing or invalid.Ensure remitter.countryCode or originatingFICountry (for on-behalf payouts) is valid. Retry with correct details.
BE11InvalidCreditorCountryThe beneficiary’s country code is missing or invalid.Ensure beneficiary.countryCode is valid.
Update the beneficiary details and retry the transaction.
BE16InvalidDebtorIdentificationCodeThe sender’s identification number is missing or invalid.Retry using the correct remitter.identificationNumber format.
BE17InvalidCreditorIdentificationCodeThe beneficiary’s identification code is missing or invalid.Ask the beneficiary for a correct beneficiaryIdentificationValue.
BE18InvalidContactDetailsThe beneficiary’s contact details are missing or invalid.Ensure beneficiaryEmail, beneficiaryContactNumber, or beneficiaryContactName are valid.
Update the beneficiary details and retry the transaction.
DS04OrderRejectedThe bank rejected the order.Ask the beneficiary to contact their bank. If rejected in error, retry the transfer
DUPLDuplicatePaymentDuplicate of a previous payment.If intentional, retry the transfer.
FF06InvalidCategoryPurposeCodeThe category purpose code is missing or invalid.purposeCode is unsupported for this payout. Try a different payoutMethod.
FF07InvalidPurposeThe transaction purpose is missing or invalid.purposeCode is unsupported for this payout method. Try a different payoutMethod.
FF10BankSystemProcessingErrorBank system error prevented transaction processing.Temporary issue – Retry the transfer. Nium automatically retries transactions before returning this error.
FOCRFollowingCancellationRequestTransaction returned as requested.You requested the return of this transaction.
MD06RefundRequestByEndCustomerThe end customer requested a refund.Contact the beneficiary to confirm the refund reason.
MD07EndCustomerDeceasedThe end customer is deceased.Return the funds to the original sender.
MS03NotSpecifiedReasonAgentGeneratedNo return reason provided by the bank.Provided when data protection laws restrict specific return codes.
MS18MissingRelatedRemittanceInformationRequired transaction details are missing.Confirm all required fields and retry the transaction.
NARRNarrativeReturn reason provided in transaction response.Check the transaction response for details.
NOCMNotCompliantThe beneficiary's account doesn’t meet regulatory requirements (e.g., FICA).Return the funds to the original sender
RC02InvalidBankIdentifierThe routing code is missing or invalid.Verify the routing code.
Use the Search Routing Code request.
If valid but unsupported, contact Nium support.
RR04Regulatory ReasonThe transaction failed due to regulatory restrictions.Return the funds to the original sender
RC01BankIdentifierIncorrectThe bank identifier code format is invalid.Verify the routing code.
Use the Search Routing Code​ request. If valid but unsupported, contact Nium support.