NACHA IAT File Output Format
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 | 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. | |
Destination ID | 4 | 10 | Fill with zeros to the left | bank_hdr_bank_file_fmt_mst.ach_dest_id - Bank's transit routing number There is a space between Priority Code and Destination ID. |
Company ID | 14 | 10 | Left-justified | bank_hdr_bank_file_fmt_mst.ach_co_id - Company number. The use of an IRS federal tax ID number is recommended. The company ID is displayed in the output with leading zeros. |
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_mst.name - Name of bank. Form field is 60 characters, but is truncated here to 23. |
Company Name | 64 | 23 | Left-justified | parms_mst.company - Name of your company. Form field is 60 characters, but is truncated here to 23. |
Return | vbNewLine or vbCLf |
Batch Header Record IAT
This record contains the effective entry (transaction) date, which is the date the deposits will be settled. The record also identifies your company and contains an entry description for debits and credits in this batch.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 5. This identifies the batch header record.
There is a space between the Company Name and the Batch Header Record Type. |
|
Service Class Code | 2 | 3 | This value identifies the type of entries in the batch:
|
|
Company Name | 5 | 16 | Blanks | parms_mst.company - Form field is 60 characters, but is truncated here to 16. |
Foreign Exchange Indicator | 21 | 2 | Value is FF. There is no foreign exchange conversion for entries transmitted using this code. | |
Foreign Exchange Reference Indicator | 23 | 1 | Value is 3. Transaction does not use foreign exchange. | |
Foreign Exchange Reference | 24 | Space filled | ||
ISO Destination Country Code | 39 | 2 | vendaddr_mst.country . Use ISO country codes. |
|
Originator ID | 41 | 10 | fill 0 to left | If a person is not originating the batch, this field must contain the IRS Taxpayer Identification number (TIN) of the originators specified in the Originator Name field. NACHA rules do not indicate whether an alpha or number prefixing the TIN is acceptable. NACHA has recommended that third-party senders initiating an IAT transaction on behalf of another part use this field for the third-party sender's TIN. |
Entry Class | 51 | 3 | Alphabetic | Value is IAT. |
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. |
ISO Orig Curr Code | 64 | 3 | USD | |
ISO Dest Curr Code | 67 | 3 | USD | |
Date | 70 | 6 | MMDDYY | dbo.getsitedate |
Settlement Date | 76 | Blank | Leave blank. | |
Originator Status Code | 79 | 1 | Value is 1. This identifies the bank as a depository financial
institution bound by the rules of the ACH.
There are 3 spaces between the Transaction Date and the Originator Status. |
|
Originating ID | 80 | 8 | Fill with zeros to left | bank_hdr_bank_file_fmt_mst.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. |
Return | vbNewLine or vbCLf |
IAT 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 | 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. If DerDomAmtApplied > 0 then the value is 22 or 32; otherwise it is 27 or 37, depending on whether the vendor account is checking or savings. |
Detail Transit | 4 | 8 | Fill with zeros to left | vendor_mst.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 SyteLine. |
Num Addenda Records | 13 | 4 | 7. This number represents the number of addenda records associated with each Entry Detail record. | |
Filler | 17 | 13 | Blanks | |
Amount | 30 | 10 | Fill with zeros to left (no decimal point) | DerDomAmtApplied * 100 - Transaction amount in dollars with two decimal places |
Account Number | 40 | 35 | Left-justified | vendor_mst.account - Receiver's bank account number. |
Filler | 75 | 2 | Blanks | |
Filler | 77 | 1 | Blanks | |
Filler | 78 | 1 | Blanks | |
Addenda | 79 | 1 | Numeric | Value is 1 - Indicates that addenda records exist for this transaction. |
Trace Number | vendor_mst.transit + #. First 8 digits is vendor transit number; the last 7 digits must be incremented by 1 for each Detail record. |
|||
Detail Addenda Record Indicator | vbNewLine or vbCLf |
First IAT Addenda Record
This record contains addenda.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 7. | |
Addenda Code | 2 | 2 | Value is 10. | |
Transaction Code | 4 | 3 | Value is BUS. | |
Foreign Payment Amount | 7 | 18 | Numeric. Fill with zeros to left | DerDomAmtApplied * 100
No decimal. |
Foreign Trace Number | 25 | 22 | Space filled | Blank |
Receiving Company Name | 47 | 35 | vendaddr_mst.name |
|
Reserved | 82 | 6 | Space filled | |
Entry Detail | 88 | 7 | Fill with zeros to left | This number is the same as the last seven digits of the Trace Number. |
Return | vbNewLine or vbCLf |
Second IAT Addenda Record
This record contains addenda.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 7. | |
Addenda Code | 2 | 2 | Value is 11. | |
Originator Name | 4 | 35 | parms_mst.company Field is 60 characters but will be truncated to 35. |
|
Street Address | 39 | 35 | parms_mst.addr##1 This is the physical address of the originator. A PO Box is not allowed. |
|
Reserved | 74 | 14 | ||
EntryDetailSeqNumber | 88 | 7 | ||
Return | vbNewLine or vbCLf |
Third IAT Addenda Record
This record contains addenda.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 7. | |
Addenda Code | 2 | 2 | Value is 12. | |
Originator City and State | 4 | 35 | parms_mst.city + * + parms_mst.state + \ The originator's city and state/province. Use an asterisk between the city and state/province. Use a backslash as the terminator. |
|
Originator Country and Postal Code | 39 | 35 | parms_mst.country + * + parms_mst.zip + \ The originator's country and ZIP code. Use an asterisk between the country and ZIP. Use a backslash as the terminator. |
|
Reserved | 74 | 14 | ||
EntryDetailSeqNumber | 88 | 7 | ||
Return | vbNewLine or vbCLf |
Fourth IAT Addenda Record
This record contains addenda.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 7. | |
Addenda Code | 2 | 2 | Value is 13. | |
Originating Bank Name | 4 | 35 | bank_hdr_mst.name |
|
39 | 2 | |||
Originating Bank ID | 41 | 34 | bank_hdr_bank_file_fmt_mst.ach_orig_id |
|
Originating Branch Country Code | 75 | 3 | parms_mst.country |
|
Reserved | 78 | 10 | Blank | |
EntryDetailSeqNumber | 88 | 7 | ||
Return | vbNewLine or vbCLf |
Fifth IAT Addenda Record
This record contains addenda.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 7. | |
Addenda Code | 2 | 2 | Value is 14. | |
Receiving Bank Name | 4 | 35 | vendor_mst.bank_name |
|
Receiving Number Qualifier | 39 | 2 | vendor.transit_reference If US is specified for the Receiving Branch Country Code, this defaults to 01. |
|
Receiving Bank Routing Number | 41 | 34 | vendor_mst.transit |
|
Receiving Branch Country Code | 75 | 3 | vendaddr_mst.country |
|
Reserved | 78 | 10 | Blank | |
EntryDetailSeqNumber | 88 | 7 | ||
Return | vbNewLine or vbCLf |
Sixth IAT Addenda Record
This record contains addenda.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 7. | |
Addenda Code | 2 | 2 | Value is 15. | |
Receiver's ID Number | 4 | 15 | vendor_mst.vend_num |
|
Receiver's Street Address | 19 | 35 | vendaddr_mst.addr##1(vadRAddr_1 or VadAddr_1) |
|
Reserved | 54 | 34 | Space
filled |
|
EntryDetailSeqNumber | 88 | 7 | ||
Return | vbNewLine or vbCLf |
Seventh IAT Addenda Record
This record contains addenda.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 7. | |
Addenda Code | 2 | 2 | Value is 16. | |
Receiver City and State | 4 | 35 | vendaddr_mst.city + * + vendaddr_mst.state + \ The receiver's city and state/province. Use an asterisk between the city and state/province. Use a backslash as the terminator. |
|
Receiver Country and Postal Code | 39 | 35 | vendaddr_mst.country + * + vendaddr_mst.zip + \ The receiver's country and ZIP code. Use an asterisk between the country and ZIP. Use a backslash as the terminator. |
|
Reserved | 74 | 14 | ||
EntryDetailSeqNumber | 88 | 7 | ||
Return | vbNewLine or vbCLf |
Batch Control Record
This record appears at the end of each batch. It holds totals for the batch.
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Record Type Code | 1 | 1 | Value is 8. This identifies a batch control total record. | |
Service Class | 2 | 3 | Numeric | This value identifies the type of entries in the batch:
|
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 SyteLine . |
Total Debit Amount | 21 | 12 | Numeric. Fill with zeros to left | Sum of all negative DerDomAmtApplied for each payment *100. |
Total Credit Amount | 33 | 12 | Numeric. Fill with zeros to left | Sum of all positive DerDomAmtApplied for each payment *100. This is the dollar total of credit entries in the batch. |
Company ID | 45 | 10 | bank_hdr_bank_file_fmt_mst.ach_co_id - This should match the Company ID used in the batch header. The company ID is displayed in the output with leading zeros. |
|
Filler | 55 | 25 | Blanks | Not used. |
Origination ID | 80 | 8 | Numeric. Fill with zeros to left | bank_hdr_bank_file_fmt_mst.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. |
Return | vbNewLine or vbCLf |
File Control Record
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 | 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 | The system calculates the number of detail records, plus all header and control records, and divides by 10 to get the block count. If there is a remainder, it adds 1 to the block count. |
Entry Count | 14 | 8 | Numeric. Fill with zeros to left | This is the total number of detail and addenda records in the file. |
Entry Hash | 22 | 10 | Numeric. Fill with zeros to left | Value is calculated by SyteLine. |
Total Debit | 32 | 12 | Numeric. Fill with zeros to left | Sum of negative DerDomAmtApplied for every payment * 100Dollar total of debit entries in the file. |
Total Credit | 44 | 12 | Numeric. Fill with zeros to left | Sum of positive 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. |
Return | vbNewLine or vbCLf |