ACH Endpoints

The following tables summarize ACH endpoints in the Galileo system. Endpoints are grouped by outgoing ACH and incoming ACH. See the sections below for information on how to use each endpoint.

Outgoing ACH endpoints

Use endpoints in this table to create and view outgoing ACH transactions that originate at Galileo.

📘

Note

The Add ACH Account, Modify ACH Account, and Remove ACH Account endpoints do not trigger an event. Refer to the API response to confirm the outcome of your request to these endpoints.

Use caseEndpoint
Add an ACH account to associate your customer’s account with an external account. Use this endpoint when the external account belongs to an individual. You must create an ACH account to send an outgoing ACH transaction.Add ACH Account
Add an ACH account that belongs to a corporate entity.Add ACH Account Corporate
Get a record of ACH accounts that are associated with your customer’s account.Get ACH Accounts
Update account information for an existing ACH account.Modify ACH Account
Remove an ACH account from a customer account.Remove ACH Account
Send an outgoing ACH transaction from your customer’s account to an external account.Create ACH Transaction
Cancel a transaction that you created with the Create ACH Transaction endpoint.Cancel ACH Transaction
Get a record of all ACH transactions created via the Create ACH Transaction History endpoint.Get ACH Transaction History

Incoming ACH endpoints

Use endpoints in this table to view and modify incoming ACH transactions from an external originator.

Use caseEndpoint
Get the ACH deposit history either for an entire program or for a single customer account. Use for incoming ACH credit.Get Deposit History
Retrieve a list of incoming ACH credit requests where the funds are not yet available to your customer.Get Pending Deposits
Either post or return a pending incoming ACH credit.Modify Pending Deposit Status

ACH accounts

There are two types of external accounts that can be added as ACH accounts: personal and corporate. A personal account belongs to a natural individual, and a corporate account belongs to a business entity. To add each type of account use these endpoints:

By using these endpoints, you set up ACH transactions where the originator is your customer’s account in the Galileo system and the receiver is the external account. Each ACH account stores the information for only one external account. You will need to add a new ACH account for each external receiver account. Prior to calling these endpoints, you must have a US-based account with a PRN already set up that supports ACH.

When you add an ACH account, you provide the external bank account and routing numbers to make direct ACH transfers with the external account. Alternatively, you can use Plaid integration to get external account information. See Plaid integration for more information.

The Add ACH Account and Add ACH Account Corporate endpoints return an ach_account_id that you will pass through the Create ACH Transaction endpoint when your customer originates an ACH transaction with the external account.

📘

Note

A customer can have multiple ACH accounts that use the same account and routing numbers as long as each duplicate ACH account is linked to a different account type. For example, you can add separate ACH accounts to a checking account PRN and savings account PRN that each link to the same external account.

You can also call Add ACH Account multiple times for the same PRN, as long as the external account numbers are different.

Add ACH Account

This table describes parameters that are specific to the Add ACH Account endpoint.

ParameterDescription
accountNoAccount number for the account associated with this ACH account. This can be a primary or secondary account.
achAccountNoBank account number identifying the external account for ACH transactions. Required unless Plaid integration is used.
achRoutingNoBank routing number identifying the external bank for ACH transactions. Required unless Plaid integration is used.
processorTokenToken provided by Plaid for Galileo + Plaid integration. Replaces the achAccountNo and achRoutingNo. See Plaid integration for more information. If you are not using Plaid, do not send this parameter with an empty or null value.
nameDescription of the account, such as "Wells Fargo Checking".
firstNameRequired. First name of the external account owner. This is a display name that is included in the outgoing Nacha file. Only the first 9 characters of this field are included in the Nacha file.
lastNameRequired. Last name of the external account owner. This is a display name that is included in the outgoing Nacha file. Only the first 12 characters of this field are included in the Nacha file.

Add ACH Account Corporate

This table describes parameters that are specific to the Add ACH Account Corporate endpoint.

ParameterDescription
accountNoAccount number for the account associated with this ACH account. This can be a primary or secondary account.
achAccountNoBank account number identifying the external account for ACH transactions. Required unless Plaid integration is used.
achRoutingNoBank routing number identifying the external bank for ACH transactions. Required unless Plaid integration is used.
processorTokenToken provided by Plaid for Galileo + Plaid integration. Replaces the achAccountNo and achRoutingNo. See Plaid integration for more information. If you are not using Plaid, do not send this parameter with an empty or null value.
nameDescription of the account, such as "Citibank Saving".
companyNameRequired. Name of the company that holds the external account. This is a display name that is included in the outgoing Nacha file. Only the first 22 characters of this field are included in the Nacha file, so take care that the most identifiable portion of your company name fits in the first 22 characters.

Viewing ACH accounts

Use the Get ACH Account endpoint to retrieve ACH account information. Pass the customer's PRN for accountNo, which you used in the Add ACH Account or Add ACH Account Corporate endpoint, to this endpoint. Do not pass an ach_account_id for accountNo.

If there are multiple ACH accounts linked to the accountNo, the Get ACH Account endpoint returns information for each ACH account. The found field in the response data indicates the number of ACH accounts that are linked to the accountNo.

Modifying ACH accounts

