Ach Payments Payment Declined
An ACH payment "declined" in 2026 is called a return — the ACH network does not decline transactions in real-time like card networks do. Instead, the bank accepts the transaction initially and then returns it with a reason code 1–5 business days later. By the time you know it failed, the original settlement window has closed.
Why This Happens
- Configuration gaps between tools or services
- Missing integrations or manual workarounds that weren't designed to scale
- Changes in vendor behavior, pricing, or API that weren't communicated clearly
What To Check First
- Verify your current setup matches the vendor's latest documentation
- Look for recent changes — platform updates, new team members, configuration drift
- Check if the problem is consistent or intermittent (different root causes, different fixes)
When To Escalate
- The problem is costing you money or customers per week
- You've spent more than 2 hours on it without progress
- A vendor quoted you more than $500 and you're not sure if it's necessary
Dealing with this right now?
The most common ACH return reasons: R01 (insufficient funds — customer needs to add funds and retry), R02 (account closed — get updated bank details), R03 (no account found — verify routing and account numbers carefully), R04 (invalid account number — same as R03, usually a typo), R10 (customer says unauthorized — review your authorization process). For R01 and R02, contact the customer. For R10, contact your processor immediately — high R10 rates can get your ACH origination suspended.
Related Problems
Best Next Pages
Why is an ACH payment timing out or taking too long? +
ACH timeouts happen at two levels: (1) API call timeout — your code waited longer than the SDK timeout for a response. Set your HTTP timeout to 30+ seconds for ACH; ACH initiation calls are slower than card calls. (2) Actual ACH settlement timeout — standard ACH takes 1-3 business days; if it's past 5 business days, the transfer may have returned. Check your Stripe/Plaid/payment processor dashboard for the return code. Common returns: R01 (insufficient funds), R02 (account closed), R08 (payment stopped by customer).
How do I fix ACH payment declined or failed? +
ACH failure codes and fixes: R01 (insufficient funds) — retry after payday or switch to card. R02 (account closed) — request updated bank info. R03/R04 (invalid account/routing number) — verify with micro-deposit validation before charging. R07/R10 (authorization revoked or unauthorized) — customer dispute; stop charging and contact the customer. R29 (corporate customer advises not authorized) — requires explicit authorization re-confirmation. For all codes, check your processor's ACH return dashboard first.
What's the difference between ACH and wire transfer for business payments? +
ACH: batch-processed, 1-3 business days, free or $0.80-1.50 per transaction, reversible for 60 days (consumer) or 2 business days (business). Wire: real-time settlement, $15-35 per transaction, irreversible once sent, good for large B2B payments where you need same-day confirmation. For regular invoices under $50K where delivery speed isn't critical, ACH is the correct choice. For large one-time transfers where you need proof of receipt immediately, wire.
How do I set up ACH payments for my San Diego business? +
ACH setup options: (1) Stripe (simplest) — enable ACH Direct Debit in your Stripe Dashboard, use Stripe.js to collect bank details with instant verification via Plaid, charge via the PaymentIntent API. (2) Dwolla — lower fees at volume but more complex setup. (3) Your business bank — most banks offer ACH origination through their treasury portal, but setup takes 2-4 weeks. For San Diego service businesses, Stripe ACH is the fastest path with the least compliance overhead.
How do I prevent ACH payment fraud or unauthorized returns? +
ACH fraud prevention: (1) Use micro-deposit verification or instant bank verification (Plaid) before the first charge — eliminates most R03/R04 returns. (2) Get explicit signed authorization (ACH authorization form) with the exact charge amount or recurring terms. (3) Email the customer a payment confirmation before each charge — reduces R07/R10 disputes. (4) Monitor your return rate — NACHA rules require under 0.5% return rate for unauthorized returns; exceeding it risks losing ACH access.