ACH return codes explained: R01 to R85

- What are ACH return codes?
- How do ACH return codes work?
- Why understanding ACH return codes is important for your business
- Why ACH payments get returned
- Complete ACH return codes list from R01 to R85
- Most common ACH return codes explained
- Nacha return rate thresholds and compliance
- Which ACH return codes indicate fraud?
- What happens when an ACH payment is returned?
- ACH returns vs. ACH reversals
- How to handle ACH returns
- How to prevent ACH returns
- Automate your AP with Ramp

ACH return codes are standardized error messages that explain exactly why an ACH payment failed, whether due to insufficient funds, a closed account, or invalid account details. Understanding these codes helps your accounts payable team identify patterns, resolve failures faster, and improve transaction success rates.
What are ACH return codes?
ACH return codes, also called ACH return reason codes, are three-character error messages generated when an ACH transaction fails.
Each code begins with the letter "R" followed by a 2-digit number. For example, R01 is the ACH return code for insufficient funds, and R04 is the code for an invalid account number.
These codes apply to both ACH withdrawal and ACH credit transactions. They provide a clear explanation for the failure, making it easier for you to diagnose and resolve payment issues.
ACH return codes are used by banks, financial institutions, businesses, and finance professionals. Understanding what they're for helps you remain compliant with the rules around ACH payments and keep payment processing efficient.
How do ACH return codes work?
When an ACH payment fails, the receiving depository financial institution (RDFI) assigns a return code explaining the reason. This code is sent to the originating depository financial institution (ODFI), which then relays the information to you.
The RDFI is the bank or financial institution receiving the ACH payment. It can assign an ACH return reason code if the payment doesn't meet certain criteria or there's some other issue that prevents it from accepting the payment.
The ODFI is the bank or financial institution sending the ACH payment. If it feels a payment return was improper, it can assign dishonored return codes to challenge it.
There are two key timeframes to know:
- 2 banking days: The RDFI must process standard returns such as R01, R02, R03, and R04 within 2 banking days of the settlement date
- 60 calendar days: Returns for unauthorized or revoked authorization transactions, such as R05, R07, R10, and R11 can occur up to 60 calendar days after the original transaction
When a payment receives an ACH return code, resolve it quickly. Delays affect your cash flow and can push you closer to Nacha's enforcement thresholds.
How are ACH return codes assigned?
Banks assign ACH return reason codes based on specific criteria, such as a sending account having insufficient funds to complete the transaction, or the receiving account having been closed. Incorrect payment information, from the account number to the dollar amount, may also trigger ACH return codes.
The regulatory body Nacha oversees this process, ensuring consistency in return codes across the ACH network. They also standardize codes, which makes it easier to both issue and respond to them. Some codes are more common for consumer transactions, while others pertain to business transactions.
Why understanding ACH return codes is important for your business
Understanding common ACH return codes helps you diagnose payment failures faster and spot systemic issues. Here's what that looks like in practice:
- Identify payment issues: These codes provide a standardized reason for failed transactions so you can address problems quickly
- Enhance communication: Return codes create transparency between banks and your business, helping resolve issues efficiently and reducing delays
- Improve transaction success rates: By analyzing return codes, you can detect recurring issues, adjust payment methods, and take proactive steps to reduce failures
- Ensure Nacha compliance: Monitoring return codes helps you stay within Nacha's 15% return rate threshold, avoiding penalties and maintaining uninterrupted ACH services
Why ACH payments get returned
ACH payments can be returned for several reasons, which generally fall into five main categories.
Insufficient funds and financial issues
These returns happen due to ACH NSF (non-sufficient funds) situations, uncollected funds, or other account balance problems. They're often temporary, and you may be able to retry the payment after a few days. Codes like R01 and R09 fall into this category.
Account problems and closures
These returns occur because of closed accounts, invalid account numbers, incorrect DFI account number errors, or accounts that have been sold to another financial institution. Codes like R02, R03, R04, and R12 are common examples.
Authorization and fraud concerns
This category includes unauthorized debits, revoked authorizations, and customer disputes. There's an important distinction between consumer authorization issues (like R10) and corporate authorization issues (like R29), which have different rules and timeframes. Proper ACH authorization forms help prevent these returns.
Administrative and formatting errors
These returns are caused by technical mistakes such as invalid routing numbers, duplicate entries, mandatory field errors in the payment file, or issues with file record edit criteria. Codes like R13, R17, R24, and R26 fall here.
Timing and processing constraints
These returns relate to processing rules, such as improper effective entry dates, untimely returns by the RDFI, or attempts to transact with a non-transaction account. Codes like R18 and R20 are typical examples.
Complete ACH return codes list from R01 to R85
There are 85 ACH return codes, broken into logical groupings so you can quickly find the code you're looking for.
R01 to R10 Nacha return codes
These are the most frequently encountered ACH return codes. The first four, R01, R02, R03, and R04, may be worth memorizing.
| Code | Description | Common cause |
|---|---|---|
| R01 | Insufficient Funds | The account lacks the funds to cover the debit |
| R02 | Account Closed | The bank account is no longer active |
| R03 | No Account/Unable to Locate | The account number does not match the name or is incorrect |
| R04 | Invalid Account Number | The account number format is incorrect |
| R05 | Unauthorized Debit | A debit was made to a consumer account not authorized for ACH |
| R06 | Returned per ODFI Request | The originating bank requested the return of the entry |
| R07 | Authorization Revoked | The customer has revoked authorization for this payment |
| R08 | Payment Stopped | The customer has placed a stop payment on this transaction |
| R09 | Uncollected Funds | Funds are not yet available in the account to cover the debit |
| R10 | Customer Advises Originator is Not Known/Not Authorized | The customer claims they do not have a relationship with the originator and/or have not authorized the transaction |
R11 to R20 return reason codes
| Code | Description | Common cause |
|---|---|---|
| R11 | Entry Not in Accordance with the Terms of the Authorization | Payment didn't match the terms of the authorization |
| R12 | Account Sold | The account has been sold to another financial institution |
| R13 | Invalid ACH Routing Number | The routing number is incorrect or does not exist |
| R14 | Representative Payee Deceased | The representative payee is deceased or unable to act |
| R15 | Beneficiary Deceased | The beneficiary of a government payment is deceased |
| R16 | Account Frozen | The account is frozen due to legal action or bank policy |
| R17 | File Record Edit Criteria | A field in the entry is invalid or not allowed |
| R18 | Improper Effective Entry Date | The effective date for the transaction is invalid |
| R19 | Amount Field Error | The amount field is non-numeric, zero, or exceeds the limit |
| R20 | Non-Transaction Account | The account is not set up for ACH transactions (e.g., some savings accounts) |
All payments in one place? Check.
Handle all domestic and global vendor payments on a single platform—by check, card, ACH, or international wire.

