Skip to main content

ACH Return Codes

This page covers ACH return codes, the R numbers like R01 or R10 that come back when a bank debit fails. Looking for a declined card or a card chargeback?

Check what the payment ran on. ACH pulls from a routing and account number, and every return code here starts with R. On a card, 05 or 51 means it was declined at the sale, and 10.4 or 4853 means a dispute is taking money back.

TL;DR
  • ACH return codes tell you why a bank transfer failed and whether you're allowed to retry
  • R01 insufficient funds is the common one worth retrying. Wait 2-3 days
  • R02 account closed, R03 no account found and R10 customer unauthorized are terminal. Stop and fix the underlying data
  • R10 is the ACH equivalent of a fraud chargeback. Investigate it, don't just re-run the debit
  • NACHA caps you at 0.5% unauthorized returns, 3.0% administrative and 15% overall. Blow the 0.5% and you can lose ACH origination entirely

A bank pushed your debit back and handed you a code. It tells you why, and whether you're allowed to try again. Get that second part wrong and NACHA starts counting. Most returns are boring account problems you can fix. A few mean stop, and those are the ones that cost you ACH.

Quick Reference: Most Common Returns

CodeNameRetry?Action
R01Insufficient FundsYes (2-3 days)Wait and retry
R02Account ClosedNoRequest new account
R03No Account FoundNoVerify account info
R10Customer UnauthorizedNoStop immediately, investigate
R20Non-Transaction AccountNoRequest different account

Administrative Returns (R01-R17)

These are account and routing problems, and most of them are fixable. Correct the details or wait for the funds and the debit usually clears next time. One on its own isn't a fraud signal. A pattern of them is.

CodeDescriptionRetry?Typical CauseAction
R01Insufficient FundsYes*Balance too lowRetry in 3-5 days (payday timing)
R02Account ClosedNoAccount no longer existsRequest new account from customer
R03No Account/Unable to LocateNoWrong account numberVerify and correct account info
R04Invalid Account NumberNoMalformed account numberCorrect account number format
R05Unauthorized Debit (consumer)NoCustomer disputes authorizationStop debits, investigate
R06Returned per ODFI's RequestMaybeBank-initiated returnContact your bank for details
R07Authorization RevokedNoCustomer canceled permissionStop debits, obtain new auth
R08Payment StoppedNoCustomer issued stop paymentContact customer directly
R09Uncollected FundsYes*Check deposited, not yet clearedRetry in 5-7 days
R10Customer Advises Not AuthorizedNoDisputes authorizationStop immediately, investigate
R11Check Truncation Entry ReturnNoCheck conversion issueProcess/technical problem
R12Branch Sold to Another DFINoBank merger/saleUpdate routing number
R13Invalid ACH Routing NumberNoRouting number doesn't existCorrect routing number
R14Representative Payee DeceasedNoAccount representative diedUpdate account
R15Beneficiary/Account Holder DeceasedNoAccount holder diedAccount must be closed
R16Account FrozenNoLegal hold on accountCustomer must resolve with bank
R17File Record Edit CriteriaNoACH file formatting errorFix technical submission

*Retry with appropriate delay (3-5 business days minimum, after funds expected)


Unauthorized Returns (R05, R07, R10, R29)

Critical: These aren't administrative problems, they're accusations. Too many and your ODFI can pull your ACH origination.

Consumer ACH Authorization Disputes

CodeDescriptionWindowWhat Happened
R05Unauthorized Debit Entry60 calendar daysCustomer says they never authorized
R07Authorization Revoked60 calendar daysCustomer canceled recurring authorization
R10Customer Advises Not Authorized60 calendar daysCustomer disputes authorization

Corporate ACH Authorization Disputes

CodeDescriptionWindowWhat Happened
R29Corporate Customer Advises Not Authorized2 banking daysBusiness customer disputes

Handling Unauthorized Returns

  1. Stop all debits immediately. Don't retry. Ever.
  2. Review your authorization records:
    • Do you have signed ACH authorization?
    • Did customer consent via web/phone?
    • Is the authorization date before the transaction?
  3. Investigate the customer:
    • First transaction or established?
    • Other returns in history?
    • Fraud pattern indicators?
  4. Document everything - you'll want the authorization, the timestamps, the whole trail
  5. Respond to the ODFI if they ask for records
  6. Update your fraud rules if you see a pattern

Unauthorized Return Prevention

