ACH Return Codes

18 min. readlast update: 10.16.2025

The ACH Process

 

The process for ACH payments is:

    • Your business sends an ACH payment request to a customer
    • On the back end, the request is tied to the SEC code(s) on your account.
      • Your SEC code is a three-letter code that allows the banks to identify the purpose of your transaction quickly
    • Your request and accompanying SEC code go to your customer’s bank using a NACHA file over the ACH network.
    • They initially fund the money you requested, expecting your customer’s bank account will replenish the money paid out to you based on the payment agreement between you and your customer.
    • If the customer’s bank account cannot replenish the funds for any reason, the amount funded to you will come back out of your bank account.
      • Most commonly, this happens within a few days, but it can happen up to 60 days after the initial request depending on the reason code.
    • You will receive notification of an ACH rejection.
      • This notification will include one of 85 potential return codes.

NOTE: There is a $25.00 fee associated with an ACH reject. This is charged to you (the merchant) when the reject/return occurs. 


 

Terms:


ACH 

ACH stands for Automated Clearing Housewhich is centralized financial network in the U.S. that facilitates electronic money transfers between banks and credit unions.


NACHA
  • Nacha is a non-profit association that oversees the Automated Clearing House network, facilitating electronic financial transactions between U.S. bank accounts.
  • Previously known as the National Automated Clearinghouse Association, Nacha is a non-profit association that is funded by the financial institutions that use its network.
  • Nacha is the steward of the electronic system that connects all U.S. bank accounts and facilitates the movement of money among them. 

ODFI

The acronym ODFI stands for Originating Depository Financial Institution, defining its function as the starting point of a payment.

    • It is recognized as the “sender’s bank” or the “initiator’s bank.”

RDFI

RDFI stands for Receiving Depository Financial Institution.

    • This term identifies the financial institution, such as a bank or credit union, that receives an electronic payment on behalf of its customer.
    • Essentially, the RDFI is the endpoint for funds in an electronic transaction, where the money is deposited into the intended recipient’s account.

 

Locating the Reject/Return Code:

When a ACH payment fails to process it can be for a variety of different reasons.

    • The error will display in red on the invoice, or you can go to Reports- Payment Errors to see what payments have come back with errors. 

 

Under the "Error Details" column will be a long red message.

    • We want to pay attention to the Payment Status portion. 


 

Return Codes:

There are currently 85 distinct ACH return codes. The most common of which are:


R01- Insufficient Funds

The R01 ACH return code simply means that the bank account you requested payment from didn’t have the funds necessary to cover the payment.

    • When the reason code comes up, the terminal may also read, “insufficient funds.”

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

You can try to fix ACH return code R01, a few different ways:

    • Attempt the payment again. Before attempting the bank account a second time, it’s advisable to contact your customer and let them know about the issue. They can advise whether or not it’s safe to proceed based on the amount of money held in their account, or top up the balance to ensure that payment is collected successfully.
    • Get an alternative payment method. In the event that an ACH payment no longer seems viable, request an alternative form of payment.
    • Dispute the returned transaction. In very limited circumstances, you may be able to dispute the returned ACH transaction with OFDI.

R02- Account Closed

If you come across an R02 ACH return code on your screen, this means the account you’re trying to reach has been closed.

    • Return code R02 means that while the client or customer had the account you’re trying to reach at one time, that account has since closed.
    • This means you can no longer use it to collect payments.

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

    • Resolving an R02 return code is not complicated. 
    • First, try contacting the customer directly and requesting that they update their account information.
    • Their contact details should be somewhere in their account.
    • If the payment still does not go through, you may need to do some more digging.

R03- No Account / Unable to Locate Account

ACH return code R03 means the account number or routing number attached to the payment does not match the customer’s name.

    • Return code R03 could also mean the account number provided by the customer does not exist.
    •  In most cases, R03 is the result of a simple typo.
    • Therefore, it’s important to pay close attention when entering ACH payment information and double-check the numbers provided before submitting the transfer.

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

    • As a merchant, you should carefully check the ACH payment’s routing number, account number, and customer name to ensure they are correct.
    • If the information appears right, the next step is to contact the customer to verify the information on their end.
    • You may also ask the customer to provide a voided check to confirm the information.
    • Once you have the correct information, you can submit a new ACH payment with the updated customer data.
    • If a customer cannot provide a voided check, they can request a letter from their bank or another official document showing proof of the details they need.

R04- Invalid Account Number Structure