R21 to R30 ACH reject codes
| Code | Description | Common cause |
|---|---|---|
| R21 | Invalid Company Identification | The company ID in the entry is incorrect |
| R22 | Invalid Individual ID Number | The individual ID number is incorrect |
| R23 | Credit Entry Refused by Receiver | The receiver has refused to accept a credit entry |
| R24 | Duplicate Entry | The transaction appears to be a duplicate of a previous one |
| R25 | Addenda Error | The addenda record contains incorrect information |
| R26 | Mandatory Field Error | A required field in the entry is missing or incorrect |
| R27 | Trace Number Error | The trace number is invalid or doesn't match the file |
| R28 | Routing Number Check Digit Error | The check digit for the routing number is invalid |
| R29 | Corporate Customer Advises Not Authorized | A corporate customer claims the debit was not authorized |
| R30 | RDFI Not Participant in Check Truncation | The receiving bank does not participate in the check truncation program |
R31 to R40 return codes
| Code | Description | Common cause |
|---|---|---|
| R31 | Permissible Return Entry | The RDFI is returning a permissible entry (CCD and CTX only) |
| R32 | RDFI Non-Settlement | The RDFI is unable to settle the entry |
| R33 | Return of XCK Entry | Used to return an XCK (destroyed check) entry |
| R34 | Limited Participation DFI | The RDFI's participation in the ACH network is limited |
| R35 | Return of Improper Debit Entry | A debit was sent to an account that only accepts credits |
| R36 | Return of Improper Credit Entry | A credit was sent to an account that only accepts debits |
| R37 | Source Document Presented for Payment | The original check was presented for payment |
| R38 | Stop Payment on Source Document | A stop payment was placed on the original check |
| R39 | Improper Source Document | The source document for an ACH entry is invalid |
| R40 | Return of ENR Entry by Federal Government Agency | A federal agency is returning an Automated Enrollment (ENR) entry |
R41 to R50 return codes
| Code | Description | Common cause |
|---|---|---|
| R41 | Invalid Transaction Code | The transaction code in the entry is invalid for the account type |
| R42 | Routing Number/Check Digit Error | The routing number and check digit are from a non-participant |
| R43 | Invalid DFI Account Number | The account number structure is invalid at the RDFI |
| R44 | Invalid Individual ID Number | The individual ID number is incorrect or missing |
| R45 | Invalid Individual Name/Company Name | The name provided does not match the account holder's name |
| R46 | Invalid Representative Payee Indicator | The representative payee indicator code is invalid |
| R47 | Duplicate Enrollment | The ENR entry is a duplicate of a previous enrollment |
| R50 | State Law Affecting RCK Acceptance | State law prohibits the acceptance of a Re-presented Check (RCK) entry |
R51 to R69 return codes
| Code | Description | Common cause |
|---|---|---|
| R51 | Item is Ineligible, Notice Not Provided | An RCK entry is ineligible (e.g., notice was not provided) |
| R52 | Stop Payment on Item | A stop payment was placed on the original check (RCK) |
| R53 | Item and ACH Entry Presented for Payment | Both the original check and the RCK entry were presented |
| R54 | Receivable Document Presented for Payment | The original receivable document has been presented for payment |
| R55 | Source Document Presented for Payment (BOC) | The source document for a BOC entry has been presented for payment |
| R56 | Source Document Presented for Payment (ARC) | The source document for an ARC entry has been presented for payment |
| R57 | RDFI Not Qualified to Participate | The RDFI is not qualified to participate in the BOC program |
| R58 | Payee Deceased | The payee is deceased |
| R59 | Payee Account Closed | The payee's account has been closed |
| R60 | Entry Settled Prior to Return | The entry has been settled and cannot be returned |
| R61 | Misrouted Return | The return was sent to the wrong ODFI |
| R62 | Incorrect Trace Number | The trace number in a return is incorrect |
| R63 | Incorrect Dollar Amount | The dollar amount in a return is incorrect |
| R64 | Incorrect Individual Identification | The individual ID in a return is incorrect |
| R65 | Incorrect Transaction Code | The transaction code in the return entry does not match the original |
| R66 | Incorrect Company Identification | The company identification in the return does not match the original |
| R67 | Duplicate Return | The return is a duplicate of a previously sent return |
| R68 | Untimely Return | The return was not sent within the required timeframe |
| R69 | Field Error(s) | Multiple fields in the return entry are incorrect |
R70 to R85 return codes
| Code | Description | Common cause |
|---|---|---|
| R70 | Permissible Return Entry Not Accepted | The ODFI has not agreed to accept a permissible return entry |
| R71 | Misrouted Dishonored Return | A dishonored return was sent to the wrong ODFI |
| R72 | Untimely Dishonored Return | A dishonored return was not sent within the required timeframe |
| R73 | Timely Original Return | The RDFI claims the original return was timely |
| R74 | Corrected Return | A previous return is being corrected |
| R75 | Original Return Not a Duplicate | The ODFI claims the original return was not a duplicate |
| R76 | No Errors Found | The RDFI found no errors in the original return |
| R77 | Non-Acceptance of R62 Dishonored Return | The ODFI is not accepting a dishonored return for an R62 |
| R78 | Non-Acceptance of R68 Dishonored Return | The ODFI does not accept the dishonored return for an R68 |
| R79 | Incorrect Data in Return Entry | The RDFI provided incorrect data in the return entry |
| R80 | IAT Entry Coding Error | An International ACH Transaction (IAT) has a coding error |
| R81 | Non-Participant in IAT | The gateway does not participate in the IAT network |
| R82 | Invalid Foreign Receiving DFI Identification | The foreign bank identification is invalid |
| R83 | Foreign Receiving DFI Unable to Settle | The foreign bank cannot settle the transaction |
| R84 | Entry Not Processed by Gateway | The IAT entry was not processed by the gateway operator |
| R85 | Incorrectly Coded Outbound International Payment | An outbound international payment was coded as a domestic transaction |
Most common ACH return codes explained
Finance teams most frequently encounter a specific set of codes. Understanding what triggered them and the immediate next steps is crucial for resolving payment issues quickly.
R01 ACH return code — Insufficient funds
The account lacks adequate funds to cover the debit. This is the ACH equivalent of a declined transaction and is often a temporary issue. You may be able to retry the payment after a few days once the account holder has replenished their balance.
What to do: Wait 1–2 business days and resubmit the payment. Contact the account holder if the issue recurs.
Retry eligible? Yes. R01 is one of only two retry-eligible codes (along with R09).
Initiated by: RDFI
R02 ACH return code — Account closed
The account no longer exists. Contact the customer or vendor immediately to get updated banking information. Don't retry the payment to this account; it will fail again.
What to do: Contact the payee to collect new bank account details. Update your records before resubmitting.
Retry eligible? No. The account is permanently closed.
Initiated by: RDFI
R03 ACH return code — No account or unable to locate account
The account number provided doesn't match the records at the receiving bank. Verify the account and routing numbers with the account holder before attempting the payment again. This is one of the most common ACH return codes and typically indicates a data entry error during account setup.
What to do: Verify routing and account numbers with the account holder. Check for transposed digits or outdated information.
Retry eligible? No. Retrying with the same incorrect details will produce the same result.
Initiated by: RDFI
R04 ACH return code — Invalid account number
The account number's structure is incorrect. It may have the wrong number of digits or an invalid format. Collect the corrected account details from the customer before resubmitting the payment.
What to do: Request corrected account information from the payee. Validate the format before resubmitting.
Retry eligible? No. The account number format itself is invalid.
Initiated by: RDFI
R05 ACH return code — Unauthorized debit to consumer account
A debit was made to a consumer account without proper authorization. This is a serious compliance issue that can trigger Nacha enforcement if your unauthorized return rate exceeds 0.5%. Review your authorization process immediately.
What to do: Cease all debits to this account and investigate your authorization records. If authorization documentation is insufficient, update your process.
Retry eligible? No. You cannot retry without obtaining proper authorization.
Initiated by: RDFI
R07 ACH return code — Authorization revoked by customer
The customer has officially canceled their authorization for this specific recurring debit. You must stop all future debits and contact the customer to discuss the cancellation. Retrying this payment without new authorization violates Nacha rules.
What to do: Stop all future debits to this account immediately. Contact the customer to discuss alternatives or obtain new authorization.
Retry eligible? No. Retrying without new authorization is a Nacha violation.
Initiated by: RDFI
R08 ACH return code — Payment stopped
The account holder has instructed their bank to place a stop payment on this specific transaction. Reach out to the customer to understand why and resolve the underlying issue before attempting another payment.
What to do: Contact the account holder to understand the reason for the stop payment. Resolve the underlying dispute before initiating a new transaction.
Retry eligible? No. The stop payment is a deliberate action by the account holder.
Initiated by: RDFI
R09 ACH return code — Uncollected funds
Funds exist in the account but aren't yet available for withdrawal (e.g., a recent deposit hasn't cleared). This is similar to R01 but specifically relates to uncollected rather than insufficient funds.
What to do: Wait 2–3 business days for the funds to clear, then retry.
Retry eligible? Yes. This is typically a timing issue that resolves itself.
Initiated by: RDFI
R10 ACH return code — Customer advises originator is not known/not authorized
The customer says they don't recognize the company taking the payment, or never gave them permission to debit their account at all. This is different from a billing mistake — it means no valid authorization exists. Investigate immediately and have your authorization records ready.
Note: Nacha narrowed R10's definition in 2020. It used to be a catch-all for anything unauthorized, including simple errors like the wrong amount or date. Now those billing-error cases go through R11 instead. R10 is reserved specifically for cases where the customer doesn't know the originator, has no relationship with them, or never authorized them to debit the account.
What to do: Pull your authorization records for this customer and prepare documentation. If authorization is missing, cease all debits and update your process.
Retry eligible? No. Retrying without valid authorization is a serious Nacha violation.
Initiated by: RDFI
R11 ACH return code — Entry not in accordance with the terms of the authorization
The customer authorized this payment, but something about it didn't match what they agreed to, usually the wrong amount or the wrong date. Review the original authorization and the entry details, then contact the payer to sort out the discrepancy.
Note: Nacha changed what R11 means back in 2020. It used to stand for "Check Truncation Entry Return" (used when a converted paper check was rejected) and had a quick 2-banking-day return window. It now means "Entry Not in Accordance with the Terms of the Authorization" and gives banks up to 60 calendar days to return it. This longer window gives originators time to fix genuine billing errors without needing a new authorization from the customer.
What to do: Compare the entry against the original authorization to confirm what went wrong, then contact the payer to resolve it.
Retry eligible? Yes. Once the error is corrected (e.g., the right amount or date), you can submit a new entry within 60 days of the return without getting a new authorization.
Initiated by: RDFI
R16 ACH return code — Account frozen
The account has been frozen by the bank or a legal order, preventing any transactions. Contact the account holder to understand the situation and obtain an alternative payment method or account details.
What to do: Reach out to the account holder for alternative payment details. Do not attempt further transactions to this account until the freeze is resolved.
Retry eligible? No. The freeze must be lifted by the bank or court before the account can transact.
Initiated by: RDFI
R29 ACH return code — Corporate customer advises not authorized
This is similar to an R10 return but applies specifically to corporate accounts. The company is claiming the debit was not authorized. Review your service agreements and contact their accounts payable team to resolve the dispute.
What to do: Review your service agreement and authorization documentation with this corporate customer. Contact their AP team to resolve the dispute.
Retry eligible? No. Retrying without resolving the authorization dispute risks Nacha enforcement.
Initiated by: RDFI
Nacha return rate thresholds and compliance
Nacha enforces three return rate thresholds measured on a rolling 60-day basis. Exceeding these can result in fines, increased monitoring, or loss of ACH origination privileges. If you process a high volume of ACH transactions, understanding these thresholds is critical to maintaining your origination privileges.
Unauthorized return threshold (0.5%)
- Applies to codes R05, R07, R10, R11, and R29
- These indicate the account holder disputes authorizing the transaction
- Exceeding 0.5% triggers Nacha's enforcement process, which can include formal warnings, corrective action plans, and financial penalties
- Most serious threshold; signals potential fraud or poor authorization practices
Administrative return threshold (3%)
- Applies to codes R02, R03, and R04
- Indicates data quality issues: wrong account numbers, closed accounts, or unlocatable accounts
- Exceeding 3% signals poor data hygiene in your payment operations
- Often fixable through better account verification during onboarding
Overall return rate threshold (15%)
- Applies to all ACH debit return codes combined
- Broadest threshold covering every return reason
- Typically only triggered by businesses with systemic payment processing issues
- Exceeding this threshold can result in suspension of ACH origination privileges
How to monitor your return rates
- Calculation: Total returns divided by total originations over a rolling 60-day window
- Dashboards: Most payment processors provide real-time return rate monitoring
- Segmentation: Track rates by return code category (unauthorized vs. administrative vs. other) to pinpoint problem areas
- Internal alerts: Set warning thresholds below Nacha's limits (e.g., alert at 0.3% unauthorized, 2% administrative) so you can course-correct before triggering enforcement
Which ACH return codes indicate fraud?
Some ACH return codes indicate routine errors, while others signal potential fraud or unauthorized activity requiring different handling and compliance steps.
Codes that indicate unauthorized activity
- R07 (Authorization Revoked by Customer)
- R10 (Customer Advises Originator Is Not Known/Not Authorized)
- R11 (Entry Not In Accordance with the Terms of the Authorization)
- R29 (Corporate Customer Advises Not Authorized)
These four codes are subject to Nacha's 0.5% unauthorized return threshold. Exceeding that threshold triggers graduated enforcement actions.
The difference between R07, R10, R11, and R29
- R07: Consumer previously authorized the debit but has since revoked authorization (e.g., canceled subscription). Prior authorization existed at some point.
- R10: The customer says they don't recognize the company taking the payment, or never gave them permission to debit their account at all. This is the strongest dispute type and a potential fraud indicator.
- R11: The customer says the payment doesn't match the original authorization. This is also a potential fraud indicator.
- R29: Same as R10 but for corporate/business accounts. The company claims no authorization was ever given.
The key distinction: R07 implies prior authorization that was later revoked. R11 also implies prior authorization. However, R10 and R29 imply no authorization ever existed, making them more serious from a compliance perspective.
Written Statement of Unauthorized Debit
When a consumer disputes an ACH debit as unauthorized (R10, R11), the RDFI may require a Written Statement of Unauthorized Debit (WSUD) before processing the return. This is a sworn statement from the account holder confirming they did not authorize the transaction.
For businesses receiving WUSDs: Treat each one as a serious compliance signal requiring investigation. Multiple WUSDs may indicate a process failure in how you capture and store customer authorizations.
What happens when an ACH payment is returned?
When a payment is returned, the RDFI sends an ACH return file back to the ODFI, which then notifies you. This notification explains why the payment failed via the return code.
This process is distinct from an ACH reversal, which is initiated by the originator to correct an error. Depending on your payment processor, you may also be charged a fee for each returned transaction.
If you regularly experience failed ACH payments, the return codes tell you exactly why. Resolving failed ACH payments costs time, puts you at risk of paying invoices late, and costs money. When troubleshooting payment issues, your bank can use the ACH trace number to locate and investigate the transaction within the ACH network.
ACH returns vs. ACH reversals
ACH returns and ACH reversals are similar-sounding terms with very different meanings. Understanding the difference helps you manage transactions more effectively and avoid confusion.
For example, if you make an ACH payment by mistake and want to reverse it, reading about ACH returns won't be helpful. Likewise, if you experience an ACH payment failure, researching ACH reversals will only cause confusion.
| Criteria | ACH return | ACH reversal |
|---|---|---|
| Definition | A failed payment when an ACH transaction can't be processed successfully | A request to reverse a completed ACH payment due to an error |
| Initiator | The receiving bank (RDFI) when an issue is detected | The sending bank (ODFI) upon identifying a mistake |
| Common reasons | Insufficient funds, invalid account number | Duplicate payments, incorrect recipient, incorrect payment amount |
| Processing time | 2–60 days, depending on return code | Must be requested within 24 hours of identifying the error |
How to handle ACH returns
Responding to returns requires quick, practical action. Most require resolution within 2 banking days, so speed matters.
Verify bank account information
Cross-check the routing number, account number, and account type against the information provided by the customer or vendor. Look for common errors such as typos or transposed digits.
Contact the customer or vendor
Reach out promptly to explain that the payment was returned. Be specific about the return code and what you need to resolve it, such as a new account number or confirmation of authorization.
Retry the payment when appropriate
Only certain return codes are appropriate for a retry. Codes like R01 (insufficient funds) or R09 (uncollected funds) may resolve themselves in a few days. Never retry payments to closed accounts (R02), for unauthorized transactions (R07, R10, R11), or with invalid account numbers (R04).
Document and track return patterns
Keep detailed records of all returns, including the code, customer, and date. High return rates can negatively affect your ability to process ACH payments and may indicate deeper issues with your data collection or authorization processes.
Track your return rates by category: If unauthorized returns (R05, R07, R10, R11, R29) exceed 0.5% or administrative returns (R02, R03, R04) exceed 3% over a 60-day window, you risk Nacha enforcement action.
How to prevent ACH returns
Taking proactive steps significantly reduces return rates and protects your ACH processing privileges.
Validate account details before sending payments
Use account verification services to confirm that routing and account numbers are valid and that the account is active before you initiate any transactions. This catches errors like R03 and R04 before they happen.
Micro-deposit verification (sending two small deposits for the account holder to confirm) is one option, though it takes 1–2 business days. Instant account verification services connect directly to the account holder's bank to confirm details in real time, making them a faster alternative for high-volume payment operations.
Use prenote transactions for new accounts
Send a zero-dollar test transaction (a "prenote") to verify new account information before processing actual payments. This confirms the account details are correct without moving any money, a simple step that can prevent a surprising number of returns.
Prenotes take 3–4 business days to validate, so build this timeline into your vendor onboarding process. For new vendors or customers, initiate the prenote as soon as you collect banking details rather than waiting until the first payment is due.
Maintain clear authorization records
Strong authorization documentation prevents the most damaging returns: R05, R07, R10, R11, and R29.
- Store signed authorization forms or electronic consent records for every customer
- Use Nacha-compliant authorization language that clearly states the amount, frequency, and terms of the debit
- Build a process for handling revocation requests promptly; when a customer revokes authorization, stop debits immediately
- Audit authorization records quarterly to ensure documentation exists for every active recurring debit
Set up payment alerts and monitoring
Configure notifications for returns so your team can respond quickly. Monitor your return rates by code type to identify trends, such as a high number of R04s indicating a problem with your data entry process.
Beyond individual return alerts, track your aggregate return rates against Nacha's thresholds (0.5% unauthorized, 3% administrative, 15% overall). Set internal warning alerts below these limits so you can take corrective action before triggering enforcement.
Automate payment approval workflows
Implement internal controls and approval processes that catch errors before payments are sent. Automation reduces the manual entry mistakes that often lead to administrative returns like R13, R17, and R26. With Ramp Bill Pay, error alerts surface return codes directly in your workflow, eliminating the manual lookup that slows resolution.
Automate your AP with Ramp
With manual AP processes, data entry mistakes can lead to returned ACH payments or the need for an ACH reversal. You can avoid these errors and more by automating your AP process.
Ramp Bill Pay lets you scan or upload documents such as invoices, purchase orders, vendor onboarding docs, and receipts instead of entering all that information manually.
And with the ability to automate the payment process with features such as automated workflows, 2-way and 3-way matching, and error alerts, you'll have complete visibility into your cash flow, too.
What else could Ramp do to simplify your AP process? Try an interactive demo.
This post includes general information about ACH payments. For help with ACH functionality specific to Ramp, visit Ramp Support for more details.