PreventionImplementation
PrenotesSend $0 verification before first debit
Micro-depositsVerify account ownership with small deposits
Bank verification APIsInstant account validation (Plaid, MX, etc.)
Clear authorization languageExplicit consent, saved and timestamped
Email confirmationSend receipt immediately after authorization

Extended Returns (R20-R39)

CodeDescriptionRetry?Notes
R20Non-Transaction AccountNoSavings account with transaction limits
R21Invalid Company IdentificationNoFix your company ID in file
R22Invalid Individual ID NumberNoFix customer ID in record
R23Credit Entry Refused by ReceiverNoCustomer refused incoming payment
R24Duplicate EntryNoAlready processed this transaction
R25Addenda ErrorNoFix addenda record format
R26Mandatory Field ErrorNoRequired field missing/invalid
R27Trace Number ErrorNoFix trace number
R28Routing Number Check Digit ErrorNoLast digit of routing number wrong
R29Corporate Customer Advises Not AuthorizedNoCorporate unauthorized (2-day window)
R30RDFI Not Participant in Check TruncationNoBank doesn't support this
R31Permissible Return EntryMaybeCCD/CTX specific return
R32RDFI Non-SettlementNoBank settlement issue
R33Return of XCK EntryNoCheck conversion return
R34Limited Participation DFINoBank has restrictions
R35Return of Improper Debit EntryNoWrong SEC code for debit
R36Return of Improper Credit EntryNoWrong SEC code for credit

Return Timeframes

Standard ACH

Return CategoryWindowFrom When
Administrative (R01-R04, etc.)2 banking daysSettlement date
Unauthorized Consumer (R05, R07, R10)60 calendar daysSettlement date
Unauthorized Corporate (R29)2 banking daysSettlement date
Extended (most R20-R39)2 banking daysSettlement date

Same-Day ACH Returns

Same-Day ACH compresses everything. You're down to end of day, or the next banking day on the late window.

Settlement WindowReturn Deadline
10:30 AM ETEnd of day
2:45 PM ETEnd of day
4:45 PM ETNext banking day

Retry Strategies

When to Retry

Return CodeRetry Recommended?Optimal Wait Time
R01 (NSF)Yes (limited times)3-5 business days, align with payday
R09 (Uncollected)Yes5-7 business days
R02-R04NoCorrect info first
R05, R07, R10NeverDon't retry
R16 (Frozen)MaybeAfter customer confirms resolved

NACHA Retry Rules

RuleRequirement
Max retries for NSF2 retries per debit (3 total attempts)
Same amountRetry must be for original amount
TimingAt least 2 business days between attempts
Consumer notificationRequired if retry fee charged

Smart Retry Timing

StrategyWhen to Use
Payday alignmentRetry on 1st, 15th of month
End of weekFriday afternoon (deposits cleared)
Customer confirmationAsk customer to confirm funds available
Staggered retryDay 3, then Day 7 if still failing

Retry Decision Tree


Fraud Indicators

High-Risk Return Patterns

PatternRisk LevelWhat It Suggests
Multiple R10s from same accountCriticalAuthorization fraud or dispute abuse
R02/R03 after prior successHighAccount takeover or closed in panic
R05 after legitimate patternMediumFriendly fraud or buyer's remorse
Velocity of R01sMediumFinancial stress or testing accounts
New account + immediate returnHighFraudulent account linkage

Red Flags

  • First transaction returns R10 (never authorized)
  • Same bank info used across multiple accounts
  • Returns after long dormancy
  • Pattern of small tests then large returns
  • Customer provides incorrect info multiple times

Fraud Response

IndicatorAction
First R10 everInvestigate, may be one-off
Second R10 same customerBlock customer
R10 + other fraud signalsBlock immediately, investigate
Pattern across customersCheck for common vector

ACH Return Fee Liability

Every return costs somebody a fee. R01 usually lands on the customer. The rest you're eating.

Fee Structure by Return Type

Return TypeYour FeeCustomer ImpactWho Typically Pays
R01 (NSF)$2-15 ODFI feeMay incur bank feeUsually passed to customer
R02/R03 (Account issues)$2-15 ODFI feeNoneMerchant absorbs
R10 (Unauthorized)$5-25 + potential penaltiesRefund issuedMerchant absorbs
R29 (Corp unauthorized)$5-25 ODFI feeRefund issuedMerchant absorbs

Fee Sources

