MerchantAch
Merchant ACH processing interface. Defines all methods that an ACH payment gateway must implement. Note: not all methods are required to be supported.
Table of Contents
Methods
| processAch() | Process an ACH transaction |
| refundAch() | Refund an ACH transaction |
| voidAch() | Void an ACH transaction |
Methods
processAch()
Process an ACH transaction
public
processAch(array<string|int, mixed> $account_info, float $amount[, array<string|int, mixed> $invoice_amounts = null ]) : array<string|int, mixed>
Parameters
- $account_info : array<string|int, mixed>
-
An array of bank account info including:
- first_name The first name on the account
- last_name The last name on the account
- account_number The bank account number
- routing_number The bank account routing number
- type The bank account type (checking or savings)
- address1 The address 1 line of the card holder
- address2 The address 2 line of the card holder
- city The city of the card holder
- state An array of state info including:
- code The 2 or 3-character state code
- name The local name of the country
- country An array of country info including:
- alpha2 The 2-character country code
- alpha3 The 3-character country code
- name The english name of the country
- alt_name The local name of the country
- zip The zip/postal code of the account holder
- $amount : float
-
The amount to debit this account
- $invoice_amounts : array<string|int, mixed> = null
-
An array of invoices, each containing:
- id The ID of the invoice being processed
- amount The amount being processed for this invoice (which is included in $amount)
Return values
array<string|int, mixed> —An array of transaction data including:
- status The status of the transaction (approved, declined, void, pending, reconciled, refunded, returned)
- reference_id The reference ID for gateway-only use with this transaction (optional)
- transaction_id The ID returned by the remote gateway to identify this transaction
- message The message to be displayed in the interface in addition to the standard message for this transaction status (optional)
refundAch()
Refund an ACH transaction
public
refundAch(string $reference_id, string $transaction_id, float $amount) : array<string|int, mixed>
Parameters
- $reference_id : string
-
The reference ID for the previously authorized transaction
- $transaction_id : string
-
The transaction ID for the previously authorized transaction
- $amount : float
-
The amount to refund this account
Return values
array<string|int, mixed> —An array of transaction data including:
- status The status of the transaction (approved, declined, void, pending, reconciled, refunded, returned)
- reference_id The reference ID for gateway-only use with this transaction (optional)
- transaction_id The ID returned by the remote gateway to identify this transaction
- message The message to be displayed in the interface in addition to the standard message for this transaction status (optional)
voidAch()
Void an ACH transaction
public
voidAch(string $reference_id, string $transaction_id) : array<string|int, mixed>
Parameters
- $reference_id : string
-
The reference ID for the previously authorized transaction
- $transaction_id : string
-
The transaction ID for the previously authorized transaction
Return values
array<string|int, mixed> —An array of transaction data including:
- status The status of the transaction (approved, declined, void, pending, reconciled, refunded, returned)
- reference_id The reference ID for gateway-only use with this transaction (optional)
- transaction_id The ID returned by the remote gateway to identify this transaction
- message The message to be displayed in the interface in addition to the standard message for this transaction status (optional)