As a business owner or payments professional, you’re likely familiar with the Automated Clearing House (ACH) network — a secure and efficient system for processing electronic payments between bank accounts. But when payments are rejected or returned, they come with ACH return codes that indicate the reason for the failure.
One of the most common — and misunderstood — return codes is R10, which indicates a customer-initiated dispute. However, there are dozens of return codes, each providing valuable information for resolution.
In this guide, we'll explore:
What ACH return codes are
The full list of NACHA ACH return codes
Focus on late returns like R10
What to do when you receive specific return codes
ACH return codes are three-character alphanumeric codes issued when an ACH transaction is returned by a Receiving Depository Financial Institution (RDFI). These codes are defined by NACHA (National Automated Clearing House Association), which governs ACH operations in the U.S.
Return codes provide insights such as:
Insufficient funds
Closed or invalid accounts
Unauthorized debits
Account type issues
Duplicate transactions
Technical or administrative errors
Return Code: R10
Meaning: Customer Advises Originator is Not Known and/or Transaction is Not Authorized
Use Case: When a customer claims they did not authorize a debit from their account. This often requires a written statement of unauthorized debit (WSUD) from the customer to their bank.
Why R10 Takes So Long:
Under NACHA rules, consumers have up to 60 calendar days from the settlement date to return an unauthorized transaction. This extended timeline exists to protect consumers from fraud and unauthorized withdrawals.
Most ACH returns (like insufficient funds or invalid account) happen within 2–5 business days. But some codes allow up to 60 calendar days for returns — especially those involving consumer protection.
R05 – Unauthorized Debit to Consumer Account Using Corporate SEC Code
R07 – Authorization Revoked by Customer
R10 – Customer Advises Not Authorized / Originator Unknown
R11 – Customer Advises Entry Not in Accordance with Terms (e.g., amount/date incorrect)
R29 – Corporate Customer Advises Not Authorized
R51 – Item is Ineligible, Incomplete, or Improperly Processed (Check conversion issues)
Here is a categorized and complete list of standard NACHA return codes:
| Code | Meaning |
|---|---|
| R05 | Unauthorized debit using corporate SEC code to consumer account |
| R07 | Authorization revoked by customer |
| R08 | Payment stopped |
| R10 | Customer advises not authorized / Originator unknown |
| R11 | Entry not in accordance with authorization |
| R16 | Account frozen |
| R20 | Non-transaction account |
| R29 | Corporate customer advises not authorized |
| Code | Meaning |
|---|---|
| R01 | Insufficient funds |
| R02 | Account closed |
| R03 | No account/unable to locate |
| R04 | Invalid account number |
| R15 | Beneficiary deceased |
| R23 | Credit entry refused by receiver |
| R24 | Duplicate entry |
| Code | Meaning |
|---|---|
| R06 | Returned per ODFI's request |
| R09 | Uncollected funds |
| R13 | Invalid ACH routing number |
| R17 | File edit criteria not met |
| R22 | Invalid individual ID number |
| R25 | Addenda error |
| R26 | Invalid DFI account number |
| R27 | Trace number error |
| R28 | Routing number check digit error |
| R30 | RDFI not participant in check truncation program |
| R31 | Permissible return entry not accepted |
| R33 | Return of XCK entry (destroyed check) |
| R34 | Limited participation DFI |
| R35 | Return of improper ARC entry |
| R36 | Return of improper BOC entry |
| R37 | Return of improper POP entry |
| R38 | Return of improper TEL entry |
| R39 | Improper SEC code for return |
| R40 | Return of improper MTE/RET/SHR entry |
| R41 | Return of improper RCK entry |
| R42 | Return of excessive return rate |
| R43 | Invalid DFI account number in outbound IAT |
| R44 | Invalid foreign RDFI information |
| R45–R49 | Reserved for future use |
| R50 | State law prohibits transaction |
| R51 | Ineligible or improper item |
| R52–R69 | Reserved |
| R70–R84 | IAT-specific return codes |
| R85 | Incorrect SEC code for Outbound International Payment |
| R99 | Administrative return (non-compliant with gateway requirements) |
Here are best practices if you receive a late return code, especially R10:
Contact the customer: Politely ask why the transaction was disputed.
Request WSUD (if applicable): A written statement from the customer may be required to process future challenges or re-submissions.
Don't retry the transaction: You may need a new authorization before reattempting.
Consider reauthorization methods: Use ACH authorization forms or switch to alternative payment options (such as Card) if disputes persist.
Document everything: Keep a record of customer communication, return notices, and authorizations for compliance.
Understanding ACH return codes is essential for managing electronic payments effectively. While codes like R01, R02, and R03 resolve quickly, others like R10 and R07 fall under extended timelines for consumer protection.
R10 signals unauthorized transactions and may take up to 60 days.
Always consult the NACHA Operating Rules for compliance.
Respond proactively to avoid repeat disputes and protect your business.