FAQs
Most ACH returns are processed within 2 banking days of settlement. However, unauthorized returns (R10, R29) can be initiated up to 60 calendar days after the transaction date. The specific time frame depends on the return code and whether it's a consumer or corporate transaction.
It depends on the return code. R01 (Insufficient Funds) and R09 (Uncollected Funds) are retry-eligible—you can resubmit after waiting 1–2 business days. Codes like R02 (Account Closed), R04 (Invalid Account Number), and R10 (Not Authorized) are not retry-eligible and require updated information or alternative payment arrangements.
R01 (Insufficient Funds) is the most common ACH return code. It means the account holder didn't have enough available balance to cover the debit. R01 is retry-eligible, meaning you can resubmit the payment after a short waiting period.
An ACH return is initiated by the receiving bank (RDFI) when a payment can't be processed for reasons like insufficient funds or a closed account. An ACH reversal is initiated by the originator (the sender) to correct an erroneous transaction, such as a duplicate payment or wrong amount. Returns are reactive; reversals are proactive corrections.
If your ACH return rates exceed Nacha's thresholds (0.5% for unauthorized returns, 3% for administrative returns, or 15% overall), you may face graduated enforcement actions including formal warnings, required corrective action plans, financial penalties, and in severe cases, suspension of your ACH origination privileges.
“Most banks treat the back office as a cost to keep down. We treat ours as a return to compound, which is why we run it on Ramp. Now we put our clients on Ramp, too.”
Patrick Gaughen
President & COO, Hingham Institution for Savings

