NACHA EFT Output Format

This topic describes NACHA EFT output format.

ACH Input File Structure

The NACHA format is composed of 94-character records.

The File Header and File Control records are the outer "envelope" of the transaction. The Batch Header and Batch Control records act as an inner envelope combining similar entries.

Each record ends with a carriage control (line break) character.

File Header Record

This record includes your company name and company number. It also designates the immediate destination of the entries in the file.

Field Description Position Length Format Service Management Field or Notes
Record Type Code 1 1   Value is 1. This identifies the file header record.
Priority Code 2 2   Value is 01. The lower the number, the higher the processing priority. Currently, only 01 is used.
Filler 4 1 Blank Not used.
Destination ID 5 9 Fill with zeros to the left apparms.ach_dest_id - Bank's transit routing number
Company ID 14 10 Left-justified apparms.ach_co_id - Company number. The use of an IRS federal tax ID number is recommended.
Creation Date 24 6 YYMMDD dbo.getsitedate - Date the input file was created.
Creation Time 30 4 HHMM dbo.getsitedate - Time of day the input file was created.
File ID 34 1 Uppercase A-Z Numeric 0-9 Initial value is A. This is a code to distinguish between multiple input files. If more than one file is delivered, they must have different file IDs.
Record Size 35 3   Value is 094 - Number of bytes per record.
Blocking Factor 38 2   Value is 10.
Format Code 40 1   Value is 1.
Destination Name 41 23 Left-justified bank_hdr.name - Name of bank. Form field is 60 characters, but is truncated here to 23.
Company Name 64 23 Left-justified parms.company - Name of your company. Form field is 60 characters, but is truncated here to 23.
Filler 87 8 Blanks Not used.
Note:  There is a space between the File Header Company Name and the Batch Header Record Code.

Batch Header Record

This record contains the effective entry (transaction) date, which is the date the deposits are settled. The record also identifies your company and contains an entry description for debits and credits in this batch.

Field Description Position Length Format Service Management Field or Notes
Record Type Code 1 1   Value is 5. This identifies the batch header record.
Service Class 2 3   Value is 200. This identifies the type of entries in the batch as ACH Entries Mixed Debits and Credits.
Company Name 5 16 Left-justified, alphanumeric parms.company - Form field is 60 characters, but is truncated here to 16.
Filler 21 20 Blanks Not used.
Company ID 41 10 Left-justified, alphanumeric apparms.ach_co_id - Company number. Value is the same as Company in the file header record, unless multiple companies or divisions are sent in one transmission.
Entry Class 51 3 Alphabetic Value is PPD. This identifies the entries in the class. The standard entry class used here is Prearranged Payments and Deposit entries.
Entry Description 54 10 Left-justified, alphanumeric Value is Vouchers. This is a description of the transaction that may be printed on the receiver's bank statement.
Company Descriptive Date 64 6 MMDDYY dbo.getsitedate. This is the current date, which is used to identify the transactions. It may be printed on the receiver's bank statement.
Effective Entry (Transaction) Date 70 6 YYMMDD dbo.getsitedate. This is the current date, which is used to post the transactions.
Filler 76 3 Blanks Not used.
Originator Status Code 79 1   Value is 1. This identifies the bank as a depository financial institution bound by the rules of the ACH.
Originating ID 80 8 Fill with zeros to left apparms.ach_orig_id - The transit routing number of the originating financial institution.
Batch Sequence Number 88 7 Fill with zeros to left Initial value is 1. Number batches sequentially.

PPD Detail Record

This record contains the information needed to post a deposit to an account, such as the receiver's name, account number, and payment amount.

Field Description Position Length Format Service Management Field or Notes
Record Type Code 1 1   Value is 6. This identifies a detail entry record.
Transaction Code 2 2 Numeric Identifies the account type at the receiving financial institution as a deposit destined for a checking account.
Detail Transit 4 8 Fill with zeros to left vendor.transit - Transit routing number of the receiver's financial institution.
Check Digit 12 1 Numeric The ninth digit of the receiving financial institution's transit routing number, calculated by Service Management.
Account Number 13 17 Left-justified, alphanumeric vendor.account - Receiver's bank account number.
Amount 30 10 Fill with zeros to left (no decimal point) DerDomAmtApplied * 100 - Transaction amount in dollars with two decimal places
Vendor ID 40 15 Left-justified, alphanumeric vendor.vend_num - This vendor number may be printed on the receiver's bank statement.
Vendor Name 55 22 Left-justified, alphanumeric vendaddr.name - Form field is 60 characters, but is truncated here to 22.
Filler 77 2 Blanks Not used.
Addenda 79 1 Numeric Value is 0 - Indicates no addenda records for this transaction.
Detail Orig ID 80 8 Fill with zeros to left apparms.ach_orig_id - This value is the origination ID of the receiver's bank.
Detail Sequence 88 7 Fill with zeros to left Initial value is 1. This value increments for every payment record.
Note:  The optional Entry Detail Addenda record is not included with Service Management A/P EFT files.

There are line breaks (carriage return characters) between each detail record.

Batch Control Total

This record appears at the end of eacth batch. It holds totals for the batch.

Field Description Position Length Format Service Management Field or Notes
Record Type Code 1 1   Value is 8. This identifies a batch control total record.
Service Class 2 3 Numeric Value is 200 - Identifies the type of entries in the batch as ACH Entries Mixed Debits and Credits.
Entry Count 5 6 Numeric. Fill with zeros to left Total number of detail records processed in the batch.
Entry Hash 11 10 Numeric Value is calculated by Service Management.
Total Debit Amount 21 12 Numeric. Fill with zeros to left Dollar total of debit entries in the batch.
Total Credit Amount 33 12 Numeric. Fill with zeros to left Sum of DerDomAmtApplied for each payment *100. This is the dollar total of credit entries in the batch.
Company ID 45 10   apparms.ach_co_id - This should match the Company ID used in the batch header.
Filler 55 19 Blanks Not used.
Origination ID 80 8 Numeric. Fill with zeros to left apparms.ach_orig_id - This should be the originating bank's routing number.
Sequence 88 7 Numeric. Fill with zeros to left Initial value is 1. This indicates the number of the batch associated with the control record.

File Control Records

This record provides a final check on the submitted data. It contains block and batch counts and totals for each type of entry.

Field Description Position Length Format Service Management Field or Notes
Record Type Code 1 1   Value is 9. This identifies a file control record.
Batch Count 2 6 Numeric. Fill with zeros to left Initial value is 1. This is the total number of batch header records in the file.
Block Count 8 6 Numeric. Fill with zeros to left This is the total number of physical blocks in the file, including the file header and file control records. Calculated by Service Management (blocks of 10).
Entry Count 14 8 Numeric. Fill with zeros to left This is the total number of detail records in the file.
Entry Hash 22 10 Numeric. Fill with zeros to left Value is calculated by Service Management.
Total Debit 32 12 Numeric. Fill with zeros to left Dollar total of debit entries in the file.
Total Credit 44 12 Numeric. Fill with zeros to left Sum of DerDomAmtApplied for every payment * 100. This is the dollar total of credit entries within the file.
Reserved 56 39 Blanks Leave this reserved field blank.