SEC Codes

The ACH API supports the following SEC codes:

CCDCash Concentration or Disbursement. Payments between corporate entites
IATInternational payments
POSPoint of Sale payments
PPDPrearranged Payments to consumers
TELPayments initiated by telephone
WEBPayments initiated via the internet


Which code should I use?

Your operations support team will guide with this based on the use case you are trying to support.


InboundPayment we received from another bank
OutboundPayment we are sending to another bank

Service Types

StandardPayment will be effective the following day. International payments must use this type.
SameDayPayment will be effective the same day it was originated provided it was originated before the daily cutoff time. Not available for international payments or those that are over $1,000,000.

Transaction Types

PushA credit payment being sent from an originator to a receiver
PullA debit payment being taken from a receiver and given to the originator.

Payment Types

OriginationA new payment originating from either Cross River or another bank. Most payments are of this type.
ReturnRelated to a previous origination that has been returned by the receiving bank.
DishonoredReturnRelated to a previous return, that has been dishonored by the receiving bank.
CorrectionRelated to a previous origination. The receiving bank accepted the original payment but is now notifying you of information you should correct next time you send a payment to this receiver (e.g. use a different account number)

Payment Status

CreatedWe have received the payment, but have not started processing it yet. This status should only appear briefly under normal circumstances.
PendingThe payment is waiting to be batched and sent to the Federal Reserve.
HoldPayment is being held at the moment and reviewed by our operations team.
BatchedThe payment has been batched is a final review is being done before we send it out in a file to the Federal Reserve.
ProcessingFor inbound payments, we are attempting to post the payment to the receiving account. For outbound payments, the payment has been sent to the Federal Reserve, but has not posted yet. An outbound standard payment may remain in this status for a day or more. Same day payments will transition to Complete soon after Processing.
CompleteThe payment has been posted and accepted by the Federal Reserve (in the case of outbound payments). This is a final status.
CanceledAn outbound payment has be canceled at the request of the partner. A payment may only be canceled while either pending or on hold. This is a final status.
RejectedOur operations team was unable to process the payment and has rejected it. In the case of inbound, the payment has been returned to the originating bank. This is a final status.

Return Codes

R01Insuffcient Funds
R02Account closed
R03No account or unable to locate account
R04Invalid account number
R05Unauthorized debit to consumer account
R06Returned per ODFI's request
R07Authorization revoked by customer
R08Payment stopped or stop payment on item
R09Uncollected funds
R10Customer advises not authorized
R11Customer Advises Entry Not in Accordance with the Terms of the Authorization
R12Branch sold to another DFI
R13Invalid ACH routing number
R14Representment payee deceased or unable to continue in that capacity
R15Beneficiary of account holder deceased
R16Account frozen
R17File record edit criteria
R18Improper effective entry date
R19Amount field error
R20Nontransaction account
R21Invalid company identification
R22Invalid individual ID number
R23Credit entry refused by receiver
R24Duplicate entry
R25Addenda error
R26Mandatory field error
R27Trace number error
R28Routing number or check digit error
R29Corporate customer advises not authorized
R30RDFI not participant in check truncation program
R31Permissible return entry
R32RDFI nonsettlement
R33Return of XCK entry
R34Limited participation DFI
R35Return of improper debit entry
R36Return of improper credit entry
R37Source Document Presented for Payment
R38Stop payment on source document

Dishonored Returns

Returns of returns :)

R61Misrouted return
R62Return of Erroneous or Reversing Debit
R63Incorrect dollar amount
R64Incorrect individual identification
R65Incorrect transaction code
R66Incorrect company identification
R67Duplicate return
R68Untimely return
R69Multiple errors
R70Permissible return entry not accepted

Correction Codes

C01Incorrect DFI Account Number
C02Incorrect Routing Number
C03Incorrect Routing Number and Incorrect DFI Number
C04Incorrect Individual Name/Receiving Company Name
C05Incorrect Transaction Code
C06Incorrect DFI Account Number and Incorrect Transaction Code
C07Incorrect Routing Number, Incorrect DFI Account Number, and Incorrect Transaction Code
C08Incorrect Receiving DFI Identification (IAT only)
C09Incorrect Identification Number
C13Addenda Format Error
C14Incorrect SEC Code for Outbound International Payment

POS Card Transaction Types

01Purchase of goods
03Return Reversal
11Purchase Reversal
12Cash Reversal
99Misc. Transaction

WEB Payment Types

SSingle payment
RRecurring payment

IAT Transaction Types


IAT Identifcation Qualifiers

01Routing number

Error Codes

1000General exception
1001Payment required
2000General exception
2001Invalid payment status
2002Invalid posting status
2003Payment cannot be canceled
2004Account not found
2005Payment must be outbound
2006Payment must be inbound
2007Payment must be an inbound origination
2008Payment must be status complete or rejected to be corrected
2009Invalid change code
2010Payment must be an inbound return
2011Payment must be an origination
2012Payment must be status complete or rejected to be returned
2013Payment must be status complete or rejected to be dishonored
2014Invalid return code
2015Invalid dishonored return code
2016Original payment not found
2017Cannot link to same payment ID
2018Payment type must be return or notification of change
2019Original payment must be complete
2020Payment must be on hold to request a rescan
2021No scan lists are configured for account
2022Scan already pending
2023Previous payment not found
2024Previous payment must be a completed outbound origination
2025Receiver account not found
2026Active holds found
2027Posting account cannot be changed due to current payment status
2028Posting status must be pending or failed to change posting account
2029Posting status must be failed to attempt a retry
2030Originator profile address missing or invalid
2200Batch not authorizing
2201Batch requires one or more payment
2202No filters were found on the request

NACHA Field Mappings

Common NACHA to API field mappings

BatchCompany NameOriginator.Name
BatchCompany Discretionary DataOriginator.Data
BatchCompany IdentificationOriginator.Identification
BatchStandard Entry Class CodeSecCode
BatchCompany Entry DescriptionDescription
BatchCompany Descriptive DateN/A
BatchEffective Entry DateEffectiveDate
BatchSettlement DateSettlementDate
BatchOriginator Status CodeN/A
BatchOriginating DFI IdentificationOriginator.RoutingNumber
EntryTransaction CodeTransactionType / Receiver.AccountType
EntryReceiving DFI IdentificationReceiver.RoutingNumber
EntryDFI Account NumberReceiver.AccountNumber
EntryIndividual Identification NumberReceiver.Identification
EntryIndividual NameReceiver.Name
EntryDiscretionary DataReceiver.Data /
ExtendedDetails.PaymentType (WEB/TEL only)
EntryTrace NumberTraceNumber
Addenda (05)Payment Related InformationAddenda (only one informational addenda record is supported)