Guide
How to Accept ACH Payments in WooCommerce
Three ways to accept ACH bank payments in WooCommerce: Stripe ACH Direct Debit, Plaid Auth with a processor, or Plaid Transfer. Costs, timing and rules.
By the PluginLoom teamLast updated 13 sources
You can accept ACH payments in WooCommerce three ways: Stripe's ACH Direct Debit through the WooCommerce Stripe gateway, Plaid Auth paired with a payment processor, or Plaid Transfer, where Plaid moves the money itself. All three debit a US bank account, take days rather than seconds to confirm, and must follow Nacha's rules for online debits. This guide compares the options, explains timing and costs, and gives a setup checklist.
What is an ACH payment in WooCommerce?#
An ACH payment is a debit pulled from the shopper's US bank account over the ACH network instead of a card network. In WooCommerce it works like any other gateway: the shopper picks bank payment at checkout, authorizes the debit, and the order updates when the payment rail reports success or failure.
Three differences from cards shape the whole setup. Stripe lists them in its ACH Direct Debit docs (opens in a new tab):
- The customer must authorize the payment terms (a mandate).
- The bank account must be verified.
- Confirmation is delayed, so a payment can fail after the order is placed.
What are your options?#
You have three practical routes, and they differ mainly in who verifies the account and who sends the debit.
| Option | Account verification | Who sends the debit | Region | What you need |
|---|---|---|---|---|
| WooCommerce Stripe gateway with ACH | Stripe Financial Connections or micro-deposits | Stripe | US bank accounts | A Stripe account with ACH Direct Debit enabled |
| Plaid Auth + processor partner | Plaid Link | Your processor, such as Stripe or Dwolla | US, plus Canada through some partners | Plaid Production access and a processor account |
| Plaid Transfer | Plaid Link | Plaid | US only | Plaid Production access and an approved Transfer Application |
The WooCommerce Stripe extension lists "ACH" among its additional payment methods (opens in a new tab), so if you only need Stripe ACH and already use that extension, it may be enough. WooCommerce notes that additional payment methods "may have requirements that need to be met before they'll be shown to customers," and Stripe may need to approve your use of a method.
The Plaid routes make sense when you want Plaid's account connection, when you already have a Plaid account, or when you want Plaid data such as balances and ownership checks in the same flow. Plaid's Auth docs (opens in a new tab) say Auth "must be used with a payment processor, either a Plaid partner or a third party." Its partners page (opens in a new tab) lists Dwolla, Square, ACHQ, Adyen, Checkbook, Stripe, Modern Treasury and Finix among others. Plaid Transfer (opens in a new tab) is a "flexible multi-rail payment platform" for payers and recipients in the US.
How long do ACH payments take?#
Plan for days, not seconds. Stripe says ACH Direct Debit "can take up to 4 business days to receive acknowledgement of success or failure."
| Stripe settlement option | Timing | Cutoff |
|---|---|---|
| Standard (T+4) | 4 business days from payment creation | 21:00 US/Eastern |
| Faster (T+2) | 2 business days from payment creation | 14:00 US/Eastern, eligible US users only |
Plaid Transfer supports several rails: ACH, RTP, RfP, wire and FedNow, with Same Day ACH as a fallback (Transfer docs (opens in a new tab)). Which ones you can use depends on your Transfer approval.
For WooCommerce, the timing means you should hold the order in an "on hold" state until the rail confirms the payment. WooCommerce's Payment Gateway API (opens in a new tab) handles later updates through a WC-API callback URL, so the gateway can change the order status when the confirmation webhook arrives.
What does ACH cost in WooCommerce?#
You pay your processor, and if you use Plaid, you also pay Plaid. As listed on October 23, 2026, Stripe's pricing page (opens in a new tab) shows:
| Stripe item | Listed price |
|---|---|
| ACH Direct Debit | 0.8%, $5.00 cap |
| Financial Connections instant bank account verification | $1.50 per successful instant verification |
| Micro-deposit verification | Free |
| Financial Connections balances | $0.10 per successful API call |
Plaid's public pricing page lists plans (Pay as You Go, Growth and Custom) but no prices. Its billing docs (opens in a new tab) explain the models:
- Auth: a one-time fee per connected account (Item).
- Balance and Signal Transaction Scores: a flat fee per successful request.
- Transfer: a one-time Auth fee per Item, a per-request Signal or Balance fee, and a fee per successful transfer, even if it is later reversed.
- Sandbox: always free.
Your contract with Plaid sets your actual rates. See our Plaid pricing guide for how the models add up.
What ACH rules apply to online stores?#
Nacha, which writes the ACH rules, sets several requirements that apply to online stores taking consumer debits. This section is general information, not legal or financial advice; ask your bank or processor how they apply to you.
Account validation for WEB debits#
Online consumer debits are called WEB debits. Nacha's WEB debit rule (opens in a new tab), effective March 19, 2021, says the originator's fraud detection system "must, at a minimum, validate the account to be debited." That applies to the first use of an account number and to any later change. Acceptable methods include prenotifications, micro-transactions, validation services and API based tools. Ownership checks are not required by the minimum standard.
Linking an account through Plaid or Stripe Financial Connections is one way stores meet this. Our guide on bank account verification for WordPress covers the options.
Fraud monitoring for all originators#
Nacha's Fraud Monitoring Phase 2 (opens in a new tab) took effect June 19, 2026, with the practical date of Monday, June 22, 2026 because June 19 is a federal holiday. It covers "all non-Consumer Originators, TPSPs, and TPSs that did not fall under the requirement threshold for Phase 1." They must set up risk-based processes reasonably intended to identify entries that are unauthorized or authorized under false pretenses, and review those processes at least once a year. Nacha says the rules do not require screening every entry one by one.
Tools like Plaid Signal can be part of those processes. Plaid says Signal Transaction Scores (opens in a new tab) estimate how likely a debit is to be returned, and you set rules in the Dashboard to approve or review payments.
Protecting stored account numbers#
Nacha's data security rule (opens in a new tab) requires covered parties with 2 million or more ACH entries a year to render account numbers "unreadable when stored electronically." Most small stores fall below that threshold, but the safer habit is the same for everyone: do not keep raw account numbers in WordPress. Processor tokens such as Stripe customers or Plaid processor tokens avoid storing them at all.
Mandates#
Stripe says ACH debits need customer authorization first. When you use Stripe Checkout or the Payment Element, Stripe shows the mandate text and records acceptance for you. If you build a custom form, you are responsible for showing it. For recurring debits, Stripe says you must disclose how amounts are calculated and give at least 7 calendar days notice if you change the timing.
How do failures, disputes and refunds work?#
ACH payments can fail after the order, and disputes are final. Stripe's ACH docs (opens in a new tab) describe these limits:
- Failures: debits can fail for insufficient funds, an invalid account number or blocked debits. If funds were already in your Stripe balance, Stripe removes them.
- Disputes: customers can generally dispute for up to 60 calendar days on a personal account, or two business days on a business account. You cannot submit evidence to contest a final ACH dispute.
- Refunds: full refunds only, up to 180 days after the payment, taking up to 3 business days.
- Retries: Stripe Billing can retry an ACH debit that failed for insufficient funds up to 2 times, no more than 40 days after the first attempt.
Plaid Transfer refunds can be partial, up to 10 per transfer, and can be issued up to 180 days after the transfer was created.
How do you set up ACH payments in WooCommerce?#
Pick your route, then work through the setup in test mode before you go live.
- Check your server. WooCommerce recommends (opens in a new tab) PHP 8.3 or greater, WordPress 6.9 or greater and HTTPS.
- Choose the rail. Stripe gateway alone, Plaid Auth with a processor, or Plaid Transfer.
- Open the accounts. Stripe with ACH Direct Debit enabled, and Plaid if you use it. Plaid's Sandbox is free.
- Request approvals. Plaid Production access, OAuth registration for US banks, and the Transfer Application if needed.
- Install the gateway plugin and enter your keys.
- Set the order flow. Orders wait "on hold" until the confirmation webhook arrives.
- Add risk checks. Balance or Signal before the debit if you use Plaid.
- Write the mandate and refund terms into checkout and your store policies.
- Test failures, not only success, including a returned payment and a refund.
- Go live with a small order you place yourself.
Where does BankBridge fit?#
BankBridge is a WordPress plugin that connects your site to Plaid, built to work with WordPress, WooCommerce, Elementor, MemberPress and more. If you want the Plaid route for ACH in WooCommerce, check the BankBridge WooCommerce docs for how it fits your checkout, and follow the going live checklist. You use your own Plaid account, and Plaid bills its fees to you separately. BankBridge licenses include a year of updates and support, with a 14-day refund window and secure checkout by Stripe.
Sources#
Checked October 23, 2026.
- WooCommerce: Stripe additional payment methods (opens in a new tab)
- WooCommerce: Payment Gateway API (opens in a new tab)
- WooCommerce: server requirements (opens in a new tab)
- Stripe Docs: ACH Direct Debit (opens in a new tab)
- Stripe pricing (opens in a new tab)
- Plaid Docs: Auth (opens in a new tab)
- Plaid Docs: Auth payment partners (opens in a new tab)
- Plaid Docs: Transfer (opens in a new tab)
- Plaid Docs: Signal (opens in a new tab)
- Plaid Docs: Billing (opens in a new tab)
- Nacha: Supplementing Fraud Detection Standards for WEB Debits (opens in a new tab)
- Nacha: Fraud Monitoring Phase 2 (opens in a new tab)
- Nacha: Supplementing Data Security Requirements (opens in a new tab)
This guide is general information, not legal or financial advice.
Plaid is a trademark of Plaid Inc. BankBridge is an independent plugin and is not affiliated with or endorsed by Plaid.
Frequently asked questions
Can WooCommerce accept ACH payments?
Yes, through a payment gateway. The WooCommerce Stripe Payment Gateway lists ACH as an additional payment method, and Plaid based plugins can collect bank details through Plaid Auth with a processor or through Plaid Transfer.
How long does an ACH payment take to clear?
With Stripe, ACH Direct Debit can take up to 4 business days to confirm success or failure. Standard settlement is 4 business days, and eligible US users can turn on 2 business day settlement.
Do I have to verify the bank account before an ACH debit?
For online consumer debits, Nacha requires the originator's fraud detection system to validate the account to be debited on first use and when the account number changes. Methods include micro-transactions, validation services and API based tools.
How long can a customer dispute an ACH payment?
Stripe says customers can generally dispute an ACH Direct Debit for up to 60 calendar days after a debit on a personal account, or up to two business days for a business account.
What does ACH cost compared with cards?
As listed on October 23, 2026, Stripe shows ACH Direct Debit at 0.8% with a $5.00 cap. Plaid lists no public prices and bills its own fees separately under the plan you sign up for.
Sources
The date shows when we last checked that the source still says what we say it says.
- WooCommerce: Stripe additional payment methods, woocommerce.com. Checked 2026-10-23
- Stripe Docs: ACH Direct Debit, docs.stripe.com. Checked 2026-10-23
- Stripe pricing, stripe.com. Checked 2026-10-23
- Plaid Docs: Auth, plaid.com. Checked 2026-10-23
- Plaid Docs: Auth payment partners, plaid.com. Checked 2026-10-23
- Plaid Docs: Transfer, plaid.com. Checked 2026-10-23
- Plaid Docs: Signal, plaid.com. Checked 2026-10-23
- Plaid Docs: Billing, plaid.com. Checked 2026-10-23
- Nacha: Supplementing Fraud Detection Standards for WEB Debits, nacha.org. Checked 2026-10-23
- Nacha: Fraud Monitoring Phase 2, nacha.org. Checked 2026-10-23
- Nacha: Supplementing Data Security Requirements, nacha.org. Checked 2026-10-23
- WooCommerce: Payment Gateway API, developer.woocommerce.com. Checked 2026-10-23
- WooCommerce: server requirements, woocommerce.com. Checked 2026-10-23