The following provides guidance for accepting Automated Clearing House (ACH) payments using the Payments API.
Unlike credit card payments, when an ACH payment is authorized, funds are withdrawn directly from his or her bank account and can take several days to settle.
In order to accept ACH or eCheck, you must collect and tokenize the customer’s bank account and routing number. It is best practice to tokenize this information using the Runner.js integrated web form.
To process an ACH payment, make a Charge request using the Payments API. In addition to the required fields, please include the following information in the parameters:
com_ind, which identifies the card not present transaction origin as telephone, recurring, ecomm, or mobile app.The following fields are specifically required for ACH transactions (compatible with Fiserv ACH gateway). These are additional required fields beyond the standard charge request fields:
payment_description - Short description of what the payment is forach_discretionary_data - Required for WEB entry class code, Optional for TEL entry class code:
"S" for single transaction"R" for recurring transactionentry_class - ACH entry class code: WEB, TEL, CCD, or PPDcredit_or_debit - Transaction type: credit or debitThe following example shows the minimum required fields for processing an ACH transaction:
To test ACH transactions, you must use a valid ABA routing number. Below we have provided a test account and routing number that you can tokenize with Runner.js and pass in a charge request using the Payments API.
The funding endpoint provides merchant funding information and supplemental transaction and funding adjustment information. These details are provided by the host payment processing platform.
For merchants with next day funding, funding data is available between 1pm - 6pm ET on the day following settlement. For merchants without next day funding, funding data is available within 1 - 2 business days following settlement, between 1pm - 6pm ET.
A request to the funding endpoint returns all available funding data for the merchant on the date specified, including:
If no available available batches are found for the specified date, the Reporting API will provide an error stating “No deposits match your request”.