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
Related topics