ACH/ECP

Learn how to process ACH/ECP payments with the BlueSnap APIs.

ACH (Automated Clearing House), sometimes referred to as electronic check processing, e-Check, or ECP, is an alternative to credit card payments. Money is electronically withdrawn from the shopper’s bank account and then deposited into the merchant’s own bank account. This payment method is supported for US transactions.

BlueSnap's Secured Payment Collector allows you to securely collect your shopper's sensitive banking details for ACH payments. This feature consists of discrete input fields that give you complete control over the look and feel of your checkout form while giving customers the seamless experience of staying on your website. Visit the guide for complete implementation details.

ACH is also supported in the BlueSnap Extended API .

Benefits

  • Boost your sales — Reach additional shoppers who do not use credit cards or other payment methods.
  • Eliminate paper checks — Enable customers to provide their payment information online.
  • Simplify repeat purchases — Store your shoppers' account information for easier repeat purchases, including multiple ACH accounts for a single shopper.
  • Lower transaction costs — ACH transaction costs are typically lower than credit card transaction costs.
  • Reduce failed payments — Unlike credit cards, checking accounts do not expire, and shoppers rarely switch banks.
  • Avoid credit card limits — Credit cards might impose limits that cause issues for B2B transactions and other payments for high-cost items.
  • Account validation — Ensure that the shopper's bank account exists and is in good standing before transaction processing.

Enable ECP Payments

To process ACH/ECP transactions, you must enable the ECP payment method on your BlueSnap account:

  1. Log into the Merchant Portal, and go to Checkout Page > Payment Methods.
  2. Select Show in the menu next to Electronic Check (ECP).
  3. Select Submit.

ACH Requirements

Permission to debit shopper account

You must obtain authorization and authentication, such as a digital signature (e-sign is accepted), from the shopper to debit a consumer account. The following information must be obtained from the shopper:

  • Whether the authorization is for single entry, recurring, or subsequent under a standing authorization
  • Amount of entry or method of determining the amount
  • Receiver’s name (merchant)
  • Account to be debited
  • Date of authorization
  • Instructions for how to revoke, including the time and manner for the shopper to revoke. If it's a single debit auth, the shopper must afford the merchant reasonable opportunity to act on the revocation.

For guidance, you can use this Sample Direct Payment Authorization Form.

❗️

Important

You must preserve each shopper’s authorization for 2 years and provide to BlueSnap upon request.

Copy of signed authorizations for all debits

You must provide the shopper with an electronic or hard copy of signed authorization for all debit entries that you make to the shopper's account. You can use the following samples for shopper authorizations that were electronically signed:

  • One-time authorization:
    This email confirms you have authorized [merchant name] to debit your bank account for any amount owed for your recent purchase or services or goods from us through our website and subject to our terms and conditions.
  • Recurring-transaction authorization:
    This email confirms you have authorized [merchant name] to store your bank account information and debit your bank account for recurring or periodic transactions from us through our website and subject to our terms and conditions. You may amend or cancel this authorization at any time by providing notice to us within 30 (thirty) days.

For authorizations to debit business accounts, you can use any authorization form to indicate your right to debit the account.

❗️

Important

BlueSnap imposes an obligation for those not using our Hosted Page to certify that the appropriate compliant authorization is requested, received, and retained.

To learn more about ACH obligations, review the Nacha Operating Rules.

ACH Transaction Processing

The following steps describe how BlueSnap processes an ACH transaction:

  1. When the transaction is placed, BlueSnap verifies that the shopper's bank account and routing numbers are valid.

    • If the bank account is valid, BlueSnap creates an invoice in pending status, sends the transaction to the shopper's bank for processing, and sends a Charge Pending IPN.
    • If the bank account is invalid or is not in good standing, BlueSnap returns a 10001 error in the API and does not send the transaction for processing.
  2. Within 3 days, the bank will notify BlueSnap if the payment was rejected. If BlueSnap does not receive the notification within this timeframe, the invoice will be approved.

    • If the transaction is approved, the shopper's account is debited for the transaction amount and BlueSnap sends a Charge IPN.
    • If the transaction is rejected, the shopper's account is not debited and BlueSnap sends a Decline IPN.
  3. BlueSnap updates the invoice status to reflect whether it was approved or rejected.

    📘

    Note

    We recommend delivering your product only after you receive the approval.

The shopper has 60 days to dispute the debit on their account. If this occurs, BlueSnap will remove the funds from your account and send a Refund IPN, and the invoice status will update to refunded. Please note that some banks might allow a longer timeframe for reversals.

👍

Resolving payment rejections

Payments can be rejected for a variety of reasons, including insufficient funds. To resolve a payment rejection, you can provide an alternative payment method and resubmit the charge.

Sandbox Testing

You may use the following bank credentials to test various scenarios. For Approved and Declined transactions, please allow 15 minutes after initiating the request for the status changes.

ScenarioRouting NumberAccount Number
Approved transaction998877665223344556
Declined transaction987654321987654321
Format validation error123456789123456789