“Browserbase builds infrastructure so AI agents can do real work. Ramp is doing the same for finance. It’s not another tool. It’s a system purpose-built for AI-driven finance, and that’s why we chose Ramp as our financial operating system from day one.”
Paul Klein IV
Founder & CEO, Browserbase

“We used to pay up to $20k a year for our AP platform. With Ramp, we’re earning back well over that amount. That's money that belongs to the mission now, not to the back-office software.”
Heidi Coffer
Chief Financial Officer, Boys & Girls Clubs of San Francisco

“The tricky thing about corporate travel policy is timing. We didn't need a stricter policy. We needed the policy to show up earlier. With Ramp Travel, it finally does.”
Keith Frantz
Director of Enterprise Risk Management, Prosper

“We're accountable to our funders, our partners, and the families we serve. That accountability starts with how we manage every dollar. Ramp makes it easy for our team to spend wisely, track in real time, and keep overhead low so more resources reach the families navigating infertility.”
Rachel Fruchtman
CFO, Jewish Fertility Foundation

“Each member of our team has an outsized impact due to our focus on using high-leverage tools like Ramp.”
Lauren Feeney
Controller, Perplexity

“With Ramp, we haven’t had to add accounting headcount to keep up with growth. The biggest takeaway is that instead of hiring our way through it, we fixed the workflow so we can keep supporting the organization as we scale.”
Melissa M.
VP of Accounting at Brandt Information Services

“In the public sector, every hour and every dollar belongs to the taxpayer. We can't afford to waste either. Ramp ensures we don't.”
Carly Ching
Finance Specialist, City of Ketchum



