Automated Clearing House (ACH), sometimes referred to as e-check or direct debit, is a popular bank transfer APM in the United States. Using ACH, funds are electronically withdrawn from the shopper's bank account and deposited into the merchant's bank account.
While common for automatic bill payment and direct deposit, ACH is quickly growing as a convenient alternative to credit and debit cards for B2B businesses. ACH eliminates payment failures due to expired cards or exceeded transaction limits, and offers lower processing fees than many credit card transactions.
How It Works
After enabling ACH in your payment gateway, shoppers that meet the requirements will see ACH Direct Debit at the Payment step of checkout. Once selected, your shoppers can enter their bank account information in the provided fields to complete checkout.
After an order has been placed, it will appear in your control panel as gateway (ACH Direct Debit) or ACH Direct Debit (via gateway) in the Payment Method field. Orders completed using ACH will share the same fulfillment process as typical orders for most gateways.
Other gateways, such as Braintree, require several days to validate ACH transactions. In this case, orders come into your control panel in the Awaiting Payment status until the transaction is validated. Once completed, the order’s status is automatically updated to Awaiting Fulfillment, and is ready to process.
Stripe Order Flow
Stripe has a unique order flow for their ACH payment method that we'll cover in this section.
Once you've enabled ACH Direct Debit via Stripe, shoppers are directed to the ACH payment page after selecting it at checkout. There, shoppers can complete the order by logging into their bank account or by manually entering their bank account number and routing number.
Orders placed using ACH via Stripe appear in your control panel as US Bank Account (via Stripe) in the Payment Method field. If the shopper logs into their bank account to place their order, payment is captured and the order arrives with a status of Awaiting Fulfillment.
If a shopper manually enters their bank account details during the order flow, the order will appear as Awaiting Payment in your control panel. Stripe will send one or two small deposits, called microdeposits, in order to verify banking credentials and confirm payment. Once the shopper completes verification, the order status will automatically update to Awaiting Fulfillment, indicating that payment was successful and the order can be processed.
To complete bank verification, shoppers must sign into their bank account to locate any ACH credits sent by Stripe. Their order confirmation email will contain a link to the microdeposit verification page where they can enter details about the deposits. Once the correct details have been entered, the bank account is marked as verified and the transaction is completed.
Microdeposits typically appear in a bank account after one business day, but can take up to two business days if the order was placed after the cutoff time specified by your settlement method.
There are two types of microdeposits used by ACH via Stripe:
- Amount-based — Stripe issues two small ACH credits to the shopper's bank account. The shopper enters the values of these credits in the verification page to confirm that they own the bank account. For example, if Stripe issues two credits of $0.25 and $0.12 to the shopper's bank account, the shopper would enter 25 and 12 on the verification page.
- Descriptor code — Stripe issues a single ACH credit for $0.01 to the shopper's bank account with a six-character code in the statement descriptor. The shopper enters the last four characters of the code on the verification page to confirm that they own the bank account. For example, if Stripe issues a credit with SM13G4 in the statement descriptor, the shopper would enter 13G4 in the verification page
Descriptor code microdeposits are the default verification method. However, if the shopper enters a routing number for a bank that doesn't properly render the statement descriptor, Stripe will then use amount-based microdeposits instead.
Shoppers receive the microdeposit verification link in your store's order confirmation email, but your Stripe account can also be configured to send separate verification emails. To prevent duplicate verification emails, go to Email settings in the Stripe dashboard and disable Stripe emails.
Requirements and Limitations
- Your store must meet the following criteria:
- Your store must be located in the United States.
- You must have USD as an available transactional currency.
- Your store must use Optimized One-Page Checkout.
- Shopper Requirements
- Shoppers must use an address in the US at checkout.
- Shoppers must have USD selected as their transaction currency.
Supported Gateways
Adyen
See Connecting with Adyen for documentation on features, requirements, and setup.
- Additional Setup
- You must request for ACH to be added to your Adyen account.
BlueSnap Direct
See Connecting with BlueSnap Direct for documentation on features, requirements, and setup.
- Additional Setup
- Before you can offer ACH at checkout, you must configure Instant Payment Notifications (IPN).
- Enable ACH in your BlueSnap account to make it available on your store.
- Limitations
- Delayed capture is not supported.
- If you issue a refund the same day as the initial transaction, the transaction becomes a void, rather than a refund.
Braintree
See Connecting with Braintree for documentation on features, requirements, and setup.
- Additional Setup
- Follow the instructions for requesting and enabling ACH in your Braintree account.
- You must have a Stencil theme applied to your storefront.
- Limitations
- Customers can store their ACH information during the checkout flow only.
- The billing address associated with the bank account cannot be edited on the My Account page.
Stripe
See Connecting with Stripe for documentation on features, requirements, and setup.
- Additional Setup
- You must be on the latest version of Stripe to offer ACH Direct Debit.
- You cannot sell any items prohibited by Stripe.
- Check the box next to ACH Direct Debit in Stripe Settings within your BigCommerce control panel.
- If you process millions annually using Stripe, you may need to go through an additional credit underwriting process. We recommend contacting Stripe's Risk team in advance so that they can review your business model, billing practices, product usage, processing history, and financial stability in order to avoid any disruption after going live.
- Payout timing and transaction fees differ based on your settlement and payout methods. See our FAQ for more information.
- Limitations
- Manual capture is not supported.
- Transactions cannot be voided from the control panel.
FAQ
Can my customers save their ACH bank credentials to their storefront account?
Yes, stored ACH direct debit profiles are supported with BlueSnap Direct and Braintree. To learn more about offering stored direct debit profiles, see Enabling Stored Payment Methods.
Are recurring payments supported on ACH?
Yes, recurring payments on ACH are supported by the Braintree payment gateway.
What are the settlement times for ACH via Stripe?
Stripe offers two options for ACH settlement times: Standard Settlement and Faster Two-Day Settlement. Once the transaction is settled, the money will be available in your Stripe account. The transaction fee for Standard settlement via ACH is 0.8% capped at $5, while the transaction fee for Two-Day settlement is 1.2%.
If your account is in good standing, you will typically be eligible for Two-Day settlement after processing on Stripe for a minimum of 120 days. You can check eligibility and activate this option on the payment method settings page in the Stripe dashboard.
If your Stripe account is not pre-approved, contact Stripe Support so that they can assess your eligibility and, if eligible, make the feature available for you.
With Two-Day settlement timing, payments under $200,000 submitted before 2pm EST will be processed on the Same Day ACH schedule. Payments submitted above this order value or after this cutoff time will be processed the next day.
Once an ACH transaction is settled in my Stripe account, when will the funds show up in my bank account?
Stripe offers two types of payout timings once the once the transaction is settled in a Stripe account:
- Standard — Whether it is manual or automated (daily, weekly, monthly), it will take 2 days for the funds to show up in your bank account once they have been captured in Stripe.
- If you are using Standard settlement, it will take four days for a transaction to settle and two days for payout, for a total of six days.
- If you are using Two-Day settlement, it will take two days for a transaction to settle and two days for payout, for a total of four days.
- Instant Payouts — With Instant Payouts, you can send funds to supported debit cards or bank accounts in the US, typically within 30 minutes. You can request instant payouts any day or time, including the weekends and holidays.
- Instant Payouts have a transaction fee of 1%.
- You can check your eligibility for Instant Payouts in the Stripe dashboard. If your account is eligible for Instant Payouts, you can add supported banks in your Stripe dashboard. The following restrictions apply in the US when using Instant Payouts:
- You must designate a non-prepaid Visa, Mastercard or Discover card issued by a US bank.
- Individual payouts are limited to a $.50 minimum and $9,999 maximum.
- A maximum of 10 Instant Payouts per day.
What is the fee for refunding ACH orders via Stripe?
The maximum refund fee for an ACH Direct Debit transaction in Stripe is $5.00. A full refund will incur the maximum fee, but a partial refund will incur prorated fees.
Additional Resources
- Connecting with Braintree
- ACH Direct Debit (Adyen Docs)
- ACH/ECP (BlueSnap Support Guides)
- Payment Methods | ACH Direct Debit (Braintree Developer Docs)
- ACH Direct Debit Payments (Stripe Documentation)