ACH returns explained

Why ACH payments come back, how long they can take, and what each of the most common return codes means for your platform.

A stack of cream and blush envelopes tied with string

ACH is cheap and reliable, but it has one feature that surprises every team the first time: payments can come back days after they look complete. Here is what you need to know about returns before they show up in your ledger.

What is an ACH return?

A return happens when the receiving bank refuses or reverses an ACH entry. The bank sends the payment back through the network with a return code that explains why. Most returns arrive within two banking days, but some, like unauthorized debit claims from consumers, can arrive up to sixty days later.


The return codes you will see most

R01: Insufficient funds

The account did not have enough money to cover the debit. This is by far the most common return. You can usually retry, but Nacha rules limit you to two retries within 180 days of the original entry.

R02: Account closed

The account existed but has since been closed. Retrying will not help. Ask the user to link a new account.

R03: No account or unable to locate account

The account number does not match an open account at the receiving bank. This often points to a typo, and sometimes to fraud.

R04: Invalid account number

The account number fails the bank’s format checks. Validate account and routing numbers before you submit to catch these early.

R05: Unauthorized debit to a consumer account

The consumer says they never authorized a debit that used a corporate entry class. These count against your unauthorized return rate.

R07: Authorization revoked

The customer authorized the debit, then told their bank they took that permission back. Stop debiting this account until you have new authorization.

R08: Payment stopped

The customer placed a stop payment on this specific debit. Treat it like a revoked authorization and contact the user.

R10: Customer advises not authorized

The account holder says they never authorized the debit at all. Like R05, this is an unauthorized return and is closely watched.

R16: Account frozen

The receiving bank has frozen the account, often for legal reasons. Do not retry.

R20: Non-transaction account

The account cannot receive ACH debits, typically a savings account with transfer limits. Ask for a checking account instead.

R29: Corporate customer advises not authorized

The business version of R10. A company says the debit to its account was not authorized.


Why return rates matter

Nacha sets thresholds for how many returns an originator can have. Today the limits are 0.5% for unauthorized returns, 3% for administrative returns such as R02, R03 and R04, and 15% for all returns combined. Go above them and your bank partner is required to step in, which can mean reviews, fees or losing access to ACH debits.

How to keep returns low

  • Verify accounts first: Confirm ownership with instant verification or micro deposits before the first debit.
  • Check balances: For large debits, a balance check before you submit avoids most R01 returns.
  • Write clear authorizations: Users who understand what they agreed to rarely dispute it.
  • Use a recognisable descriptor: If people do not recognise the name on their statement, they call their bank.
  • Act on codes automatically: Stop debiting closed or revoked accounts the moment the return arrives.

How Backspin helps

Every return arrives as a webhook with the original payment, the code and a plain language reason attached. Your dashboard tracks return rates against Nacha thresholds in real time, and our retry rules respect the limits for you, so a failed debit never turns into a compliance problem.

Returns are part of ACH. Planning for them is what keeps them small.