Common ACH Return Codes and How to Avoid Them

When sending electronic, bank-to-bank transfers in the United States., you are always using the ACH network. While this network is fast, secure, and efficient, it can sometimes experience small issues. But don’t worry, these issues are usually resolvable and are actually put in place to protect you.

When experiencing an issue with an ACH payment processing, you’ll most likely receive a return reason code. Since these return codes can be a hassle, and most people do not like dealing with money issues, it is of your best interest to resolve ACH return codes as soon as possible.

The following article will help you understand ACH transfers, Common ACH return codes, and how to avoid them!

ACH Payment

An ACH transfer refers to bank-to-bank money transfers that occur through the Automated Clearing House (ACH) as operated by the National Automated Clearing House Association (NACHA). NACHA is the national ACH administrator for the U.S., and in 2019 they facilitated the transfer of $55.8 trillion.

An ACH transfer is used whenever money is moved via direct debit or credit from, or to, a bank account. An ACH transfer is either an ACH debit or an ACH credit. An ACH debit will allow an originator to debit money (withdraw) from another bank account and deposit that money into the originator’s bank account. A similar process occurs for an ACH credit, but instead, the money is deposited into (credited) into an account.

All ACH transfers exist within the U.S. and operate in USD under FDIC regulation. Therefore, the ACH network, or the Clearing House and the Federal Reserve, oversee all transactions and verify that each transaction is completed under NACHA rules and in accordance with compliance regulations.

What Are ACH Return Codes?

When sending any ACH transfer, there is the possibility of an error. Errors will pop up in the form of a return code. An ACH return code is a specific, three-character code that denotes the error event.

Think of ACH return codes as a form of status for the return as looking up the return code intention will tell you exactly what went wrong with the transaction. They are also the electronic form of an RCK entry or a Re-Presentation Check Entry form on a bounce check entry.

A return code usually suggests that there is a problem when sending the ACH transaction. Each return code expects a unique resolution. Therefore, there is no one ‘one size fits all’ approach to resolving ACH returns.

Often a return code might represent that the data in the entry request was inaccurate, but other times it might suggest that there are no funds in the account that is to be debited, that the account is compromised, among others.

Reasons to Avoid ACH Return Codes

If you experience an ACH return code when trying to submit any kind of ACH transfer, then it suggests that a fatal error has occurred in processing that transaction. This is most likely due to the many checks that exist when processing ACH payments. These checks act as a kind of safeguard to protect both the receiving and the originating parties. However, receiving a return code ultimately suggests that there is a financial issue that needs to be addressed.

While receiving a return code does not usually suggest that something horrible has gone wrong with the business relationship, it is always a little awkward when you have to follow up with either the bank or the recipient party in order to resolve this issue.

Avoiding return codes when processing ACH payments will facilitate happier, healthier, and seamless financial transactions and leave both parties content with the transaction.

No one likes to go back and negotiate money issues. Therefore, take it upon yourself to ensure that the ACH transaction is easy to understand and follows all of the NACHA guidelines. If you are using a payment gateway API, like Sila’s API, then make sure you hop into the sandbox to test out all the bugs.

The more hassle it takes to send money, then the less likely it is that that transaction will occur. People can get frustrated with tasks that take longer than expected, and they also feel that it is not their job to facilitate this process.

All in all, avoiding return codes will minimize the number of consumers who leave or refuse to use the ACH transaction client against due to poor design.

How to Avoid Return Codes

Of course, with any complex system, avoiding errors is difficult. However, with the right set of tools, you can seek to minimize and nearly avoid all return code errors. Here are common reasons for why return codes pop up:

  1. The routing number, account number, and transit number is entered incorrectly for either the recipient or the originator
  2. The account is not set up to receive the type of transaction being processed
  3. The transaction did not follow NACHA guidelines
  4. There are not sufficient funds in the appropriate account.

Life gets busy, so it can be easy to rush through inputting all the bank account information. This type of thing is understandable. However, what can become a problem is if this issue is not rectifiable, or if the issue occurred due to unclear information.

If you are using the Sila API, then it is easy to go through the Developer’s Console to test out the bugs for your API.

Common things to test include:

  • Enjoyable user experience (UX): Is the user able to enjoy the process of using the API, submitting the appropriate information, and completing the transaction.
  • Clear user interface (UI): In addition to having a healthy, positive aesthetic, the user should understand what they need to do to appropriately interact with the API. Is the user able to clearly understand what the forms stand for?
  • Stating the ACH Rules: Since there are clear rules for the NACHA guidelines, then these should be presented to the user. They may either alleviate frustration (if the user is not prepared for the timelines, for example) or improve UX.
  • Minimize run times: If the program/API takes a long time in order to submit a transaction, then it is likely that a user will abandon the process. This may lead to return codes, but it also suggests a larger problem in that consumers will not return to the platform.

Common ACH Return Codes

NACHA has standardized hundreds of codes related to financial returns. These codes are used throughout the U.S. (and each financial institution that operates using USD and the ACH network), so that there is no confusion when interpreting these codes.

To figure out how to resolve more ACH return codes, head over to our ACH return code list for suggestions.

Here are the most common return codes that you’ll expect to see, listed in numerical order:

ACH Return Code R01 – Insufficient funds

The current cash reserve balance is not sufficient to cover the value of the debit entry. To resolve this return code, the bank account that is issued to be insufficient could be lacking funds. Deposit the appropriate amount of funds. The transaction can be attempted two more times within 180 days of the original authorization date.

ACH Return Code R02 – Account Closed

The account in question was previously active but has been closed due to the action of the receiving depository financial institution (RDFI) or the consumer. Contact the consumer to obtain different consumer account information. You could also potentially withhold providing the goods or services that were agreed upon until payment has been settled.

ACH Return Code R03 – No Account/Unable to Locate Account

The account number structure (format) is valid and it passes a digital validation check. However, the account number does not correspond with the individual identified in the return entry. Or, the account number is not designated as an open account. To resolve this, you’ll need to contact the consumer to confirm the consumer account number, routing number, transit name, and the name on the bank account. If the new information provided does not match the original entry, make the changes, and submit a new request.

ACH Return Code R04 – Invalid Account Number

The account number structure is not valid and the entry may either contain an incorrect number of digits or fail the check digital validation. To resolve this, contact the customer to obtain the correct bank account number. Then, submit another request with the corrected bank account number.