Use the Modify ACH Account endpoint to update ACH account information. When using Modify ACH Account, you must specify the entityType of the account to modify:

  • C — Corporate ACH account. The account was created using Add ACH Account Corporate.
  • I — Individual ACH account. The account was created using Add ACH Account.

Depending on the value of entityType, other fields are also required:

  • entityType: CcompanyName is required
  • entityType: IfirstName and lastName are required

Removing an ACH account

Use the Remove ACH Account endpoint to remove an ACH account. ACH account records cannot actually be deleted from the Galileo system, but a removed account is deactivated so that it can no longer be used for ACH transactions. A removed ACH account is set to status: D (deleted).

This table describes parameters that are specific to the Remove ACH Account endpoint.

ParameterDescription
accountNoAccount number for the account associated with the ACH account.
achAccountNoAccount number for the ACH account to be removed.

ACH transactions

You can manage ACH transactions using the following procedures.

Creating an ACH transaction

Use the Create ACH Transaction endpoint to originate an outgoing ACH transaction where the originator is your customer in the Galileo system and the receiver is the holder of an external account.

This table describes parameters that are specific to the Create ACH Transaction endpoint.

ParameterDescription
accountNoAccount number for the account associated with this ACH account.
achAccountIdThe ach_account_id as returned by the Add ACH Account or Add ACH Account Corporate endpoint.
amountThe amount to credit or debit the receiver’s account. Do not use a plus or minus sign. Instead, use the debitCreditIndicator field to indicate the direction of funds.
sameDaySet to Y to post a same-day ACH credit request. See Same-day ACH for more information.
descriptionA description for the transaction. This description is not passed in the Nacha file, but you can see it in the CST or have it added to the RDFs and event messages.
debitCreditIndicatorIndicates whether the transaction will credit or debit the receiver’s account. Values are:
  • C — Credit
  • D — Debit
  • identNumberProvider-supplied identifier, external to the Galileo system. This value is only required for the consumer initiated entries, SEC codes CIE (consumer to business accounts) and WEB (consumer to consumer account).

    Viewing ACH transactions

    You can use one of several endpoints to view posted and pending ACH transactions. The accountNo that you pass to the endpoint must be associated with at least one ACH account that was created with the Add ACH Account or Add ACH Account Corporate endpoint. If there are multiple ACH accounts linked to the accountNo, Galileo returns transaction information for each ACH account.

    This table describes endpoints for viewing ACH transactions.

    EndpointDescription
    Get ACH Transaction HistoryReturns the entire ACH transaction history for a customer account, including pending and posted transactions.
    Get Deposit HistoryReturns records for incoming ACH credit requests, either for an entire program or for a specific customer. Leave the accountNo empty to return the program history.
    Get Pending DepositsReturns records for incoming ACH credit requests that have not been posted to the receiver’s account.

    Consult Finding Transaction Data to see where else ACH transactions are visible.

    Canceling an ACH transaction

    Use the Cancel ACH Transaction endpoint to cancel an outgoing ACH transaction originated by your customer in the Galileo system. You cannot cancel an ACH transaction in this manner after Galileo processes the transaction and adds it to a Nacha file. If you need to stop a transaction after Galileo generates the Nacha file, you must initiate an ACH return. See ACH at Galileo for more information.

    The cutoff time to cancel an ACH transaction varies from client to client. You can contact Galileo to get the approximate time the Nacha file is generated for your core.

    When an ACH transaction is successfully canceled, any funds debited from your customer’s account are returned and a BADJ: adj event is generated.

    This table describes parameters that are specific to the Cancel ACH Transaction endpoint.

    ParameterDescription
    accountNoThe accountNo that is linked to the ACH account used for the transaction.
    transactionIdThe transactionId of the endpoint request to be reversed.
    achTransactionIdThe ach_transaction_id returned by the Create ACH Transaction endpoint.

    Modifying a pending ACH deposit status

    A pending ACH deposit is an incoming ACH credit that has not been posted to the customer’s account. You can use the Modify Pending Deposit Status endpoint to either post or return a pending ACH direct deposit before it is posted to the account. In most cases you will modify pending ACH direct deposits that are flagged for review (status: i).

    This table describes parameters that are specific to the Modify Pending Deposit Status endpoint.

    ParameterDescription
    accountNoDestination account number for the pending direct deposit.
    depositTransactionIdThe ach_trans_id for the deposit returned by the Get Pending Deposits endpoint.
    actionTypeIndicates whether to post or return the pending ACH deposit. Values are:
  • P — Post
  • R — Return
  • categoryCodeCategory to assign to the deposit. Values are:
  • COF — Questionable IAT country
  • FBE — Federal benefit
  • HRK — High risk deposit
  • LRG — Large transfer amount
  • NAM — Unverified name
  • NFC — NFCU
  • PAY — Payday loan
  • TAX — Tax
  • categoryTypeIndicates the decision for future ACH deposits that match the program settings for the current deposit. Values are:
  • A — Approve matching transactions.
  • D — Decline matching transactions.
  • W — Watch matching transactions and send for manual review.
  • retCodeReason for returning the deposit. This parameter is required when actionType: R. See Return Codes for valid values.