Technology Standards Page > 2-D Barcode Standards Development > 2010 Final Standard
This
2-D Bar Coding Standards Revision 2010v1document is a Final Version.
Vendor
Codes [added October 2009]
* * * * * * * * * * *
By agreement of all market participants, use of these 2-D Standards (including Appendix 1) is designated mandatory. Our procedure is to continue to discuss appropriate issues as warranted and, where possible, come to agreement on what ought to be raised to the level of a mandatory Standard, based on group consensus.
1.
General
One agency point of contact should be established to assist with questions
and issues in implementation of 2-D bar coding.
There should also be a second point of contact as a backup for the primary person. 2-D specifications should include a phone, fax, e-mail and physical address for these individuals.
In some situations, an agency will have separate personnel that handle the 2-D approval process for vendor data output submitted, and for vendor substitute forms. Each should be listed, along with information for backups.
2.
Forms Design
Agencies should examine their candidate tax form(s) carefully to determine
whether 2-D can be used effectively. The agency should design the 2-D enabled
tax form; this cannot be the responsibility of a vendor.
Form design should change as little as possible:
Tax Form PDF Example - Handprint (Official Tax Booklet Version) |
Tax Form PDF Example - computer generated (with 2-D Barcode) (Computerized Version - may or may not contain a 2-D barcode) |
"If
a 2-D barcode (black and white shaded box) appears in the upper right corner
of page 1 of this form, send the return to one of the following addresses"
and "If a 2-D barcode (black and white shaded box) DOES NOT appear in
the upper right corner of page 1 of this form, send the return to one of the
following addresses"
each of which is followed by a
listing of pertinent addresses.
This bulleted list contains basic design standards for substitute full-page forms, and vouchers and coupons.
2.a. Paper and Ink
2.b. Form Text Design
2.c. Requirements for Vouchers and Coupons
Size:
For payroll applications, please also reference IRS Publications 1141 and 1179.
For more, See NACTP's established guidelines (Tax Forms Design Guidelines) at www.nactp.org.
3. 2-D Barcode Technical Matters
A uniform dynamic link library (DLL) that has application across all agencies and forms is available from agencies that are implementing 2-D bar coding for tax forms. A PDF-417 testing tool and instructions on how to obtain a CD-ROM with additional information on 2-D bar coding are also available. Software developers should contact the agency for which they are developing 2-D capable software for further information.
3.a. Barcode Size and Placement on the Form
Each agency must define the area of the form in which the 2-D barcode is to be placed. Agencies must specify the maximum rectangular dimensions that will enclose the barcode and the location of that rectangle on the form. Software vendors will generate an appropriate 2-D barcode within the space defined. The rectangle can be of any size. However, software vendors recommend a rectangle that has a 2:1 ratio, that is the width is twice the height, as this allows for the creation of an optimal barcode and therefore will provide the best read rates for the agencies. If an area that has a different width to height ratio is specified, the software vendor will generate a 2-D barcode within the space allotted, however read rates may be reduced.
- The X (horizontal) dimension of the barcode element should range from a minimum of 10 mils to a maximum of 25 mils.
- The minimum Y/X ratio of the barcode element should be 2.
- The minimum error correction code level should be 4.
3.b. Barcode Layout
The data contained in a 2-D barcode can be broken down into three general sections.
1. Header Information
2. Government Specific Data
3. Trailer
Each section is discussed separately below.
3.b.1. Header Information
There is information generic to all barcodes that should be placed first in the barcode data stream. The first two fields in the barcode comprise the header. The fields in the header are variable length and therefore can contain as much or as little data as is necessary. Each field in the barcode is delimited by a single carriage return. This separates each piece of data so it may be efficiently processed. The header information must be consistent among all barcodes and is defined below.
(Note: The symbol <CR> is used to represent a single carriage return character.)
3.b.2. Header Field Definition and Order
Header Version Number - The version number will be incremented each time the standards group alters the physical structure of the 2-D barcode header. This allows intelligence to be applied to processing 2-D barcodes that were created using multiple header formats. By using version numbers, software can correctly interpret 2-D barcode headers whose format has changed across fiscal years or within fiscal years. This field is static for all barcodes and is currently "T1".
Developer Code - A four-digit code used to identify the Software Developer whose application produced the barcode. The purpose of this field is to allow forms to be traced to the vendor producing the 2-D barcode. Software Developer codes are assigned through the NACTP. If you are a company interested in developing a 2-D based tax product offering, contact NACTP at the address listed in Appendix 1 to request an ID. Also see Appendix 1 for a current list of Company IDs.
When a vendor has multiple software
products that use the same calculation logic, then one vendor ID should suffice
for those software products; if different calculation logic is used by any
of that vendor’s software product, that product should be assigned its
own ID number for testing and approval.
[These multiple Vendor IDs are for use in the 2-D barcode specification in
the “developer code” field, since software companies can support
a different vendor code or ID printed on the actual graphic or form for these
multiple products. 2-D barcode ID can vary because the developer can set the
code by product but the capability is not present for the form template, since
not all products use the same form template and the ID code is hard coded
on the template.]
3.b.3. Government
Specific Data
[These fields are optional -- they can be
included by agencies in their specifications, if desired.]
The government Specific Data section immediately follows the Header Section. This is where the government places all the data and or fields it wishes to capture from a form. It is suggested that the following fields be added to the field layout before adding taxpayer data to the barcode data stream. These fields may be useful for your backend process. Include them only if your system requires them.
The following fields are NOT required. Do not include them if your
backend process does not use them.
Jurisdiction - An alphanumeric identifier indicating the taxing jurisdiction. Use US Postal Service's official state abbreviations. All Federal tax forms should use the code "US". This field should always be upper case.
Description - An alphanumeric identifier used to describe the form being processed. The identifier can be used to route the barcode information to the correct system for further processing. If no special routing or identification information is needed, the field should be blank. In situations where agencies are processing different forms with the same equipment, it is important to be able to uniquely identify the form before further processing of the barcode information can occur. As agencies add 2-D barcodes to more of their forms, this field will become increasingly important. Remember to always assign a unique value to this field for each form or form set you are processing.
Specification Version
- A number that identifies the version of the specifications used to produce
the form barcode. These specifications are provided by the jurisdiction processing
the form and describe the data layout in the barcode. Draft versions of the
specifications are not assigned version numbers. The final version shall be
"0", revision thereafter will increase numerically. It
is the responsibility of the processing
agency to communicate any revisions to final specifications to the software
development community at large so that the specification version can be incremented.
Software developers must increment the specification version number in the
header of any barcode they produce if a new version of specifications is issued
by the processing agency.
Software/Form Version
- A vendor defined version number that reflects the software and form revision
used to produce this barcode. This field can be used to track users that are
submitting forms using old software. This indicator should be set once the barcode has been approved
and incremented each time there is a change made to either the barcode itself
or any fields contained in the barcode. This item will only be incremented
when there are changes made that would affect the content of the barcode;
it will reflect the current barcode release - it will not necessarily indicate
the version number of the software release of the general tax product.
Software developers must include a software/form
version indicator of their choosing if the processing agency includes this
field in their barcode header specifications. Further, software developers
must increment this indicator when there are changes made that would affect
the content or formatting of the barcode. Upon incrementing the software/form
version indicator, software developers must inform their contact at the processing
agency of the new indicator value.
3.b.4. Trailer
The last field in the barcode data stream is the trailer. The trailer is used to indicate the end of data has been reached. A static string of "*EOD*" is used as the trailer value. Checking for the trailer gives the agencies an accurate method for determining if all the data supplied by the vendor was received by the agency. If the trailer value is not the last field in the barcode this indicates a data overflow condition has occurred. The agencies need to process forms where there is more data on the form than will fit in the barcode by other means. How to process forms that overflow the capacity of the 2-D barcode is beyond the scope of this standards document and is left up to government authorities to determine.
3.b.5. Examples - 2-D barcode data streams
EXAMPLE 1
T1<CR> Header Version Number
1111<CR> Developer Code
IN<CR> Government Specific Data
IT40<CR> Government Specific Data
0<CR> Government Specific Data
.
.
.
*EOD* <CR>
EXAMPLE 2
T1<CR> Header Version Number
9999<CR> Developer Code
CA<CR> Government Specific Data
540_2001<CR> Government Specific Data
1<CR> Government Specific Data
.
.
.
*EOD* <CR>
Additional technical guidance on PDF417 can be obtained from the Association for Information Management at www.aimusa.org.
4. File Format
Data Flow
The barcode can contain any taxpayer-entered data that appears on the printed form. The printed form refers to the return as it would ordinarily be submitted to the government agency.
Example: An example of a supporting statement is a listing of dependents. If there are only four lines on the main tax return to enter dependent information, and the actual number of dependents is six, a separate list must be attached to the return and is considered a supporting statement.
4.a. FIELD FORMAT TABLE
Print vs. 2-D Barcode
This chart outlines the treatment of data fields for print vs. 2-D barcode formatting, and is included here for reference purposes. It is offered to illustrate the differences between print format and 2-D barcode data.
As a general rule the field lengths of 2-D barcode data should never exceed that of the printed form. Agencies need not make changes to their forms for 2-D data capture unless they specifically wish to alter the data captured from their printed forms.
In general, when developing specifications for the 2-D barcode, use the current printed form standards already in place for the form in question as pertaining to the physical appearance of the form.
The fields listed below are those that commonly appear on forms. NOTE: This list of common fields will be added to as additional tax applications are implemented by taxing jurisdictions.
Fields not appearing in the table, that are determined after discussion with the 2-D Standards group to be specific to a particular agency, should be defined in that agency's specifications.
Regarding the data that is captured for the barcode, all non-essential data, commas, whitespace, leading zeros, should be removed.
NOTE:
All delimiters should be stripped in the barcode.
The examples given represent the MAXIMUM field lengths allowable.
DESCRIPTION |
PRINT FORMAT |
2-D BARCODE FORMAT |
||||
Dollar Amounts |
Individual Returns |
999,999,999. 12 positions |
999999999 |
|||
Business Returns |
99,999,999,999. |
99999999999 |
||||
Payroll Forms |
999,999,999.99 |
99999999999 |
||||
Dates |
Date without Century |
XX/XX/XX |
XXXXXX |
|||
Date with Century |
XX/XX/XXXX |
XXXXXXXX |
||||
Taxpayer Info |
Taxpayer Name |
35 positions |
35 positions |
|||
SpouseName |
35 positions |
35 positions |
||||
In Care Of |
35 positions |
35 positions |
||||
Address: |
35 positions |
35 positions |
||||
Private Mailbox |
7 positions |
7 positions |
||||
City |
21 positions |
21 positions |
||||
State |
3* positions |
2 positions |
||||
Zip |
XXXXX-XXXX* |
XXXXXXXXX |
||||
Taxpayer SSN Taxpayer EIN |
XXX-XX-XXXX XX-XXXXXXX |
XXXXXXXXX XXXXXXXXX |
||||
Spouse SSN |
XXX-XX-XXXX |
XXXXXXXXX |
||||
Taxpayer Occupation |
20 positions |
20 positions |
||||
Spouse Occupation |
20 positions |
20 positions |
||||
County |
25 positions |
25 positions |
||||
School District |
25 positions |
25 positions |
||||
Telephone Number |
XXX-XXX-XXXX* |
XXXXXXXXXX |
||||
Preparer Info |
Firm Name |
35 positions |
35 positions |
|||
Firm Address: |
35 positions |
35 positions |
||||
City |
21 positions |
21 positions |
||||
State |
3* positions |
2 positions |
||||
Zip |
XXXXX-XXXX* |
XXXXXXXXX |
||||
FEIN |
XX-XXXXXXX* |
XXXXXXXXX |
||||
PTIN |
9 positions |
XXXXXXXXX |
9 positions |
XXXXXXXXX |
* = may be preceded by a space
(Note: Depending on how the fields are generated by the different software companies, fields for Paper Filings, Electronic Filing, and 2-D barcodes may be interrelated. The field that actually appears on the printed form, in many cases controls how much data can be entered into an ELF or 2-D Barcode Field.
Example: If there were space constraints on the printed form which limited the County Name field to 15 Characters, this may affect 2-D and ELF lengths. If the ELF field and 2-D Barcode field were set at an allowable 25 characters, due to the Printed Form limitation of 15, only 15 characters would ever print in the ELF or 2-D Barcode fields.)
4.b. Field Standards for the 2-D Barcode
General Guide:
NOTE: Do not Zero-fill fields.
4.c. Field Standards
for Printed Forms
In the absence of printed instructions, round to the nearest dollar using
the following rounding examples (for payroll forms, use rounding only if required):
16.49 -> 16
16.50 -> 17
16.51 -> 17
-16.49 -> - 16
-16.50 -> - 16
-16.51 -> - 17
Please refer to the government's instructions on this matter for authoritative
guidance.
Preparer information section: (Note: *characters may be preceded by a blank space.)
5.
Testing/Approval Procedures
NACTP has issued guidance on recommended testing
and approval processes. See www.nactp.org for additional specifics. As a general
guideline, current software testing and forms approval timeframes and quality
assurance practices should be followed in the implementation of 2-D bar coding.
a. Testing Processes
1. The agency must supply substitute forms
developers with the test data to be used for the 2-D barcode:
- It is recommended that E-file customers
serve as the test client base for 2-D applications.
- Agencies test scenarios must be provided
on a copy of the agency's form.
- Test scenarios must be accurate and complete.
- Testing scenarios should include all fields
required for full testing of the 2-D barcode. This should include agencies
required fields such as SSN, FEIN and county/school codes.
- Agencies may base their test cases off the
PATS testing scenarios. If the current year's PATS test cases haven't been
released, agencies can use the prior year's test cases.
- Testing scenarios should be made available
upon release of the 2-D specifications to expedite the testing procedure.
In addition, agencies can offer software vendors
the opportunity to create their own test scenarios based on the agency's criteria.
This allows software developers to forward forms earlier for approval when
the test scenarios have been delayed.
2. Number of test scenarios
Up to six (6) sets of forms can be submitted
for approval, to include:
- One set of blank forms
- A maximum of five test scenarios per form
with either the same or different test scenarios. If
a software developer includes the same barcode in multiple products (retail
vs. CPA software packages, for instance), at least one of the test scenarios
should be printed from each of those products with an indication of the package
to which it belongs.
- If an agency requires a full field test
scenario, this test sample must be part of the five scenarios allowed.
b. Approval Procedures
The agency should provide up-to-date contact
information to software developers regarding forms acquisition and approval,
including accurate email addresses and web site information.
1. Agencies should update their primary contact
information in the interactive members only section of the NACTP web site.
Contact the [email protected] for instructions to update this information.
2. Agencies must provide accurate backup contact
information in case the primary contact is unavailable.
3. To facilitate forms approval, NACTP's preferred
method of providing test scenarios for 2-D barcode testing is via PDF. Whenever
possible, agencies are encouraged to support and allow PDF submissions by
those software developers that are able to do so.
4. Form content/format,
form scannability (when appropriate), and the 2-D barcode data string should
be approved separately and simultaneously, if possible, to facilitate vendor
internal processing and expedite the approval process. Agency responses to
approval submissions should always indicate exactly what is being approved
(content/format, scannability, and/or 2-D barcode data string) in such a way
that software developers understand which pieces of the process are complete
and which still remain unfinished.
5. Software developers should provide a cover
sheet/letter attached to the forms with a list of the forms submitted and
an area for an approval signature.
6. Agencies should notify software developers
of the outcome of their review within 10 business days of receipt of the substitute
forms.
7. Resubmissions: Software vendors should
be notified within three (3) business days of receipt of substitute forms
resubmitted.
8. Forms deemed "approved with corrections" should not require resubmission.
9. If the agency agrees, early testing can be done by submitting forms for
a "preliminary approval". The 2-D barcode approval will not be given
until the agency has ensured that all legislative changes have been included
in the testing of the 2-D barcode.
6. Barcode Specifications and Version Control Process
Agencies, software developers, symbology vendors, tax administration systems integrators, and others are asked to support 2-D standards in their implementation of this technology.
Regular, ongoing standards discussions and opportunities for input will be afforded to agencies and market participants by FTA and NACTP. Continue to access www.taxadmin.org or www.nactp.org for updated information.
Updated
– October, 2009
If you are a vendor of 2-D capabilities and you do not see your company here,
please contact Todd Goldberg, NACTP President, at 847-236-8369 or [email protected].
CLICK HERE for a list of Vendor Codes (pdf file – by Vendor Name)
CLICK HERE for a list of Vendor Codes (pdf file – by Vendor ID Number)