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
Nacha has its own set of limitations and restrictions:
According to Nacha rules, settlement happens the day after the transaction is initiated.
Nacha operating rules require standard ACH credits to settle in 1-2 business days.
ACH debits settle the next business day.
There is no settlement on weekends or federal holidays.
Same day settlement happens on the same day as the transaction is originated.
The entry must be processed by FedACH before 4:45pm EST for it to be settled on the same day.
Domestic transactions must be less than $1,000,000
Same day ACH transactions with an international leg are ineligible
Transactions can take up to 90 days to finalize.
ACH transactions may be rejected because of non sufficient funds or because it is unauthorized, for up to 90 days after the date of the transaction
ACH parties
The following are participants involved in a typical ACH transaction
Participant
Explanation
Originator
The party - individual or company - that originates a credit, debit, or non-monetary entry into the ACH payment system for receipt by the Receiver account.
The Originator must have an arrangement with the ODFI directly or through a third-party sender and an authorization from the Receiver to initiate the transaction.
The financial institution that receives the credit or debit entry from the ODFI and posts it in the receiver account
Receiver
The party (individual or company) that receives the debit or credit entry
Third-party service provider (optional)
Acts on behalf of the originator, ODFI, or RDFI regarding ACH entries and transactions. This includes creating ACH files for an originator or ODFI and acting as a sending or receiving point for an ODFI or RDFI.
A third-party sender acts on behalf of the originator when there is no agreement between the ODFI and originator for ACH origination services. A third-party sender is never the originator for entries it transmits on behalf of another organization. A third-party sender of entries may be an originator of other entries.
Cross River can act as the ODFI for outbound ACH transactions or the RDFI for inbound ACH transactions.
A Depository Financial Institution (DFI) can act as an RDFI without being an ODFI. If a DFI wants to originate ACH entries, it must act as both the ODFI and the RDFI. The ODFI must be able to receive payment returns.
All parties in an ACH transaction must comply with the Nacha rules.
Credit entries
An ACH Credit occurs when a business or individual (originator) authorizes their bank (ODFI) to send money to a receiver account at another financial institution. The RDFI posts entries and provides funds availability.
Posting entries and funds availability are determined by the Settlement Date in the Company Batch Header Record.
Standard ACH credit entries
Standard ACH credits are made available to the RDFI by the ACH Operator no earlier than two banking days prior to the Settlement Date. It is recommended that credits be posted or at a minimum, memo-posted, prior to opening of business on Settlement Date. However, credit entries can be posted prior to the Settlement Date if the RDFI cannot warehouse the entry. The RDFI should consider the effect of posting credits and making funds available to the Receiver prior to the date on which the RDFI receives settlement for those credits.
The Nacha Operating Rules require that credit entries be made available for withdrawal by the customer on the Settlement Date. An RDFI can satisfy this obligation by making the entry available for withdrawal at the RDFI teller facilities by the close of business on the Settlement Date or at an ATM by midnight on the Settlement Date.
The RDFI must make funds available for withdrawal or cash withdrawal for any standard processing credit entry:
No later than 9 am. (RDFI local time) on the Settlement Date.
The entry is made available to the RDFI by the ACH Operator no later than 5:00 pm. RDFI local time on the banking day prior to the Settlement Date.
This rule applies to all credit entries that meet the timing requirement, regardless of Standard Entry Class Code. An entry or entry data is made available to an RDFI or its receiving point when the entry or entry data is processed by the RDFI ACH Operator and is ready for distribution.
Same-day processing ACH credit entries
Same-day processing ACH credits will be delivered to the RDFI on the Settlement Date.
RDFIs must generally make available for withdrawal the amount of a same-day credit entry received in the first same-day processing window.
They must do this no later than 1:30 pm. RDFI local time on the Settlement Date.
An RDFI that reasonably suspects that a credit entry is unauthorized is exempt from these requirements, subject to applicable legal requirements. An RDFI invoking such an exemption must promptly notify the ODFI.
For a same-day credit entry received in the second same-day processing window, most RDFIs are required to make funds available for withdrawal no later than 5:00 pm. RDFI local time on Settlement Date.
Debit entries
Debit entries are the opposite of credit entries.
Standard processing ACH debit entries
Standard processing of ACH debits will be made available to an RDFI no earlier than one banking day prior to the Settlement Date.
Same-day processing ACH debit entries
Same-day processing of ACH debits will be made available to the RDFI on the Settlement Date. The Nacha Operating Rules prohibit RDFIs from posting debits prior to the Settlement Date.
For more detailed information on the ACH processing schedule, see here.
ACH transactions only settle on business days (no settlement on weekends or federal holidays). Transactions only occur on business days (no support on weekends or banking holidays).
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)
The ACH system is not international. The ACH system facilitate funds transfers through similar payment systems in other countries. This allows you to transfer funds internationally.
The SEC transaction code for international transactions with a foreign leg is IAT. This code indicates to organizations in the transfer chain that the payment is international. This includes payments that began in foreign countries and are converted to ACH transactions within the US and payments that ultimately complete abroad. In either case, Cross River passes information to the intermediary FI and not to the overseas FI.
If you want to transfer funds internationally using CR and ACH, CR transfers the funds to a US bank that can do international transfers. And if you want to receive funds from outside the US using ACH, the funds will first be transferred to a US bank that can do international transfers, and from there be transferred to CR.
Any payment over the ACH network that originates or ends in a foreign FI must use the IAT SEC code. The CR service type will always be Standard.
The payment information and data you send to Cross River must conform with the Nacha SEC codes and Nacha transaction rules.
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
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.
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.
When the payment is released to the Federal Reserve and receipt of payment is acknowledged, we execute the transactions on the payment effectiveDate.
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.
Cross River time windows
Same day Domestic US
10 AM EST, 1 PM EST, 2 PM EST
Standard/Next Day Domestic US
10 AM EST, 11 AM EST, 1 PM EST, 2 PM EST, 3 PM EST, 330 PM EST, 4 PM EST, 5 PM EST, 6 PM EST
Standard/Next Day Domestic IAT
10 AM EST, 12 PM EST, 2 PM EST
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.
Examples
1
Locate the coreTransactionId for the payment in the response
Use the coreTransactionId in the GET /core/v1/transactions/{id} endpoint to view the availability schedule.
The schedule is displayed in the schedule attribute.
JSON
1{2"id":"eb2f24bb-f25e-4fd7-b628-bc82d8b92cc3",3"traceNumber":"T222271777297136J",4"status":"Complete",5"debit":{6"transactionType":"Debit",7"accountType":"GeneralLedger",8"masterAccountNumber":"123456789",9"subAccountNumber":"123456789",10"partnerId":"13eb292e-cb33-402a-af11-610b0955dbc1",11"productId":"45be4bca-d962-4105-8e54-df9146649598",12"result":{13"success":true,14"code":"OK",15"message":"OK"16}17},18"credit":{19"transactionType":"Credit",20"accountType":"Deposit",21"masterAccountNumber":"2223334445",22"subAccountNumber":"2223334445",23"partnerId":"13eb292e-cb33-402a-af11-610b0955dbc1",24"productId":"45be4bca-d962-4105-8e54-df9146649598",25"result":{26"success":true,27"code":"OK",28"message":"OK"29}30},31"transactionCode":"Outgoing ACH",32"amount":100,33"currency":"usd",34"description":"Bob Smith TRANSFER ACH WEB REF: A123Z456C78A",35"rail":"Ach",36"railId":"payment/89f83e89-806e-4b59-a02e-e71fa5c079fc",37"flags":[38"DIR:Outbound",39"TYP:Origination",40"FRC"41],42"schedule":[430,440,450,460,470,480,4910050],51"proposedAt":"2021-11-23T17:34:29.347-05:00",52"executedAt":"2021-11-24T01:54:29.51-05:00",53"lastModifiedAt":"2021-11-24T01:54:29.511742-05:00"54}
The schedule always displays the total number of values equal to the number of calendar days from when the funds are held to when they are made available.
Example in further detail
In the example response above, there are 7 values in the schedule because there are a total of 7 calendar days from 11/24 to 11/30.
Since the effective date is Wednesday 11/24/2021, the funds will be available on Tuesday 11/30/2021, because the number of pull hold days configured for this account is 3. This means the funds will be held for 3 business days:
Wednesday 11/24
Friday 11/26
*Monday 11/29
Here's a more detailed breakdown of the schedule that's illustrated in the sample code above:
Calendar Date
Hold Day
Amount Available
11/24/2021
1
$0
11/25/2021
N/A - Federal Holiday
$0
11/26/2021
2
$0
11/27/2021
N/A - Weekend/Non-Business Day
$0
11/28/2021
N/A - Weekend/Non-Business Day
$0
11/29/2021
3
$0
11/30/2021
Funds become available
$1.00
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 Originate a payment
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.
🤔
Have a question?
Our super-smart AI, knowledgeable support team and an awesome community will get you an answer in a flash.
To ask a question or participate in discussions, you'll need to authenticate first.