CNAB EFT Output Format
The Header and Footer records are the outer "envelope" of the transaction. The Batch Header and Batch Footer records act as an inner envelope.
Each record ends with a carriage control (line break) character.
Header Record
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Bank code in Compensation | 1 | 3 | Numeric | bank_addr_mst.bank_number
This is the bank that will receive the file. |
Batch service | 4 | 4 | Numeric | Sequential number to uniquely identify a lot of service. Created and managed responsible for generating the magnetic data in the file. Fill with '0001 'for the first batch file. For the others: use the batch number plus 1. The number must not be duplicated within the file. If the File Header record is complete, use '0000. If the file trailer record is complete, use '9999 '. |
Record type | 8 | 1 | Numeric | '0' |
Use Unique FEBRABAN/CNAB | 9 | 9 | Alphanumeric | Blanks |
Type of Company Registration | 18 | 1 | Numeric | 1 - for CPF 2 - for CNPJ. |
Company registration number | 19 | 14 | >Numeric | apparms_mst.registration_number |
Code of the Covenant in the database | 33 | 20 | Alphanumeric | Fill with "0009999990126 ", where 999999 is the number of the Covenant for payment, right-aligned with leading zeros, followed by "0126" for payment and other positions with blanks (spaces). |
Agency Sponsor of Account | 53 | 5 | Numeric | bank_addr_mst.branch_code |
Check digit of the Agency | 58 | 1 | Alphanumeric | Code adopted by the Bank responsible for the current account, to verify authenticity of the Code of the Agency. |
Current account number | 59 | 12 | Numeric | bank_hdr_mst.bank_acct_no |
Digit account Checker | 71 | 1 | Alphanumeric | Code adopted by
the responsible bank account to verify the authenticity of Current Account
Number. For banks that make use of two positions for the Check Digit Number
Current Account, fill this field with the 1st position of this digit.
Example:Number Current Account = 45981-36 In this case Account Check Digit = 3 |
Check digit of AG/Account | 72 | 1 | Alphanumeric | Blank |
Name of company | 73 | 30 | Alphanumeric | parms_mst.company |
Name of bank | >103 | 30 | Alphanumeric | bank_hdr_mst.name |
Use Unique FEBRABAN/CNAB | 133 | 10 | Alphanumeric | Blanks |
Shipping/Return Code | 143 | 1 | Numeric | 1 |
File generation date | 144 | 8 | Numeric | GetCurrentDate() |
File generation time | 152 | 6 | Numeric | GetCurrentTime() |
File sequence number | 158 | 6 | Numeric | apparms_mst.EFT_file |
No version of the file layout | 164 | 3 | Numeric | 083 |
File Recording density | 167 | 5 | Numeric | Zeros or blanks |
To Use Reserved seat | 172 | 20 | Alphanumeric | Text of remarks intended for the exclusive use of the Bank. |
Company reserved | 192 | 20 | Alphanumeric | Text of remarks intended for the exclusive use of the Company. |
Use Unique FEBRABAN/CNABe | 212 | 29 | Alphanumeric | Text of remarks intended for the sole use of FEBRABAN. Fill with blanks. |
Batch Header Record
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Bank code in Compensation | 1 | 3 | Numeric | bank_addr_mst.bank_number |
Batch service | 4 | 4 | Numeric | Sequential number to uniquely identify a lot of service. Created and managed responsible for generating the magnetic data in the file. Fill with '0001 'for the first batch file. For the others: use the batch number plus 1. The number must not be duplicated within the file. If the File Header record is complete, use '0000. If the file trailer record is complete, use '9999 '. |
Record type | 8 | 1 | Numeric | 1 |
Type of operation | 9 | 1 | Alphanumeric | C |
Service type | 10 | 2 | Numeric | 20 |
Release form | 12 | 2 | Numeric | 03 |
Version number of lot Layout | 14 | 3 | Numeric | 042 |
Use Unique FEBRABAN/CNAB | 17 | 1 | Alphanumeric | Blanks |
Type of Company Registration | 18 | 1 | Numeric | 2 |
Registration number of company | 19 | 14 | Numeric | apparms_mst.registration_number |
Code of the Covenant in the database (subdivided below) | 33 | 20 | Alphanumeric | |
No payment of the Covenant | 33 | 9 | apparms_mst.ach_origin_id | |
42 | 4 | 0126 | ||
46 | 5 | Blanks | ||
51 | 2 | |||
Agency Sponsor account | 53 | 5 | Numeric | bank_addr_mst_mst.branch_code |
Digit account Checker | 58 | 1 | Alphanumeric | Code adopted by
the responsible bank account to verify the authenticity of Current Account
Number. For banks that make use of two positions for the Check Digit Number
Current Account, fill this field with the 1st position of this digit.
Example: Number C / C = 45981-36 In this case Account Check Digit = 3 |
Current account number | 59 | 12 | Numeric | bank_hdr_mst.bank_acct_no |
Digit account Checker | 71 | 1 | Alphanumeric | same as above |
Check digit of Ag/Account | 72 | 1 | Alphanumeric | |
Name of company | 73 | 30 | Alphanumeric | parms_mst.company |
Message 1 | 103 | 40 | Alphanumeric | |
Street name | 143 | 30 | Alphanumeric | |
Local number | 173 | 5 | Numeric | |
Home, Apartment, Room, Etc | 178 | 15 | Alphanumeric | |
City name | 193 | 20 | Alphanumeric | |
CEP | 213 | 5 | Numeric | |
Add-on of the CEP | 218 | 3 | Alphanumeric | |
Abbreviation of the State | 221 | 2 | Alphanumeric | |
Use Unique FEBRABAN/CNAB | 223 | 8 | Alphanumeric | |
Code of Occurrences for return | 231 | 10 | Alphanumeric |
Segment A
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Bank code in Compensation | 1 | 3 | Numeric | bank_addr_mst.bank_number |
Batch service | 4 | 4 | Numeric | (From Batch Header record) 0001+ |
Record type | 8 | 1 | Numeric | 3 |
No record in the batch Sequence | 9 | 5 | Numeric | 00001+ |
Thread registry Detail | 14 | 1 | Alphanumeric | A |
Entry type | 15 | 1 | Numeric | 0 |
Code instruction for movement | 16 | 2 | Numeric | 00 |
Code Coordinating Board | 18 | 3 | Numeric | IF(appmt_mst.for_check_amt < 5000, 700, 018) |
Payee Bank code | 21 | 3 | Numeric | vendor_mst.EFT_bank_num |
Agency Sponsor of the payee's Account | 24 | 5 | Numeric | First 5 chars of vendor_mst.transit |
Check digit of the Agency | 29 | 1 | Alphanumeric | Code adopted by the Bank responsible for the current account, to verify authenticity of the Code of the Agency. |
Current account number | 30 | 12 | Numeric | vendor_mst.account |
Digit account Checker | 42 | 1 | Alphanumeric | Code adopted by
the responsible bank account to verify the authenticity of Current Account
Number. For banks that make use of two positions for the Check Digit Number
Current Account, fill this field with the 1st position of this digit.
Example: Number C / C = 45981-36 In this case Account Check Digit = 3 |
Check digit of AG/Account | 43 | 1 | Alphanumeric | Code adopted by
the Bank responsible for the current account, to verify authenticity of the
pair Branch Code / Account Number Current. For banks that make use of two
positions for the Check Digit Number Current Account, fill this field with the
2nd position of this digit.
Example: Number C / C = 45981-36 |
Payee name | 44 | 30 | Alphanumeric | Name OR VadRName = vendaddr_mst.name |
Document Number Assigned for Company | 74 | 20 | Alphanumeric | ppmt_mst.check_num (74-79)
+ (From Batch Header record) 0001+ (80-85) + apparms_mst.EFT_file (86-93) |
Date of payment | 94 | 8 | Numeric | appmt_mst.check_date |
Currency type | 102 | 3 | Alphanumeric | vendor_mst.curr_code |
Currency amount | 105 | 10 | Numeric | if Currency type = BRL (000) |
Payment amount | 120 | 13 | Numeric | appmt_mst.for_check_amt |
Document Number Assigned by the Bank | 135 | 20 | Alphanumeric | |
Actual date of Payment Effectuation | 155 | 8 | Numeric | 00000000 |
Actual value of the identifiable Pay | 163 | 13 | Numeric | 0000000000000 |
Other information. Salaries of servers by SIAPE | 178 | 40 | Alphanumeric | |
Supplement Service Type | 218 | 2 | Alphanumeric | 07 |
TED's purpose code | 220 | 5 | Alphanumeric | |
Add-on pay purpose. | 225 | 2 | Alphanumeric | |
Use Unique FEBRABAN/CNAB | 227 | 3 | Alphanumeric | |
Notice to the Payee | 230 | 1 | Numeric | 0 |
Codes of Occurrences p/return | 231 | 10 | Alphanumeric |
Batch Footer
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Bank code in Compensation | width="56">1 | width="40">3 | Numeric | bank_addr_mst.bank_number |
Batch service | 4 | 4 | Numeric | 0001+ |
Record type | 8 | 1 | Numeric | 5 |
Use Unique FEBRABAN/CNAB | 9 | 9 | Alphanumeric | Blanks |
Amount of batch Records | 18 | 6 | Numeric | Add Record types (1,3,5) |
Sum of the values | 24 | 16 | Numeric | SUM() |
Sum of amount of Coins | 42 | 13 | Numeric | SUM() |
Debit Notice number | 60 | 6 | Numeric | |
Use Unique FEBRABAN/CNAB | 66 | 165 | Alphanumeric | Blanks |
Return codes of occurrences for | 231 | 10 | Alphanumeric |
Footer
Field Description | Position | Length | Format | Field or Notes |
---|---|---|---|---|
Bank code in Compensation | 1 | 3 | Numeric | bank_addr_mst.bank_number |
Batch Service | 4 | 4 | Numeric | 9999 |
record type | 8 | 1 | Numeric | 9 |
Use Unigue FEBRABAN/CNAB | 9 | 9 | Alphanumeric | Blanks |
Amount of lots in File | 18 | 6 | Numeric | SUM() |
Amount of file records | 24 | v6 | Numeric | SUM() |
Number of Accounts for Conciliation (Lots) | 30 | 6 | Numeric | 000000 |
Use Exclusivo FEBRABAN/CNAB | 36 | 205 | Alphanumeric | Blanks |