NACHA File Format for Setting Up ACH Payments
If you’ve ever tried to send a mass payment batch through a banking portal or a bank API, you’re likely familiar with the headache of uploading and creating payment files. Payment files come in a number of different forms, each with its nuanced details. The variance in file formats and requirements largely depends on whether you’re using an ACH (Automated Clearing House) API, a bank portal, a mass payments platform, or a digital payment solution such as PayPal Mass Pay.
NACHA File Format
A NACHA file– or ACH file– is a text file formatted in an ‘envelope’ structure that includes a file header and trailer, batch header and trailer, and detailed transaction records–all in the form of ASCII text lines. Each line is 94 characters long and serves as a “record” to execute domestic ACH payments through the Automated Clearing House Network (NACHA).
A NACHA file is a payment instruction file that gets sent or uploaded to a bank portal in order to execute a mass payment batch. NACHA files require unique formatting with particular specifications. While the details of the file format can vary slightly between different financial institutions or banks, there are a number of Standard Entry Class Codes (SEC codes) that relate to ACH payment files.
The reason NACHA files are so common is due to the popularity of ACH as a payment method. ACH is becoming the payment method of choice for B2B payments and mass payments alike because of the low fees, quick delivery, and overall reliability. ACH payments are used to transfer funds from one account to another, leveraging the ACH network to clear those payments. This process is administered by NACHA (previously known as the National Automated Clearing House Association). The ACH network moves over $43 trillion and 25 billion transactions each year.
The Problem with Payment Files
While there is some consistency around the requirements to send a batch of ACH payments, a general lack of standardization around payment files still exists. Different accounting systems will often create different types of payment files, and in many cases, each payment method requires its own type of file. For example, a large corporation or multi-entity organization may use multiple accounting or ERP systems. Multiple systems coupled with the need for multiple payment methods can result in dozens of different payment files and formats.
It’s no secret that payment files can contain sensitive information. The problem is that these files need to be secure enough that data cannot easily be altered or changed, yet accessible enough that approves can view and upload the files.
A payment workflow can easily be broken or flawed. Setting up new users or approvers, leveraging different payment methods, and integrating with a new banking portal are just a few of the processes that can result in errors or payment file rejections. File rejections can not only cause headaches and require additional man-hours, they can also create a frustrated pool of suppliers and, in some cases, result in additional banking fees.
How to Create a NACHA File
As you’ll quickly learn, creating NACHA files is no simple task. Due to the technical and sensitive nature of these payment files, you should consult with your financial institution or payment processor before even attempting to create a NACHA payment file. Wells Fargo, Chase, and Bank of America each have unique processes for the execution of batch payments. Luckily, some banking portals have automated components of the process and remove some of the complexity involved in creating these files. In some cases, an ERP or accounting software can generate the file for you, removing some of the error-prone manual effort associated with payment files.
Below are some definitions of basic terminology relating to ACH payments and NACHA files, followed by an explanation of some common NACHA codes.
ACH and NACHA File Terms
The following terms are not necessarily part of the NACHA file, but are descriptive terms and acronyms associated with the ACH network.
Originator — This is the entity that is making the payment or the payer.
ODFI — The Originating Depository Financial Institution is the bank or institution where the funds are coming from.
ACH Operator — This is a clearing facility that receives and clears batch payments from the ODFI.
RDFI — The Receiving Depository Financial Institution is often the bank of the payee and receives the funds once they are made available by the ACH Operator.
NACHA Standard Entry Class Codes
The following codes typically accompany a NACHA payment file and are included in the batch header to describe the type of payments that are in the file:
ARC — Accounts Receivable Conversion
BOC — Back Office Conversion
CCD — Cash Concentration or Disbursement
CIE — Customer Initiated Entry
CTX — Corporate Trade Exchange
PPD — Prearranged Payment and Deposit
IAT — International ACH Transaction
POP — Point of Purchase entry
RCK — Re-presented Check entry
TEL — Telephone-initiated entry
WEB — Internet-initiated entry
NACHA Format Codes
File header — This provides basic information about the NACHA file including who the payer is and which bank is handling the initial processing.
Batch header — This includes specific information about the payment run including the standard entry class, description of payments, and effective date.
Detailed transaction record — This record contains the payment details and includes information about the payee (banking information) and the amount of payment.
Addendum — This is an optional record that sometimes accompanies NACHA files, primarily for corporate-to-corporate transactions.
Batch control total — This is the total included in each batch.
File control record — This is a final check on the payment batch that includes counts for each type of entry.