Automated Clearing House (ACH) payments are electronic transactions that transfer funds between bank accounts in the United States. They are commonly used for direct deposit, bill payments, B2B transactions, and person-to-person payments.
ACH payments are processed through the ACH network, a secure and reliable system operated by the National Automated Clearing House Association (Nacha). In 2025, the ACH network transferred $93 trillion. Despite their reliability, ACH payment failures do occur, and when an ACH payment fails or is returned, the impact on cash flow, customer relationships, and compliance can be significant. When ACH failures happen, it’s important to understand why they occurred and respond accordingly.
We’ll explain why ACH returns commonly happen, provide a complete list of ACH return codes, and describe how to reduce ACH payment failures in your business.
What’s in this article?
- What happens when an ACH payment is returned?
- Why ACH payment returns happen
- A complete list of ACH return codes
- How to reduce ACH returns
- How Stripe Payments can help
What happens when an ACH payment is returned?
A returned ACH payment means the transaction could not be completed and the funds were sent back to the originating account, typically with a return code that identifies the reason for the failure. A return differs slightly from a rejection, which happens when an entry was never accepted into the ACH network for processing.
There are several reasons why an ACH payment might be returned or rejected, including insufficient funds in the sender’s account, a closed account, or incorrect account information. Here’s what happens when an ACH payment is returned.
Bank notification: The receiving bank notifies the originating bank (the sender’s bank) that the ACH payment has been returned. It provides a reason code or description for the return that indicates why the transaction could not be completed.
Sender notification: The originating bank informs the sender (usually a business or individual) that the ACH payment has been returned, along with the reason provided by the receiving bank.
Resubmission or correction: Depending on the reason for the return, the sender might need to correct the payment information (such as updating account details) before resubmitting the transaction.
Reconciliation: The sender reconciles their records to reflect the returned payment and takes any necessary actions to address the situation, such as contacting the recipient to arrange an alternative payment method.
Returned ACH payments can incur fees, which the sender’s bank typically charges to the sender. These fees vary depending on the bank’s policies and the nature of the return.
Why ACH payment returns happen
ACH payments can be returned for several reasons. Here are some of the most common explanations.
Insufficient funds
Example code: R01 (Insufficient Funds)
This occurs when the account from which the payment is being drawn does not have adequate funds to cover the transaction at the time of processing.
Account issues
Example codes: R02 (Account Closed), R03 (No Account / Unable to Locate Account), R04 (Invalid Account Number)
Payments are returned if the account number provided does not exist, corresponds to a closed account, or is invalid. This could be due to input errors, closing accounts, or other administrative discrepancies.
Authorization issues
Example codes: R07 (Authorization Revoked by Customer), R10 (Customer Advises Not Authorized)
These returns happen when the originator does not have proper authorization from the account holder to initiate the debit or if the authorization was revoked after initially being granted.
Stop payments
Example code: R08 (Payment Stopped)
If an account holder places a stop payment order on a particular payment, the ACH debit will be returned.
Administrative errors
Example codes: R05 (Unauthorized Debit to Consumer Account Using Corporate SEC Code), R17 (File Record Edit Criteria)
Errors can occur if the transaction was formatted incorrectly. This could mean a mismatch in payment codes (e.g., applying a corporate transaction code to a consumer account) or other technical errors that violate ACH rules.
Banking errors
Example codes: R13 (Invalid ACH Routing Number), R26 (Mandatory Field Error)
These returns are related to issues with the receiving bank, such as not being qualified to participate in the ACH network or errors in processing required fields in a transaction.
Disputes and fraud
Example codes: R29 (Corporate Customer Advises Not Authorized), R51 (Item Related to RCK Entry is Ineligible or RCK Entry is Improper)
If an account holder disputes a transaction as unauthorized, potentially indicating fraud or discrepancies in how entries were processed, the transaction may be returned with these codes.
Technical or procedural failures
Example codes: R20 (Non-Transaction Account), R24 (Duplicate Entry)
Payments directed to nontransaction accounts (accounts not allowed to handle automated debits or credits) or duplicate transactions (where the same entry is sent more than once) are also common reasons for ACH returns.
Compliance and legal issues
Example codes: R16 (Account Frozen)
This error code can mean the accounts have been frozen because of legal action or transactions have been halted for regulatory violations.
A complete list of ACH return codes
ACH rejection and return codes encompass a wide range of scenarios from simple administrative errors to more complex issues related to international transactions and compliance. Before we discuss the specific codes, it’s helpful to understand a few key terms:
Entry: Any ACH transaction submission
IAT: International ACH transaction
ODFI: Originating Depository Financial Institution that sends ACH transactions
RDFI: Receiving Depository Financial Institution that receives ACH transactions
Each code provides specific information about why a transaction failed or requires attention. Here are all the ACH rejection and return codes:
|
Code
|
Description
|
Category
|
|---|---|---|
| R01 | Insufficient Funds | Funding |
| R02 | Account Closed | Account |
| R03 | No Account / Unable to Locate Account | Account |
| R04 | Invalid Account Number | Account |
| R05 | Unauthorized Debit to Consumer Account Using Corporate SEC Code | Authorization |
| R06 | Returned per ODFI's Request | Administrative |
| R07 | Authorization Revoked by Customer | Authorization |
| R08 | Payment Stopped | Authorization |
| R09 | Uncollected Funds | Funding |
| R10 | Customer Advises Not Authorized | Authorization |
| R11 | Check Truncation Entry Return | Check/RCK |
| R12 | Branch Sold to Another DFI | Institution |
| R13 | Invalid ACH Routing Number | Administrative |
| R14 | Representative Payee Deceased or Unable to Continue in that Capacity | Deceased |
| R15 | Beneficiary or Account Holder (Other Than a Representative Payee) Deceased | Deceased |
| R16 | Account Frozen | Account |
| R17 | File Record Edit Criteria | Administrative |
| R18 | Improper Effective Entry Date | Administrative |
| R19 | Amount Field Error | Administrative |
| R20 | Non-Transaction Account | Account |
| R21 | Invalid Company Identification | Administrative |
| R22 | Invalid Individual ID Number | Administrative |
| R23 | Credit Entry Refused by Receiver | Authorization |
| R24 | Duplicate Entry | Administrative |
| R25 | Addenda Error | Administrative |
| R26 | Mandatory Field Error | Administrative |
| R27 | Trace Number Error | Administrative |
| R28 | Routing Number Check Digit Error | Administrative |
| R29 | Corporate Customer Advises Not Authorized | Authorization |
| R30 | RDFI Not Participant in Check Truncation Program | Check/RCK |
| R31 | Permissible Return Entry (CCD and CTX only) | Administrative |
| R32 | RDFI Non-Settlement | Institution |
| R33 | Return of XCK Entry | Check/RCK |
| R34 | Limited Participation DFI | Institution |
| R35 | Return of Improper Debit Entry | Administrative |
| R36 | Return of Improper Credit Entry | Administrative |
| R37 | Source Document Presented for Payment | Check/RCK |
| R38 | Stop Payment on Source Document | Check/RCK |
| R39 | Improper Source Document | Check/RCK |
| R40 | Return of ENR Entry by Federal Government Agency | Government Enrollment |
| R41 | Invalid Transaction Code | Government Enrollment |
| R42 | Routing Number / Check Digit Error | Government Enrollment |
| R43 | Invalid DFI Account Number | Government Enrollment |
| R44 | Invalid Individual ID Number | Government Enrollment |
| R45 | Invalid Individual Name | Government Enrollment |
| R46 | Invalid Representative Payee Indicator | Government Enrollment |
| R47 | Duplicate Enrollment | Government Enrollment |
| R50 | State Law Affecting RCK Acceptance | Check/RCK |
| R51 | Item Related to RCK Entry is Ineligible or RCK Entry is Improper | Check/RCK |
| R52 | Stop Payment on Item Related to RCK Entry | Check/RCK |
| R53 | Item and RCK Entry Presented for Payment | Check/RCK |
| R61 | Misrouted Return | Dishonored Return |
| R62 | Return of Erroneous or Reversing Debit | Dishonored Return |
| R63 | Incorrect Dollar Amount | Dishonored Return |
| R64 | Incorrect Individual Identification | Dishonored Return |
| R65 | Incorrect Transaction Code | Dishonored Return |
| R66 | Incorrect Company Identification | Dishonored Return |
| R67 | Duplicate Return | Dishonored Return |
| R68 | Untimely Return | Dishonored Return |
| R69 | Field Error(s) | Dishonored Return |
| R70 | Permissible Return Entry Not Accepted / Return Not Requested by ODFI | Dishonored Return |
| R71 | Misrouted Dishonored Return | Dishonored Return |
| R72 | Untimely Dishonored Return | Dishonored Return |
| R73 | Timely Original Return | Dishonored Return |
| R74 | Corrected Return | Dishonored Return |
| R75 | Return Not a Duplicate | Dishonored Return |
| R76 | No Errors Found | Dishonored Return |
| R77 | Non-Acceptance of R62 Dishonored Return | Dishonored Return |
| R80 | IAT Entry Coding Errors | International |
| R81 | Non-Participant in IAT Program | International |
| R82 | Invalid Foreign Receiving DFI Identification | International |
| R83 | Foreign Receiving DFI Unable to Settle | International |
| R84 | Entry Not Processed by Gateway | International |
| R85 | Incorrectly Coded Outbound International Payment | International |
How to reduce ACH returns
Reducing ACH returns can save you money, reduce the administrative burden on your staff, and improve your customers’ experience by minimizing payment delays and addressing frustration with the payment process. It’s a good idea to track your ACH return rates against industry benchmarks and collaborate with other businesses in your sector to share best practices for reducing returns. (For example, an unauthorized return rate level of 0.5% or more, an administrative return level of 3% or more, or an overall return rate level of 15% or more triggers a Nacha compliance review.) Make sure you address ACH returns promptly when they do occur and consider implementing automated workflows to categorize and address returns in real time.
Here are some ideas to help reduce ACH returns. Carefully evaluate the cost-effectiveness of these return prevention strategies to make sure you’re balancing investment costs against any potential savings.
Verify account details before initiating transactions: Use address verification services (AVS) and Positive Pay to ensure account details match bank records. Consider electronically validating account ownership before initiating debits through microdeposits or instant account verification tools.
Educate customers about ACH authorization up-front: Communicate clearly about ACH authorization processes and potential fees associated with insufficient funds or nonauthorized transactions.
Build risk scores from your historical return data: Analyze historical return data to identify patterns and create risk scores for new transactions. Consider customer history, transaction size, and industry trends.
Monitor transactions in real time for suspicious activity: Implement tools that monitor ACH transactions for suspicious activity, such as high-value debits from new accounts.
Write clear, accurate transaction descriptions: Use easy to understand, concise transaction descriptions that accurately reflect the purpose of the payment. Ambiguous descriptions can raise warning signs for customers and lead to returns.
Send prenotifications before initial or recurring debits: When possible, send prenotifications to customers informing them of upcoming ACH transactions, especially for initial debits or recurring payments.
Offer multiple ways for customers to reach support: Provide multiple ways for customers to contact support about transactions they don’t recognize or updating their account information.
Batch low-risk transactions together: Use batching strategies to submit low-risk transactions together.
Optimize your ACH network strategy: Work with your payment processor to explore advanced ACH network optimization strategies. These could include choosing the most suitable routing options or using same-day ACH capabilities to expedite settlements and reduce the risk of insufficient funds. In 2025, 1.4 billion same-day ACH payments were processed.
Partner with ACH return prevention specialists: Consider partnering with specialized ACH return prevention services that offer advanced data scrubbing and verification capabilities.
Stay current on Nacha Operating Rules: Follow the latest Nacha Operating Rules and best practices for ACH transactions. For example, the organization recently introduced new rules requiring more specific company entry descriptions, such as “PAYROLL” and “PURCHASE,” for improved transparency.
Strengthen security across your ACH processing system: Maintain strong security protocols throughout your ACH processing system to minimize the risk of fraudulent transactions and returns.
How Stripe Payments can help
Stripe Payments enables businesses to set up and accept 125+ payment methods, including ACH Direct Debit. It provides a unified, global payments solution that helps any business—from scaling startups to global enterprises—accept payments online, in person, and around the world.
Stripe Payments can help you:
Simplify verification: Instantly verify ACH Direct Debits or send microdeposits to verify customers’ bank account details within 2 business days.
Simplify refunds: Make refunds or return excess funds to the customer.
Optimize your checkout experience: Create a frictionless customer experience and save thousands of engineering hours with prebuilt payment UIs and Link, Stripe’s digital wallet.
Expand to new markets faster: Reach customers worldwide and reduce the complexity and cost of multicurrency management with cross-border payment options, available in 195 countries across 135+ currencies.
Unify payments in person and online: Build a unified commerce experience across online and in-person channels to personalize interactions, reward loyalty, and grow revenue.
Improve payments performance: Increase revenue with a range of customizable, easy-to-configure payment tools, including no-code fraud protection and advanced capabilities to improve authorization rates.
Move faster with a flexible, reliable platform for growth: Build on a platform designed to scale with you, with 99.999% historical uptime and industry-leading reliability.
Learn more about how Stripe Payments can power your online and in-person payments, or get started today.
The content in this article is for general information and education purposes only and should not be construed as legal or tax advice. Stripe does not warrant or guarantee the accurateness, completeness, adequacy, or currency of the information in the article. You should seek the advice of a competent attorney or accountant licensed to practice in your jurisdiction for advice on your particular situation.