Return code R04 indicates that there is an error with the account number.

    • This could mean that there are incorrect digits within the account number or that the account number did not pass digital validation.
    • This means the receiving bank was unable to find an account number matching the one provided for the transfer.

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

    • An R04 ACH return code may be the result of a simple typo in the bank account number.
    • It may also mean that the wrong bank account type was selected.
    • As a merchant, double-check the account number and account type to verify they’re correct.
    • You can also run the payment again, making sure to input the account and routing numbers correctly.
    • Once the correct bank account number and routing numbers are verified, you can submit a new ACH payment with that information.

R05- Unauthorized Consumer Debit using Corporate SEC Code

ACH return code R05 means that the transaction could not process because your customer’s bank account is a personal bank account.

    • The R05 return code is a fancy way of saying that the bank account on file for your customer is not a corporate or business bank account, and your business is set up to accept B2B payments only.
    • Essentially, there was a mismatch between the payment request you sent (i.e., the SEC code), and the bank account you requested from.
    • SEC codes are an important part of the ACH process

Account Type- Consumer 

Time Frame- 60 Calendar Days

To fix:

    • Communicate with your payment processor. If you believe the R05 ACH return code was invalid because of an improper SEC code, talk to your processor about your account. They can advise you on whether it’s appropriate to change your SEC code or not.
    • Communicate with your customer. Maybe your customer accidentally put the incorrect bank account on file with your business (i.e., gave you their personal instead of their business bank account). Double-check their bank information and attempt the transaction with the correct account.
    • File an appeal. Contact NACHA, your payment processor, or business bank to see if an appeal is appropriate in your situation.
    • Collect using another form of payment. If all else fails, collect the amount using an alternative payment method (such as cash or credit card) to rectify an R05 ACH return code error.

R06- ODFI Requested Return

Return code R06 means the Originating Depository Financial Institution (ODFI) has requested the Receiving Depository Financial Institution (RDFI) to return the ACH payment.

    • If the RDFI agrees to the return, then the ODFI must oblige.
    • The ODFI may be the customer’s (or business’s) bank.
    • It may also be a third-party processor used to generate ACH transactions.

Account Type- Consumer or Non-Consumer

Time Frame- Undefined

To fix:

    • To resolve return code 06, you as a merchant should contact the ODFI for additional information.
    • Only they can tell you why they asked for a return. You may also contact your payment processor for further information.
    • You should also suspend any current or scheduled payments to the account in question until you resolve the issue.
    • Failing to suspend any future transactions will result in more returned payments.
    • The expected return time for an R06 ACH return code is typically around sixty calendar days.

R07- Customer Revoked Authorization

Return code R07 surfaces when the customer who originally authorized the ACH payment has now revoked their authorization.

    • The ACH requires authorization from the transferrer to follow through with the payment.
    • In the case of ACH return code R07, the customer and merchant must first address the issue.

Account Type- Consumer 

Time Frame- 60 Calendar Days

To fix:

    • Suspend any scheduled recurring payments with the customer or bank account in question. Halt any potential transactions to keep those transfers from being returned while you address the problem.
    • Contact the customer and confirm they revoked their payment authorization, and ask why they revoked the authorization.
    • After settling the dispute, the customer can reinstate authorization, use an ulterior account, or an entirely different form of payment.

R08- Payment Stopped

ACH return code R08 means “payment stopped.”

    • A stopped payment indicates that, for one reason or another, a customer has decided the purchase cannot move forward.

Account Type-Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

 There are a few steps that you can take to understand the issue and resolve it:

    • Contact the customer –
      • was there an issue with the product/service?
      • Was there a financial event that caused them to simply not want to use the card made in the initial purchase?
      • Find out exactly what the root issue is.
    • You can issue the customer a return instead or they can authorize using another card to re-enter the payment.
      •  It is important to note that the same bank account cannot be used if the customer wishes to continue with a future transaction (instances of recurring payments for example).
      • If the same account is used, you will be issued a fine.
      • Make sure to delete the original account information and update it with new account information as soon as possible.
    • If the customer wants to dispute this payment because they did not authorize it, a claim will be made and the RDFI will investigate the matter.

R09- Uncollected Funds

This return code, in simplest terms, tells a business that an account does not have sufficient funds to handle an account’s total debt obligations. 

Account Type-Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

    • When it comes to R09 return code transactions, you might say “patience is a virtue.”
    • If you receive this type of code, the funds in the account will not cover the purchase amount.
    • Therefore, you may have to wait a few weeks before resubmitting payment.

