Pay By ACH

This guide is for developers integrating ACH debit payments - either against an existing customer record or as a one-time transaction without a customer profile.

📰

Overview

This guide walks through creating and capturing an ACH payment using the Payarc API. It covers two paths: charging a bank account already associated with an existing customer, and submitting a one-time ACH charge without any prior customer record. Both paths result in an ACHCharge object that confirms the debit movement. Choose the path that matches your integration model before you begin.

Prerequisites

Before you begin, make sure you have:


Option 1: Existing Customer

Step 1: Create Bank Account

Assign the customer's bank account information to their existing customer record before initiating the charge. This produces a reusable bank account token tied to the customer that the charge step will reference.

  • To create the Customer's Bank Account, see the API Reference: here
  • What you get back: A BankAccount payload containing the bank account id, which will be needed in Step 2.

Step 2: Create an ACH Charge

With the bank account created, initiate the ACH debit against the customer's account. You'll need the customer_id from your existing customer record and the SEC code that matches your transaction authorization method.

  • To create an ACH Charge, see the API Reference: here
  • What you get back: An ACHCharge object. The id field (e.g., g9dDE7GDaA527eAa) confirms the transaction and can be used for voids, refunds, or reconciliation.
💡

Tip: When paying by ACH as an existing customer, Payarc only supports the following SEC Codes: CCD, PPD, TEL, WEB.


Option 2: One-Time Payment

Step 1: Create an ACH Charge

Repeat Step 2: Create an ACH Charge from Option 1: Existing Customer.

To create an ACH Charge, see the API Reference: here

💡

Tip: Just like in Step 2: Create an ACH Charge from Option 1: Existing Customer, Payarc only supports the following SEC codes: CCD, PPD, TEL, WEB.

💡

Tip: If you would like the charge to be linked back to the customer, include the customer_id. Otherwise, leave it empty.


What's Next

Now that you've created an ACH charge, you can: