ACH

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

Nacha requires you to include an ACH SEC code with each transaction. The SEC code designates how the originator authorized the transaction. Learn more about SEC codes on the Nacha website.

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.

Note
  • 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

All domestic ACH payments are supported. You can transfer funds from one US bank account to another.

Standard

Standard processing of ACH debits is made available to an RDFI no earlier than one banking day prior to the Settlement Date.

Same day

Same day ACH transactions debit and credit funds on the same day that the transaction is initiated. This makes the funds available to the RDFI on the settlement date. The Nacha Operating Rules prohibit RDFIs from posting debits prior to the settlement date. There is a limit of $100,000.00 per Same Day ACH transaction.

Domestic IAT

IAT is a Nacha SEC code. Cross River can originate or receive IAT payments to or from the US intermediary FI of an account at an FI outside the US. Cross River passes information to the intermediary FI. See International ACH support.

Important

The payment information and data you send to Cross River must conform with the Nacha SEC codes and Nacha transaction rules.

ACH prenotification (prenote)

Use an ACH prenote transaction to check bank account information before sending or receiving any money.

For example, if a utility company automatically withdraws a payment from a customer account, it sends an ACH prenote before it sends the request to withdraw the funds. A successful prenote call results in no error or change notification.

An ACH prenote is simple. You initiate the transaction with a value of $0.00. You can use ACH prenotes for both credits and debits.

Learn more about ACH prenotification and account validation from Nacha's Validation Resource Center.

Transaction details

Outbound from the originator

Inbound to the receiver

The originator pushes funds to the receiver.

  • Cross River receives the payment via the Federal Reserve.

  • Cross River accepts or rejects the payment.

  • Payment is delivered to the receiver account.

The balance in the originator account decreases and the balance in the receiver account increases.

Outbound from the receiver after receiving a request for funds

Inbound to the originator

The originator sends a request for funds to the receiver.

  • Cross River processes the payment via ACH.

  • Payment is pulled from the sender account and deposited in the originator account

The balance in the originator account increases and the balance in the receiver account decreases.

Account settlements and time windows

When an ACH transaction settles in your account:

  • Any transaction tied to an ACH payment executes on the effective date of the payment.

  • The serviceType (either Standard or Same Day) and the configured cutoff time influence the effective payment date.

    Example
    • A Same Day payment originates on Tuesday, 8/24 at 12 pm. The cut off time is configured for 1 pm. The effectiveDate of the payment is 08/24.

    • A Same Day payment originates on Tuesday, 8/24 at 3 pm. The cut off time is configured for 1 pm Same Day cutoff. The effectiveDate of the payment is 08/25 because the payment originated after the cutoff time. The service type remains SameDay in the system, despite the next-day effective date.

    • A Standard payment originates on Tuesday, 08/24. The effectiveDate of the payment is 08/25.

  • When the payment is released to the Federal Reserve and receipt of payment is acknowledged, we execute the transactions on the payment effectiveDate.

Cross River time windows

Hold days

ACH allows FIs to delay the availability of credits to accounts which results from outbound pull payments. This ensures that funds are available before the transaction is approved. This helps prevent losses that result from returned outbound pull payments. Hold days use a business day logic and start with the effective date of the ACH payment.

When a pull transaction return occurs during the hold period, the hold is manually removed. This is done to net the credit to the account holder for the outbound pull payment with the debit resulting from the ACH return.

You can determine when funds will be available in your account by reviewing the details of the schedule included in the payment core transaction.

Note

Holidays and weekends are not considered business days.

Client batches

The CR system supports the ability to send up to 5000 payments in a single request via the client batch API. A batch request is always the preferred method of originating multiple payments at a given time.

Once a batch is accepted, it will be broken into individual payment records that may go on hold or be sent to the Federal Reserve independently. Webhook events will be fired as usual on each of these individual payments. The overall payment workflow is identical to that of payments originated individually.

It is important to note that client batch origination requests are asynchronous and the associated payment records may not be available immediately. You can monitor the progress via the status and importCount fields of the batch object.

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.

Note

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

When you get an ACH error code in a response, it includes further information about what went wrong.

Nacha Field Mappings

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