Fee TypeWho ChargesRange
ODFI return feeYour bank$2-15 per return
Processor return feeYour processor$0-10 per return
NACHA violation penaltyNACHA (via ODFI)$5-100+ for rule violations
Excessive return feeODFI/NACHATriggered above thresholds

NACHA Return Rate Thresholds

Return CategoryThresholdConsequence
Overall unauthorized (R05/R07/R10/R29)> 0.5%ODFI notification, potential action
Administrative> 3.0%ODFI notification
Overall return rate> 15%Potential origination suspension

Critical: Cross 0.5% unauthorized and you can lose ACH origination. That's not a fine you pay, that's ACH switched off.

Passing Fees to Customers

ConsiderationGuidance
R01 (NSF) feesOften passed to customer; check state law
R10 (Unauthorized) feesNever pass to customer; you're at fault
Disclosed in termsFee passing must be disclosed upfront
State law limitsSome states cap NSF fee pass-through
Customer relationshipFirst-time courtesy waiver builds goodwill

Fee Mitigation Strategies

StrategyImpact
Pre-validationReduce R01-R04 with account verification
Clear authorizationReduce R10/R29 with strong consent
Smart retry timingRetry R01 at strategic times (paydays)
Customer notificationContact before retry to confirm funds
Account update promptsProactive requests when issues appear

Same-Day ACH Considerations

Same-Day ACH mostly reuses the same return codes. What's different is the speed and the per-transaction ceiling.

Same-Day ACH Return Codes

ScenarioReturn Code
RDFI doesn't support same-dayR31 (Permissible Return Entry)
Same-day rejectedOriginal code + same-day indicator

Same-Day ACH Limits

LimitAmount
Per-transaction limit$1,000,000
Return windowSame day or next banking day

When Same-Day ACH Returns Faster

Same-day ACH can return the same business day for:

  • Insufficient funds
  • Account issues
  • Format errors

Operational impact: You can know the same day instead of waiting 2+ days. That's days back to chase the customer.


Account Validation Best Practices

The cheapest return is the one you never get. Validate the account before you debit it.

Pre-Transaction Validation

MethodWhat It ChecksR Codes Prevented
PrenoteAccount exists, accepts debitsR02, R03, R04, R13
Micro-depositsAccount active, customer has accessR02, R03, ownership
Bank verification APIAccount status, ownershipR02, R03, R20
Balance checkAvailable balanceR01 (not guaranteed)

Validation Trade-offs

MethodCostSpeedCoverage
PrenoteFree3-4 daysLimited
Micro-deposits~$0.052-3 daysGood
Instant verification$0.10-0.50InstantBest

SEC Codes and Returns

Your SEC (Standard Entry Class) code sets how long the customer has to dispute. That's 60 days on consumer codes and 2 banking days on corporate.

SEC CodeUse CaseUnauthorized Window
PPDPersonal (recurring)60 days
WEBWeb-initiated60 days
TELTelephone-initiated60 days
CCDCorporate2 days (R29)
CTXCorporate trade exchange2 days

Using wrong SEC code: Can result in R35 (Improper Debit) or R36 (Improper Credit).


Reporting and Monitoring

Key Metrics to Track

MetricTargetAction If Exceeded
Overall return rate< 3%Investigate patterns
Unauthorized return rate< 0.5%Critical: immediate action
R01 rate< 2%Review customer quality
R10 rate< 0.25%Review authorization process

Monthly ACH Health Report

Track monthly:

  • Total return count and rate
  • Return breakdown by code
  • Unauthorized return rate
  • Top returning accounts
  • Return trend (improving/worsening)

Scale Callout

Your ACH volume decides what's worth building here.

ACH VolumeFocus
Under $50k/moUse basic validation. Watch unauthorized rate.
$50k-$250k/moImplement instant verification. Track metrics monthly.
$250k-$1M/moOptimize retry logic. Automate monitoring.
Over $1M/moAdvanced fraud rules. Dedicated ACH operations review.

Next Steps

New to ACH returns?

  1. Learn ACH operations - Bank payment management fundamentals
  2. Understand bank transfers - ACH fundamentals and risk

Reducing return rates?

  1. Implement identity verification - Account validation methods
  2. Set up velocity rules - Pattern detection for fraud prevention

Investigating unauthorized returns?

  1. Review Regulation E - Consumer protection requirements
  2. Understand first-party fraud - Authorization fraud patterns
  3. Check AML basics - Compliance requirements