Automated Clearing House (ACH) is a common electronic payment method, typically used for direct deposits and bill payments.

ACH is often used for direct deposit of paychecks. Cross River offers Early Direct Deposit, which allows account owners to get their funds before the effective date of the ACH..

ACH is run by the National Automated Clearing House Association (Nacha), the governing organization of ACH networks. There are two ACH networks in the US: FedACH and EPN. FedACH is the Federal Reserve Bank's ACH service and handles public transfers. EPN is The Clearing House's ACH Service and only handles private transfers.

ACH offers two services for domestic transactions:

  • Same Day: The ACH transaction is processed and settled on the same business day. There is a limit of $1,000,000.00 per Same Day ACH transaction.

  • Standard: The ACH transaction is processed but settles on the next business day. Credit transactions may be processed up to two business days prior to the settlement date. The Fed refers to this as “future dated.”

An ACH transaction is either a push or pull depending on your role in the transaction. Both the originator and the receiver can push or pull funds.

  • The Originating Depository Financial Institution (ODFI) sends fund or sends a pull requests (to receive money)

  • The Receiving Depository Financial Institution (RDFI) receives funds or receives a pull request (to send money)

Difference between Same Day ACH (SDACH) and Instant Payments (RTP/FedNow)

Same Day ACH payments are cleared in batches and settle after the payments clear.

Instant Payments clear and settle individually in real time immediately.

Nacha settlement rules and limitations

ACH parties

Credit entries

Debit entries

Common ACH Standard Entry Class (SEC) codes

International ACH support (IAT)

ACH addenda records

ACH addenda records provide supplemental data to identify an account holder or provide information about the payment. This may include details such as invoice numbers.

ACH at Cross River

The Cross River ACH API allows you to both originate and receive payments through the Federal Reserve ACH network. We receive your transaction details as an API call, process them, and release them to the Federal Reserve. The API set includes endpoints and webhooks. We can process ACH transactions sent as:

  • An API call for a single payment

  • An API call for multiple payments (batch)

Cross River validates the payments before releasing them to the Federal Reserve. The transaction is sent to the Federal Reserve and is routed to the designated FI.

  • ACH transactions settle on business days. There is no settlement on weekends or federal holidays.

  • Transactions occur on business days. There is no support on weekends or banking holidays.

Supported transaction types

Account settlements and time windows

Client batches

Business reference information

SEC Codes

A SEC code indicates the Standard Entry Class required by Nacha for every ACH transaction. When you originate an ACH payment by API, you enter this code in the secCode field of the request.


Which code should I use?

Your Operations Support Team will guide with this based on the use case you are trying to support.

Rejection codes

These codes are returned in the details of the Ach.Payment.Rejected webhook in the postingCode field.

Payment Types

This value appears in the paymentType field in ACH payment responses. The paymentType value tells you what kind of payment was sent. Do not confuse it with the extendedDetails.paymentType!

Payment Status

Return Codes

Sometimes an ACH payment is returned by the receiving bank. A returnCode value appears in the details object of the extended Ach.Return.Received webhook event.

Dishonored Returns

ACH Correction Codes

There are times when Cross River receives an ACH notification of change (NOC) related to an outbound payment. The reasonCode field in the extended Ach.Noc.Received webhook event provides the correction code indicating what information was wrong and needed to be changed for the payment to settle.

POS Card Transaction Types

IAT Transaction Types

When sending an IAT transaction, you must also supply a code for the transaction type in the iatDetails.transactionTypeCode field.

Error Codes

Nacha Field Mappings

This table presents field names as they appear in a Nacha record and how they appear in CR APIs.