R10- Originator not known and/or not authorized to Debit Receiver’s Account

An R10 ACH return code tells you that the receiver has not sanctioned the originator to debit the ACH account.

    • Further, a return code R10 may reveal that the signature on ARC* and BOC** entries is not authentic or unauthorized.

Account Type-Consumer; Non-Consumer for ARC, BOC, IAT, or POP.

Time Frame- 60 Calendar Days

To fix:

    • If you receive an ACH return code R10, stop future recurring payments and contact the customer about the failed transaction.
    • Consult the customer as to why the payment did not go through.
    • Doing so is the best way to resolve an ACH return code R10 complaint.

R16- Account Frozen / Returned per OFAC

ACH Return Code R16, also known as "Account Frozen," is a standard code used in Automated Clearing House (ACH) transactions.

    • It indicates that the account involved in the transaction has been frozen, preventing any debits or credits from being processed.
    • Freezes can be placed on bank accounts for a variety of reasons, including fraud or suspected fraud, legal orders, or account maintenance issues.

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

    • If you encounter R16, the first course of action is to reach out to your customer to see if the account has since been unfrozen or to have them provide you with alternate payment information to process the transaction.
    • You can also reach out to the financial institution to inquire about why the freeze was placed on the account.

R20- Non-Transaction Account

ACH Return Code R20, also known as "Non-Transaction Account," is a standard code used in Automated Clearing House (ACH) transactions.

    • It indicates that the entry in the ACH file is being rejected because the receiving account is not a transaction account.
    • Non-transaction accounts are typically accounts that do not allow electronic transactions, such as savings accounts or accounts with restrictions on electronic debits or credits.

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

    • If you encounter R20, the best course of action is to contact your customer to obtain information for a different account that you can charge or to request a different form of payment.

R29- Not Authorized by Corporate Customer

If you receive ACH return code R29, it means the account holder notified the RDFI that the originator of the transaction is not authorized to debit their account.

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

To fix:

    • If you receive ACH return code R29, immediately stop any recurring payments from that customer’s bank account.
    • Doing so prevents more returned transactions while you try to resolve the first return.
    • The next step is to speak with your customer about what caused them to trigger this dispute or cancellation.
    • Alternatively, you may simply ask your customer for another form of payment.


Restricting/Removing Rejected Payment Method:

When a ACH rejects we have a couple settings that can be enabled to address the rejected/returned payment method automatically. 

    • These are found in the settings menu, payment processors under Void, Card Chargeback, and ACH/EFT Return Actions.

Manually delete/change payment method:

To manually delete a payment method or switch to another payment method approved by the customer, simply access the customer and click edit customer in the top right. 

    • In the edit customer section under payment details you will see the option to delete the payment method. 

    • To switch any linked transactions to a new payment method, on the correct payment method select apply to all. 
    • To change the payment method on just the recurring invoice/recurring payment and not all of the customers transactions see the options beleow.

    •  If the customer has different payment methods for seperate types of transactions and does not want to switch them all, access the recurring invoice/recurring payment needing to be changed. 
    • We also have recording automations to make sure the reject/return is recorded properly.

Edit Recurring Invoice:

Open the recurring invoice needing to be updated. 

    • On the right in the light blue section locate the payment method being used.
    • Select the drop down to display all payment methods saved for the customer. 

    • Once the new payment method has been added remember to save the recurring invoice. 
    • If the current invoice has already generated with the failed payment, access the invoice, select optoins in the top right, then process payment and make sure to select the correct payment method. 

Edit Recurring Payment:

To edit a recurring payment open the recurring payment to be updated. 

    • Then select the drop down change to the correct payment method. 

    • Once the change has been made, remember to save the recurring payment. 

Recording Automations:

We also have automations to record the return, check out our NSF/Chargeback articles:


 

Other Return Codes:

The other return codes, which are less common, include:


R11- Customer advises not within Authorization Terms

Account Type- Consumer; Non-Consumer for ARC, BOC, POP, and IAT

Time Frame- 60 Calendar Days


R12- Account Sold to Another DFI

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days


R13- Invalid ACH Routing No.

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R14- Representative Payee Deceased

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days


R15- Beneficiary / Account Holder Deceased

Account Type- Consumer 

Time Frame- 2 Banking Days


R17- File Record Edit Criteria / Suspicious Entry with Invalid Account No. / Return of Improperly-Initiated Reversal

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days


R18- Improper Effective Date

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R19- Amount Field Error

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R21- Invalid Company ID

Account Type- Non-Consumer

