Source: https://rivet.global/blog/ach-return-codes
Published: 2026-09-11 · Updated: 2026-09-11 · By Rashidatou K.

# ACH return codes explained: R01, R02, R03 and the rest

What the common ACH return codes mean, how long the receiving bank has to return a payment, which codes you can retry, and the return rate limits Nacha watches.

## Key takeaways

- Return codes tell the originator why an ACH entry failed.
- Most returns must be sent within two banking days of the settlement date.
- Returns for unauthorised debits to consumer accounts can come up to 60 calendar days later.
- R01 and R09 can be retried up to two more times; R02, R03 and R04 mean fix the details first.
- Nacha watches return rates: 0.5% unauthorised, 3% administrative and 15% overall.

An ACH return is the network's way of saying a payment did not go through. The return comes with a code that tells you why. Reading the code correctly decides whether you try again tomorrow, ask the payee for new details or stop collecting from that account.

## What are the most common ACH return codes?

| Code | Meaning | Return window | What to do |
|---|---|---|---|
| R01 | Insufficient funds | 2 banking days | Retry later, up to 2 more times |
| R02 | Account closed | 2 banking days | Get new account details |
| R03 | No account, unable to locate | 2 banking days | Check the account number and name |
| R04 | Invalid account number structure | 2 banking days | Fix the number |
| R05 | Unauthorised debit to consumer account using a corporate SEC code | 60 calendar days | Get proper consumer authorisation |
| R07 | Authorisation revoked by customer | 60 calendar days | Stop debiting; get new authorisation |
| R08 | Payment stopped | 2 banking days | Contact the customer |
| R09 | Uncollected funds | 2 banking days | Retry later |
| R10 | Customer advises not authorised (consumer) | 60 calendar days | Stop and investigate |
| R16 | Account frozen | 2 banking days | Contact the customer |
| R20 | Non-transaction account | 2 banking days | Use a different account |
| R29 | Corporate customer advises not authorised | 2 banking days | Stop and confirm authorisation |

There are more than 80 codes in total. These cover most returns a business will see.

## How long can a payment be returned?

Most returns must be sent by the receiving bank within two banking days of the settlement date. The exception is unauthorised debits to consumer accounts (R05, R07, R10, R11 and similar), which can be returned up to 60 calendar days after settlement. That is why a business collecting from consumers by ACH debit can see money disappear weeks after it seemed settled.

## Can you retry a returned payment?

Only some. Nacha rules let you reinitiate an entry returned as R01 or R09 up to two more times, within 180 days of the original settlement. For other codes, you can reinitiate only after you have fixed the reason, such as new account details or a new authorisation. Retrying an unauthorised return without fixing it breaks the rules.

## What return rates does Nacha watch?

| Return type | Threshold |
|---|---|
| Unauthorised returns (R05, R07, R10, R11, R29, R51) | 0.5% |
| Administrative returns (R02, R03, R04) | 3.0% |
| All debit returns | 15.0% |

An originator over these levels gets inquiries from its bank and Nacha, and may lose the ability to send ACH debits. For businesses collecting subscriptions, a rising R10 rate is often the first sign of a fraud problem or unclear billing descriptors.

## How do you reduce returns?

1. Validate account numbers before the first debit, using account validation or a prenote.
2. Get clear written or recorded authorisation and keep it.
3. Use a recognisable company name on the entry, so customers know the debit.
4. Send notices before debits change amount or date.
5. Stop retrying after the rules say to.

For outbound payments, most returns come from closed or mistyped accounts. Confirm the details with the payee and keep a record. Our guide to [why an ACH payment is pending](/blog/why-is-my-ach-payment-pending) covers the timing side, and [ACH debit vs ACH credit](/blog/ach-debit-vs-ach-credit) explains which one you are sending.

## Returns on a Rivet account

Rivet's [payouts screen](/payouts) shows each recipient's name and account details before a batch is approved, which is where most administrative returns can be caught before they happen.

## Questions

### What does ACH return code R01 mean?

Insufficient funds. The account did not have enough available balance for the debit. You can retry an R01 up to two times within 180 days of the original settlement date.

### What does R03 mean?

No account, or unable to locate account. The account number does not match an account at the receiving bank, or does not match the name. Check the details with the payee before sending again.

### What is the difference between R10 and R29?

Both mean the account holder says the debit was not authorised. R10 is used for consumer accounts and can be returned up to 60 days later. R29 is used for corporate accounts and must be returned within two banking days.

### Can an ACH credit be returned?

Yes. Credits get returned for closed accounts, invalid account numbers or frozen accounts. The money comes back to the sender, usually within a few business days.
