Accounts Payable - Accounts Payable Standard ACH File Format
Overview
CMiC provides the Standard ACH File Format for generating EFT files in the AP Check Printing program, which allows users to make vendor payments electronically through a bank.
What is ACH*?
Automated Clearing House (ACH) is an electronic network for financial transactions in the United States. ACH processes large volumes of credit and debit transactions in batches. ACH credit transfers include direct deposit, payroll and vendor payments. ACH direct debit transfers include consumer payments on insurance premiums, mortgage loans, and other kinds of bills.
ACH is a computer-based clearing and settlement facility established to process the exchange of electronic transactions between participating depository institutions.
Rules and regulations that govern the ACH network are established by NACHA1 and the Federal Reserve2.
Specifications
ACH Input File Structure
The NACHA format is a text file composed of records, where each record is 94 characters long. All records and fields are required, except Record Type Code 7 - Entry Detail Addenda Record, which is optional.
No. | Record Title | Record Type Code |
---|---|---|
1 | File Header Record - This record includes your company name and company number. It also designates the immediate destination of the entries contained within the file. | 1 |
2 | Batch Header Record - This record indicates the effective entry date (the date you request the deposits/debits to be settled). In addition, this record identifies your company and provides an entry description for the credit and debits in this batch. | 5 |
3 | Entry Detail Record - This record contains the information necessary to post a deposit to/withdrawal from an account, such as recipient’s name, account number, and dollar amount of the payment. | 6 |
4 | Entry Detail Addenda Record - This record is optional. This record contains additional information relating to the prior entry detail record. It is primarily used for CCD+ and CTX, which are corporate to corporate transactions. | 7 |
5 | Batch Control Total - This record appears at the end of each batch and contains totals for the batch. | 8 |
6 | File Control Record - This record provides a final check on the data submitted. It contains block and batch count(s) and totals for each type of entry. | 9 |
Sequence of Records
Diagram of Sequence of Records
File Header Record (1)
The file header record designates the physical file characteristics. It also identifies the bank as the immediate destination and your company as the immediate origin of the file.
Description of File Header Record (1)
Batch Header Record (5)
A batch is a collection of entries within a file which may have the same effective date, company name or company description. Whenever a change is required, a separate batch collection is used.
Entry Detail Record (6)
One Entry Detail Record is created for each entry. The record contains information about the Receiver’s financial institution.
Entry Detail Record Description (6)
The fields 2 and 10 above are highlighted in yellow to show the only value supported by CMiC and it is hardcoded to print the same value all the time.
Addenda Detail Record (7) Layout (Optional)
Addenda Detail Record Description (7) – (Optional)
Company Batch Control Record (8)
Description of Batch Control Record (8)
File Control Record (9)
Description of Fields in File Control Record (9)
Example
The EFT setup is located in Enterprise, where a file code is created by default by CMiC. This must be adjusted with values obtained from their respective banks.
The EFT Format field's drop-down list on the EFT File Format screen shows the bank formats currently supported.
Pgm: APEFTFM – EFT File Formats: Accounts Payable > Setup > Global Tables > EFT Formats
The above screenshot shows the File Header record Type Code "3" has immediate destination, which must be obtained from the bank and populated here. Other values such as Record Size "94" and Blocking Factor "10" are default values prescribed by the banks and should not be modified without specific approval from their banks.
To add Addenda Line, set Code 19 as "1".
For the Balancing Line, set Code 30 as "YY" otherwise set as "YN".
Code 28 must also be filled for the Balancing Line.
The following is a Standard EFT file generated by the CMiC AP Check Printing program (standard Treeview path: Accounts Payable > Check > Print Check).
The Company Maintenance > Company Detail > Tax2 field value (under General Information) is used for Immediate Origin field in the File Header Record. The Company Name is used in the Company Name column in the Batch Header record.
Pgm: COMPSETUP – Maintain Companies; standard Treeview path: General Ledger > Setup > Maintain Companies – General Information tab - [Company Detail] – Button
Pgm: BPVENFM – Maintain Vendors; standard Treeview path: Accounts Payable > Setup > Maintain Vendors - Accounting tab
Pgm: BPVENFM – Maintain Vendors; standard Treeview path: Accounts Payable > Setup > Maintain Vendors - Accounting tab
NOTE: Users may refer to their bank for any specific field information and tweak the Company / Vendor information accordingly.
The following is the field mapping of EFT File Code maintenance in the CMiC AP application.
*File Code | APEF_FILE_CODE | File Code | STD_EFT | |
File Description | APEF_FILE_DESC | File Description | Standard EFT File Format | |
Code1 | APEF_CODE1 | File Header Record Type Code | Assigned by bank: The code will identify the file header record. | 1 |
Code2 | APEF_CODE2 | Priority Code | Assigned by bank: The lower the number of priority code, the higher processing priority. | 01 |
Code3 | APEF_CODE3 | Immediate Destination | Enter the bank's transit routing number. | 071000301 |
Code4 | APEF_CODE4 | Record Size | Number of bytes per record. | 094 |
Code5 | APEF_CODE5 | Blocking Factor | Enter the bank blocking factor. | 10 |
Code6 | APEF_CODE6 | Format Code | Enter the bank format code. | 1 |
Code7 | APEF_CODE7 | Immediate Destination Name | Optional field. Use to describe input file for internal accounting purposes. | |
Code8 | APEF_CODE8 | Reference Code | Assigned by bank: The code will identify the batch header record. | |
Code9 | APEF_CODE9 | Batch Header Record Type Code | Enter the code to identify the type of entries in the batch. | 5 |
Code10 | APEF_CODE10 | Service Class Code | Optional field for company's internal use. | 200 |
Code11 | APEF_CODE11 | Company Discretionary Data | Identifies the entries in the batch. Common standard entry class code are PPD - for Consumers Items, CTX - for Corporate Transactions. | |
Code12 | APEF_CODE12 | Standard Entry Class Code | Enter description of the transaction. This may be printed on the receiver's bank statement by the receiving financial institution. | CCD |
Code13 | APEF_CODE13 | Company Entry Description | This field will be inserted by ACH operator. | |
Code14 | APEF_CODE14 | Originator Status Code | Assigned by bank: The originator status code. | 1 |
Code15 | APEF_CODE15 | Origination DFI Identification | Enter your bank routing transit number. | |
Code16 | APEF_CODE16 | Entry Detail Record Type Code | Assigned by bank: The code identifies an entry detail record. | 6 |
Code17 | APEF_CODE17 | Transaction Code | Enter the account type at the receiving financial institution. | 27 |
Code18 | APEF_CODE18 | Discretionary Data | ||
Code19 | APEF_CODE19 | Addenda Record Indicator | If there is no addenda accompanying this transaction enter '0', otherwise '1'. | 1 |
Code20 | APEF_CODE20 | Trace Number | Optional field for company's internal use. | |
Code21 | APEF_CODE21 | Addenda Record Type Code | Enter the code to identify the addenda record. | 7 |
Code22 | APEF_CODE22 | Addenda Type Code | Assigned by bank: The number is unique to the transaction. | 05 |
Code23 | APEF_CODE23 | Payment Related Information | Assigned by bank: The code will identify the batch control record. | |
Code24 | APEF_CODE24 | Batch Control Record Type Code | Enter the code to identify the type of entries in the batch. | 8 |
Code25 | APEF_CODE25 | Service Class Code | Optional field. Will depend on your bank information. | 200 |
Code26 | APEF_CODE26 | Message Authentication Code | ||
Code27 | APEF_CODE27 | Reserved | Enter your bank routing transit number. | |
Code28 | APEF_CODE28 | Originating DFI Identification | Assigned by bank: The code will identify the file control record. | |
Code29 | APEF_CODE29 | File Control Record Type Code | 9 | |
Code30 | APEF_CODE30 | Reserved | For the balancing line set as ‘YY’ otherwise set as ‘YN’. | YY |