Time Frame- 2 Banking Days


R22- Invalid Individual ID

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days


R23- Receiver Refused Credit

Account Type- Consumer or Non-Consumer

Time Frame- RDFI must transmit Return upon receipt of Refusal


R24- Duplicate Entry

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days


R25- Addenda Error

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R26- Mandatory Field Error

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R27- Trace Number Error

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R28- Routing No. Check Digit Error

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following ProcessingNext File Delivery Time Following Processing


R30- RDFI not in Check Truncation Program

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R31- Permissible Return (CCD and CTX only)

Account Type- Non-Consumer

Time Frame- Undefined


R32- RDFI Non-Settlement

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R33- Return of XCK

Account Type- Consumer or Non-Consumer

Time Frame- 60 Calendar Days


R34- Limited Participation DFI

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R35- Improper Debit

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R36- mproper Credit

Account Type- Consumer or Non-Consumer

Time Frame- Next File Delivery Time Following Processing


R37- Source Document Presented

Account Type- Consumer or Non-Consumer

Time Frame- 60 Calendar Days


R38- Stop Payment on Source Document

Account Type- Consumer or Non-Consumer

Time Frame- 60 Calendar Days


R39- Improper Source Document

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days


R40- Return of ENR

No Details 


R41- Invalid Transaction Code

No Details 


R42- Routing No. / Check Digit Error

No Details 


R43- Invalid DFI Account No.

No Details 


R44- Invalid Individual ID No.

No Details 


R45- Invalid Individual / Company Name

No Details 


R46- Invalid Representative Payee Indicator

No Details 


R47- Duplicate Enrollment

No Details 


R50- State Law Affecting RCK Acceptance

No Details 


R51 - Ineligible / Improper Item Related to RCK

No Details 


R52- Stop Payment on Item Related to RCK

Account Type- Consumer

Time Frame- 60 Banking Days


R53- Item and RCK Presented for Payment

Account Type- Consumer

Time Frame- 60 Banking Days


R61- Misrouted Return

Account Type- Consumer

Time Frame- 60 Banking Days


R62- Erroneous / Reversing Debit

Account Type- Consumer

Time Frame- 5 business days of return entry


R67- Duplicate Return

No Details 


R68- Untimely Return

Account Type- Consumer or Non-Consumer

Time Frame- ODFI must transmit Return within 5 Bnkg. Days


R69- Field Error

Account Type- Consumer or Non-Consumer

Time Frame- ODFI must transmit Return within 5 Bnkg. Days


R70- Permissible Return Not Accepted / Not Requested by ODFI

Account Type- Consumer or Non-Consumer

Time Frame- ODFI must transmit Return within 5 Bnkg. Days


R71- Misrouted Dishonored Return

Account Type- Consumer or Non-Consumer

Time Frame- ODFI must transmit Return within 5 Bnkg. Days


R72- Untimely Dishonored Return

Account Type- Consumer or Non-Consumer

Time Frame- ODFI must transmit Return within 5 Bnkg. Days


R73- Timely Original Return

Account Type- Consumer or Non-Consumer

Time Frame- ODFI must transmit Return within 5 Bnkg. Days


R74- Corrected Return

No Details


R75- Return Not Duplicate

Account Type- Consumer or Non-Consumer

Time Frame- ODFI must transmit Return within 5 Bnkg. Days


R76- No Errors Found

Account Type- Consumer or Non-Consumer

Time Frame- Contested Return must be transmitted within 2 Bnkg. Days


R77- Non-Acceptance of R62

Account Type- Consumer or Non-Consumer

Time Frame- Contested Return must be transmitted within 2 Bnkg. Days


R80- IAT Coding Error

Account Type- Consumer or Non-Consumer

Time Frame- Contested Return must be transmitted within 2 Bnkg. Days


R81- Non-Participant in IAT Program

Account Type- Consumer or Non-Consumer

Time Frame- Contested Return must be transmitted within 2 Bnkg. Days


R82- Invalid Foreign RDFI Identification

Account Type- Consumer or Non-Consumer

Time Frame- Contested Return must be transmitted within 2 Bnkg. Days


R83- Foreign RDFI Unable to Settle

Account Type- Consumer or Non-Consumer

Time Frame- Contested Return must be transmitted within 2 Bnkg. Days


R84- Not Processed by Gateway

No Details 


R85- Incorrectly Coded Outbound Int’l Payment

Account Type- Consumer or Non-Consumer

Time Frame- 2 Banking Days

Was this article helpful?