In this article, you will learn
- where barcodes are used within the application,
- which barcodes are available,
- which content, which characters and which check method the respective barcode can use.
1. General
Barcodes are used in practice to create machine-readable data carriers and serve for the unique identification and further processing of information. $PRODUCT_NAME_WORKFLOW supports both static and variable data for content creation. The encoded content can be entered either manually or provided via a CSV file.
Typical use cases for barcodes include:
- Article identification – applying article numbers to packaging for fast capture in kiosk and point-of-sale systems.
- Lot numbers – generating unique identifiers, for example for prize competitions or raffles.
- Batch numbers – creating combined number ranges with sequential numbering and additional text information.
- Package identification – storing information for machine-readable processing in logistics and routing systems.
- IDs/Badges – creating access credentials for events such as trade fairs, conferences, or fitness centers.
In $PRODUCT_NAME_WORKFLOW, different areas are available in which barcodes can be generated and processed:
- VDP Editor – creation of variable barcodes for the personalization of print products.
- Impose Editor – identification of print products for downstream production processes.
- PDF Editor – reading barcode information as well as deleting and replacing barcodes.
2. List of Supported Barcodes
In $PRODUCT_NAME_WORKFLOW application, more than 75 different barcode variants are available. The following list provides a detailed overview of which barcodes are available and which characters can be used for each barcode type – each accompanied by a valid example. Where multiple check methods are supported, they are specified for each individual barcode.
For a better overview, the barcodes are grouped into four categories below.
2.1. Linear Barcodes
One-dimensional barcodes (1D barcodes) encode information using bars and spaces of varying widths and therefore also referred to as linear barcodes. Due to their structure, they can only store a limited amount of data.
A key advantage of 1D barcodes is their simple and cost-effective scanning using laser scanners. As a result, they are widely used across many industries. Devices capable of reading two-dimensional codes such as QR codes typically also support 1D barcode scanning. Modern end devices, such as smartphones, are therefore able to capture both linear and two-dimensional barcodes.
Barcode readability
The readability of barcodes depends heavily on the printing process used. In digital printing, rotating the Print Item by 90° (lines printed parallel to printhead movement direction) in imposition can partially improve the readability of linear codes, especially when the resolution of the printing system differs between the X and Y axes. Printing the bars of linear barcodes in the direction of the higher resolution often significantly improves barcode readability. While ink behavior differs between different substrates there are various options to prevent readability of the barcodes, like for example bar width reduction.
For companies, the use of appropriate scanning software is a key prerequisite for efficient and reliable workflows. Typical application areas include retail, logistics, the insurance sector, and healthcare.
The following barcodes are available as linear barcodes in $PRODUCT_NAME_WORKFLOW:
Code 11
Primarily used in telecommunication for labeling equipment and components.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible check methods: 1Code11, 2Code11, None, Standard
Code 2 of 5 Standard
This self-checking code is used for industrial applications, product numbering, photo processing, and ticketing systems.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible check methods: None, Mod10, Mod10Luhn, Mod11W9, Standard
Code 2 of 5 Interleaved
This self-checking code is widely used for encoding article numbers as well as for industrial applications.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible check methods: None, Mod10, Mod10ltlPst25, Mod10Luhn, Mod11W9, Standard
Code 2 of 5 IATA
This self-checking code is used for baggage handling in air transport (International Air Transport Agency = IATA). It is particularly well suited for scanning from distances of more than one meter.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible test methods: None, Mod10, Mod10Luhn, Mod11W9, Standard
Code 2 of 5 Matrix
This non-self-checking code is equivalent to the Code 2 of 5 Standard code.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible check methods: None, Mod10, Mod10Luhn, Mod11W9, Standard
Code 2 of 5 Data Logic
This non-self-checking code is a sub-variant of the Code 2 of 5 Standard code.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible check methods: None, Mod10, Mod10Luhn, Mod11W9, Standard
Code 2 of 5 Industry
This non-self-checking code is a sub-variant of the Code 2 of 5 Standard code.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible check methods: None, Mod10, Mod10Luhn, Mod11W9, Standard
Code 39
This self-checking code is widely used in industry, organizations and retail.
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: ABCD1234
- Possible check methods: None, Mod10Luhn, Mod11W10, Mod11W7, Mod43, Standard, Swedish Postal
Code 39 Full ASCII
This self-checking code is an extension of Code 39.
- Available characters: ASCII characters in the range of 0 to 127
- Valid example: Aa-1234
- Possible check methods: None, Mod10Luhn, Mod11W10, Mod11W7, Mod43, Standard, Swedish Postal
Code 93
This self-checking code has the same character set as Code 39 but offers higher information density and requires less space.
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: ABC-1234-/+
- Possible check methods: None, 2Mod47, Standard
Code 93 Full ASCII
This self-checking code is an extension of Code 93 that allows representation of the complete ASCII character set.
- Available characters: ASCII characters in the range 0 to 127
- Valid example: 12345AbCdEf6789
- Possible check methods: None, 2Mod47, Standard
Code 128 Subset A
This is a variant of Code 128 that uses character set (subset) A. It is appropriate for encoding uppercase letters and ASCII control sequences. It switches to other Code 128 subsets if required.
- Available characters: ASCII characters in the range 0 to 127
- Valid example: ABCabc
- Possible check methods: None, Code 128, Mod10, Mod10Luhn, Mod23PPSN, Standard, Swedish Postal
Code 128 Subset B
This is a variant of Code 128 that uses character set (subset) A. It is appropriate for encoding uppercase letters and ASCII control sequences. It switches to other Code 128 subsets if required.
- Available characters: ASCII characters in the range 0 to 127
- Valid example: ABCabc
- Possible check methods: None, Code 128, Mod10, Mod10Luhn, Mod23PPSN, Standard, Swedish Postal
Code 128 Subset C
This is a variant of Code 128 that uses character set (subset) A. It is appropriate for encoding uppercase letters and ASCII control sequences. It switches to other Code 128 subsets if required.
- Available characters: ASCII characters in the range 0 to 127
- Valid example: ABCabc
- Possible check methods: None, Code 128, Mod10, Mod10Luhn, Mod23PPSN, Standard, Swedish Postal
Codabar 2 Widths
The characters "A", "B", "C", and "D" can only be used as start or stop characters. The barcode uses two element widths and four different start/stop characters (A, B, C and D). These start/stop characters can be used to encode additional information – for example, "B1234B".
- Available characters: digits from 0 to 9
- Valid example: A12345A
- Possible check methods: None, Mod10, Mod10Luhn, Mod16, Standard
DAFT Code
This code is not a symbology and is used for generating arbitrary postal codes.
- Available characters: D, A, F, T or d, a, f, t
- Valid example: fdfttadA
- Possible check methods: None, Standard
EAN-13
The 13-digit code (12 data digits + 1 check digit) is used in retail and consists of 2-digit country code, a 5-digit manufacturer code, and a 5-digit product number. IAN and JAN are equivalent to EAN; the encoded number is also referred to as GTIN-13.
- Available characters: digits from 0 to 9
- Valid example: 0123456786578
- Possible check methods: EAN-13, None, Standard
EAN-14 (GTIN-14)
This code is used to encode the GTIN (Global Trade Item Number) for the identification of trade items. Within the GS1 system, 2 symbologies can be used for GTIN encoding:
- Available characters: ASCII characters in the range 0 to 127
- Valid example: 66655522288874
- Possible check methods: EAN-14, None, Standard
EAN-13 + 5 Digits
This symbology extends EAN-13 with five additional digits. The check digit is calculated automatically if it is not included in the input data (e.g. 978020137968612345).
- Available characters: digits from 0 to 9
- Valid example: 012345678657811563
- Possible check methods: None, EAN-13, Standard
EAN-13 + 2 Digits
This symbology extends EAN-13 with two additional digits. The check digit is calculated automatically if it is not included in the input data (e.g. 978020137968612).
- Available characters: digits from 0 to 9
- Valid example: 012345678657811
- Possible check methods: None, EAN-13, Standard
EAN-8
Reserved for European Article Numbering (EAN), particularly for small items with little space (e.g. cosmetics, pharmaceuticals, etc.). The unique number (centrally managed) identifies the manufacturer and the product;
- Available characters: digits from 0 to 9
- Valid example: 12345678
- Possible check methods: None, EAN-8, Standard
EAN-8 + 2 Digits
This code is identical to EAN-8; however two additional digits (e.g. weight, price) can be encoded. It is used for magazines and paperbacks.
- Available characters: digits from 0 to 9
- Valid example: 1234567855
- Possible check methods: None, EAN-8, Standard
EAN-8 + 5 Digits
This code is identical to EAN-8; however five additional five digits (e.g. weight, price, etc.) can be encoded. It is used for magazines and paperbacks.
- Available characters: digits from 0 to 9
- Valid example: 1234567855666
- Possible check methods: None, EAN-8, Standard
EAN /UCC-128
Universal applications, e.g. in retail, shipping and food labeling: GS1-128 can encode not only the EAN number (GTIN) but also quantities, weight, price, and other product data.
- Available characters: ASCII characters between positions 0 and 127
- Valid example: ABCabc1234
- Possible check methods: None, EAN-128, Mod10, Standard
GS1-128 (EAN/UCC-128)
Universal application scenarios, e.g., in retail, shipping, and food labeling: GS1-128 can encode not only the EAN number (GTIN), but also additional product-related data such as quantity, weight, price, and other attributes.
- Available characters: ASCII characters in the range 0 to 127
- Valid example: 01090999995432171512052110Abc123 (max. 35 characters)
- Available check methods: None, EAN-128, Mod10, Standard
GS1 DataBar (RSS-14)
GS1 DataBar is used to encode the GTIN (Global Trade Item Number) together with the Application Identifier (AI) "01". The GTIN consists of a packaging indicator (09), followed by a 12-digit number (derived from the EAN-13 item numbering system), and a check digit.
- Available characters: digits from 0 to 9
- Valid example: 00614141999996 (14 digits)
- Available check methods: Standard
GS1 DataBar Stacked (RSS-14)
This symbology is similar to GS1 DataBar but is split into two rows to reduce the overall symbol size. It is used for pharmaceutical packaging. Omnidirectional scanning is not supported.
- Available characters: digits from 0 to 9
- Valid example: 00614141999996 (14 digits)
- Available check methods: Standard
GS1 DataBar Stacked Omnidir (RSS-14)
This symbology is similar to GS1 DataBar but is split into two rows to reduce the overall symbol size. It is used for pharmaceutical packaging. Omnidirectional scanning is supported.
- Available characters: digits from 0 to 9
- Valid example: 00614141999996 (14 digits)
- Available check methods: Standard
GS1 DataBar Expanded (RDD)
GS1 DataBar Expanded (RSS) is a variable-length symbology. It can encode up to 74 numeric or 41 alphanumeric characters in combination with Application Identifiers (AIs). Omnidirectional scanning is supported.
- Available characters: digits from 0 to 9; ASCII characters in the range 0 to 128
- Valid example: 0100614141999996
- Available check methods: Standard, ANSI, ANSI_Cyrillic, and many others
GS1 DataBar Expanded Stacked (RSS)
GS1 DataBar Expanded Stacked (RSS) is a variable-length symbology. It can encode up to 74 numeric or 41 alphanumeric characters with Application Identifiers (AIs). The number of data segments per row may vary between 4 and 22, with a default of four segments.
- Available characters: digits from 0 to 9; ASCII characters in the range 0 to 128
- Valid example: 0100614141999996
- Available check methods: None, EAN-14, Mod10, Standard
GS1 DataBar Truncated
This symbology is similar to the GS1 DataBar code but is more compact and restricted to a packaging indicator (first digit) of 0 or 1.
- Available characters: digits from 0 to 9
- Valid example: 00614141999996 (14 digits)
- Available check methods: Standard
UCC-128
Same as EAN/UCC-128
- Available characters: ASCII characters in the range 0 to 128
- Valid example: ABCabc1234
- Possible check methods: None, EAN-128, Mod10, Standard
UPC-12
UPC-12 is used in the United States for retail product identification (similar to EAN).
- Available characters: digits from 0 to 9; 11 digits + 1 check digit
- Valid example: 123456789012
- Possible check methods: None, UPC-A, Standard
UPC-A
UPC-A is used in the United States for retail production identification (similar to EAN).
- Available characters: digits from 0 to 9; 11 digits + 1 check digit
- Valid example: 123456789012
- Possible check methods: None, UPC-A, Standard
UPC-A + 2 Digits
This code is identical to UPC-A but includes two additional digits.
- Available characters: digits from 0 to 9; 13 digits + 1 check digit
- Valid example: 12345678901213
- Possible check methods: None, UPC-A
UPC-A + 5 Digits
The code is identical to UPC-A but includes five additional digits.
- Available characters: digits from 0 to 9; 16 digits + 1 check digit
- Valid example: 12345678901213444
- Possible check methods: None, UPC-A, Standard
UPC-E
UPC-E is used for product identification and barcode labeling of items. The code must start with "0" or "1".
- Available characters: digits from 0 to 9; 7 digits + 1 check digit
- Valid example: 12345678
- Possible check methods: None, UPC-E, Standard
UPC-E + 2 Digits
The code is identical to UPC-E but includes two additional digits.
- Available characters: digits from 0 to 9; 9 digits + 1 check digit
- Valid example: 1234567890
- Possible check methods: None, UPC-E, Standard
UPC-E + 5 Digits
The code is identical to UPC E but includes five additional digits.
- Available characters: digits from 0 to 9; 12 digits + 1 check digit
- Valid example: 1234567890
- Possible check methods: None, UPC-E, Standard
Plessey
The Plessey code is primarily used in libraries. It is a pulse-duration modulated barcode symbology.
- Available characters: digits from 0 to 9; capital letters A, B, C, D, E, F
- Valid example: 1234567890
- Possible check methods: None, Plessey, Standard
Plessey Bidirectional
The code is used to generate the Plessey barcode symbol. The Plessey barcode symbology, known as Plessey Bidirectional, is an older code standard that is still used in some industries. It is a continuous barcode symbology with lower data density and variable length. The code was used in European point-of-sale systems prior to the introduction of EAN.
- Available characters: digits from 0 to 9; uppercase letters A, B, C, D, E, F
- Valid example: ABCDF1234567890
- Possible check methods: None, Plessey, Standard
PZN-7
PZN-7 is based on Code 39. In addition to the actual identification number, it includes a check digit at the end. The PZN (Pharma Central Number) is used for the unique identification of finished pharmaceutical products, including trademark, strength, dosage form and package size.
- Available characters: digits from 0 to 9
- Valid example: 1112221
- Possible check methods: None, PZN, Standard
PZN-8
PZN-8 is based on the PZN-7 and, through the additional digit, provides a larger numbering range.
- Available characters: digits from 0 to 9
- Valid example: 11122215
- Possible check methods: None, PZN, Standard
Telepen
Telepen code is a one-dimensional variable length symbology that encodes all 128 ASCII characters without the use of shift characters and remains highly reliable even when printed with standard printers not specifically designed for barcode printing. Telepen was developed as a competitor to Code 128 and Code 93 and was primarily used in university and other academic libraries in the United Kingdom.
- Available characters: ASCII characters with values from 0 to 127
- Valid example: 0123456X
- Possible check methods: None, Standard
Telepen Alpha
Telepen Alpha is the alphanumeric variant of Telepen.
- Available characters: ASCII characters with values from 0 to 127
- Valid example: ABCabc
- Possible check methods: None, Standard
Registration Marks
This is a special "barcode" used in printing environments to determine the correct page order.
- Available characters: digits from 0 to 9
- Valid example: 123456789
- Possible check methods: None
ISBN-13
ISBN is the abbreviation for International Standard Book Number. It uses the EAN-13 symbology.
- Available characters: digits from 0 to 9; 12 digits + 1 check digit
- Valid example: 9780201379686
- Possible check methods: None, EAN-12, Standard
ISBN-13 + 5 Digits
ISBN is the abbreviation for International Standard Book Number. It uses the EAN-13 symbology and can optionally be extended with five additional digits. These additional digits are used to encode supplementary price information.
- Available characters: digits from 0 to 9; 12 digits + 1 check digit + 5 additional digits
- Valid example: 978020137968644444
- Possible check methods: None, EAN-13, Standard
ISMN
ISMN stands for International Standard Music Number. ISMN is a standardized international code used to identify printed music publications.
- Available characters: digits from 0 to 9; 12 digits + 1 check digit
- Valid example: 979-0-1234-5678-5
- Possible check methods: None, EAN-13, Standard
ISSN
ISSN stands for International Standard Serial Number. The ISSN is a standardized international code that identifies any serial publications, regardless of their country of origin, language or alphabet, publication frequency, or medium.
- Available characters: digits from 0 to 9; 12 digits + 1 check digit
- Valid example: 9771234567898
- Possible check methods: None, EAN-13, Standard
ISSN + 2 Digits
ISSN stands for International Standard Serial Number. The ISSN is a standardized international code used to identify serial publications, regardless of their country of origin, language or alphabet, publication frequency, or medium. In this variant of the ISSN code, the issue number is appended as a two-digit suffix.
- Available characters: digits from 0 to 9; 12 digits + 1 check digit + 2 digits (issue number)
- Valid example: 977123456789822
- Possible check methods: None, EAN-13, Standard
ITF-14 (GTIN-14)
ITF-14 is restricted to encoding the GTIN for trade units that are not intended to pass through retail point-of-sale systems. It is particularly well suited for direct printing on corrugated cardboard.
- Available characters: digits from 0 to 9; 13 digits + 1 check digit
- Valid example: 00614141999996
- Possible check methods: None, EAN-14, Standard
MSI
The MSI code is a variant of the Plessey code. MSI supports multiple check digit calculation methods.
- Available characters: digits from 0 to 9
- Valid example: 123456
- Possible check methods: None, MSI1, MSI2, Standard
SSCC-18
SSCC-18 is used to encode the Serial Shipping Container Code. It is used for the unique identification of trade items worldwide. The SSCC-18 is based on the GS1-128 symbology with Application Identifier (AI) 00. The check digit is automatically generated when 17 digits are provided as input data.
- Available characters: digits from 0 to 9; 17 digits + 1 check digit
- Valid example: 012345678901234560
- Possible check methods: None, Mod10, Standard
LOGMARS
This is a special variant of Code 39 used by the U.S. Department of Defense. The standard defines permitted ranges for serial parameters, including density, ratio, bar height, and the size of the human-readable interpretation line. The Modulo 43 check digit, which is optional for Code 39, is defined and recommended in the specification.
- Available characters: digits from 0 to 9; 17 digits + 1 check digit
- Valid example: ABCDEF
- Possible check methods: Mod 11, Mod 43
NVE 18
NVE stands for "Number of Shipping Unit" (a term for tracking number). This code uses an GS1-128 symbology with the Application Identifier (AI) 00. The AI "00" is inserted automatically and must not be included in the input data. It is comparable to SSCC-18.
- Available characters: digits from 0 to 9
- Valid example: 012345678901234560
- Possible check methods: None, Mod10, Standard
VIN/FIN
The VIN code is used for vehicle identification. It is based on Code 39, but does not include start and stop characters. The permitted character set consists of digits and uppercase letters. The letters "I", "O", and "Q" are not allowed, as they can easily be confused with the digits "0" and "1".
- Available characters: digits from 0 to 9; uppercase letters from A to Z (excluding I, O and Q)
- Valid example: VB1YYY1JX3M386752
- Possible check methods: None, VIN, Standard
2.2. Post Codes
Australia Post 4-State Standard Customer Barcode
Australia Post uses this barcode to identify shipments. Special code variantss exists for redirects, replies, and other use cases. The barcode height ranges between 4.2 mm and 5.8 mm. The module width should be set to 0.47 mm. In general, no human-readable text is displayed. The length depends on the use of additional bars (customer 2 and customer 3 variants).
Due to the number of bars (37), the Australian Post Customer Barcode is also referred to as the Australia Post 37-CUST.
- Available characters: digits from 0 to 9; 8 digits
- Valid example: 12345678
- Possible check methods: None, Standard
Australia Post Customer Barcode 2
This is the same barcode as the Australia Post Standard Customer Barcode, but with an additional five digits character for customer-specific data. The first eight digits must consist of digits. This symbology is also referred to as Australia Post 52-CUST (due to its 52 bars).
Due to the number of bars (37), the Australia Post Customer Barcode is also referred to as Australia Post 37-CUST.
- Available characters: digits from 0 to 9; uppercase and lowercase letters A to Z; space #
- Valid example: 12345678ABab
- Possible check methods: None, Standard
Australia Post Customer Barcode 3
This is the same barcode as the Australia Post Standard Customer Barcode, but with an additional ten characters for customer-specific data. The first eight characters must be digits. This symbology is also referred to as Australia Post 67-CUST (due to its 67 bars).
- Available characters: digits from 0 to 9; uppercase and lowercase letters A to Z; space; #
- Valid example: 12345678ABCabc
- Possible check methods: None, Standard
Australia Post Redirection
This code is another variant of the Australia Post 4-State Standard Customer Barcode.
- Available characters: digits from 0 to 9; 8 digits
- Valid example: 12345678
- Possible check methods: None, Standard
Australia Post Reply Paid
This code is another variant of the Australia Post 4-State Standard Customer Barcode.
- Available characters: digits from 0 to 9; 8 digits
- Valid example: 12345678
- Possible check methods: None, Standard
Australia Post Routing
This code is another variant of the Australia Post 4-State Standard Customer Barcode.
- Available characters: digits from 0 to 9; 8 digits
- Valid example: 12345678
- Possible check methods: None, Standard
DP Identcode
This non-self-checking code is a subvariant of the Code 2 of 5 Interleaved, extended with a specific check digit calculation method. It is used by customers of Deutsche Post AG for freight shipments to enable automatic sorting in freight mail centers.
- Available characters: digits from 0 to 9
- Valid example: 0123456786
- Possible check methods: None, DPIdent, Standard
DP Guide Code
This non-self-checking code is a subvariant of the Code 2 of 5 Interleaved, extended with a specific check digit calculation method. It is used to encode the postal code, street and number of the shipment. It is used by customers of Deutsche Post AG for freight shipments to enable automatic sorting in freight mail centers.
- Available characters: digits from 0 to 9
- Valid example: 0123456786
- Possible check methods: None, DPLeit, Standard
DPD Code
This code is used by DPD (Deutscher Paketdienst). It is based on Code 128 and is limited to 28 encoded digits. The encoded data and the human-readable text differ slightly.
- Available characters: ASCII characters from positions 32 to 127
- Valid example: X007110601631234567890136276
- Possible check methods: None, Code 1285, Standard
USPS Intelligent Mail Barcode (IMb)
The Intelligent Mail Barcode (IMb) is a 65-bar Postal Service barcode used by the United States Postal Service for sorting and tracking letters and flats. It enables mailers to participate in multiple USPS programs with a single barcode, enhances tracking capabilities, and increases visibility within the mail stream. There are three usage options for IMb: Non Automation, Basic Automation, and Full Service. In each case, barcode accuracy and compatibility should be tested, or certified providers shoukd be used.
- Available characters: digits from 0 to 9; 20 digits + 0, 5, 9 or 11-digit postal code
- Valid example: 12345678901234567890
- Possible check methods: None, Standard
USPS Intelligent Mail Package (IMpb)
The IMpb contains routing information in the barcode, enabling the Postal Service to sort and track parcels through the network using automated equipment – up to the post offices responsible for final delivery at the destination. The electronic data and the intelligent barcode allow the Postal Service to plan workload and resources before and during parcel transit through the network.
- Available characters: digits from 0 to 9; + FNC1, routing information: 0, 8 or 12 digits + tracking information: 22 to 26 digits
- Valid example: 9102805213683062522920
- Possible check methods: None, Mod10IMPackage, Standard
USPS POSTNET 5 (ZIP)
This code was used by the United States Postal Service (USPS) for bulk mailing applications. It encodes a 5-digit ZIP code. The check digit is calculated automatically and must not be included in the input data.
- Available characters: digits from 0 to 9; 5 digits + 1 check digit
- Valid example: 12345
- Possible check methods: USPS POSTNET, Standard
USPS POSTNET 6 (ZIP+cd)
As USPS 5, but the check digit can be specified (the 6th digit)
- Available characters: digits from 0 to 9; 6 digits + 1 check digit
- Valid example: 123456
- Possible check methods: None, USPS POSTNET, Standard
USPS POSTNET 9 (ZIP+4)
This code was used by the United States Postal Services for bulk mailing applications. Coded is a 5-digit ZIP code and 4 additional digits. The check digit is calculated automatically, it cannot be specified in the input data.
- Available characters: Digits from 0 to 9; 9 digits + 1 check digit
- Valid example: 123456789
- Possible test methods: USPS POSTNET, Standard
USPS POSTNET 10 (ZIP+4+cd)
Like USPS POSTNET 9, but the check digit can be specified (the 10th digit).
- Available characters: digits from 0 to 9; 9 digits + 1 check digit
- Valid example: 1234567890
- Possible check methods: None, USPS POSTNET, Standard
USPS POSTNET 11 (ZIP+4+2)
This code was used by the United States Postal Service (USPS) for bulk mailing applications. It encodes a 5-digit ZIP code plus 6 additional digits. The check digit is calculated automatically and must not be included in the input data.
- Available characters: digits from 0 to 9; 11 digits + 1 check digit
- Valid example: 12345678901
- Possible check methods: USPS POSTNET, Standard
USPS POSTNET 12 (ZIP+4+2+cd)
Like USPS POSTNET 11, but the check digit can be specified (the 12th digit).
- Available characters: digits from 0 to 9; 11 digits + 1 check digit
- Valid example: 123456789012
- Possible check methods: None, USPS POSTNET, Standard
Italian Postal 2 of 5
The Italian Postal Code 2 of 5 is based on the Code 2 of 5 Interleaved, but is limited to twelve digits (11 usable digits + 1 modulo 10-check digit).
- Available characters: digits from 0 to 9
- Valid example: 123456789012
- Possible check methods: None, Mod10ltlPst25, Standard
Japanese Postal
This code is used by the Japanese postal system. It encodes seven digits, followed by block and street number information (alphanumeric in uppercase letters).
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special digits "-"
- Valid example: 1234567
- Possible check methods: None, Standard
KIX
This code is used by the Dutch postal system.
- Available characters: digits from 0 to 9; uppercase and lowercase letters A to Z
- Valid example: 2500GG30250
- Possible check methods: None, Standard
Korean Postal Authority
This code is used by the Korean postal system.
- Available characters: digits from 0 to 9; 6 digits + 1 check digit
- Valid example: 123456
- Possible check methods: Mod10Kor, Standard
Brazilian CEPNet
This is the code used by the Brazilian postal service.
- Available characters: digits from 0 to 9; 8 digits + 1 check digit
- Valid example: 123456784
- Possible check methods: None, USPS POSTNET, Standard
Swedish Postal Shipment Item ID
This code is based on Code 128 and is used on labels of the Swedish postal service. The code consists of:
- a 2-digit letter prefix
- an 8-digit serial number
- a 1-digit check digit
- the application identifier "SE"
The check digit is calculated using the Universal Postal Union´s weighted Modulo-11 method (for 8 digits).
- Available characters: 2 letters + 8 digits + 1 check digit digit + "SE"
- Valid example: EM100027995SE
- Possible check methods: None, Swedish Postal, Standard
PLANET 12 digit
This code was developed for the United States Postal Service (USPS). It is a 3-of-5 variant of the POSTNET barcode. It was fully replaced by the USPS Intelligent Mail Barcode (IMb) on January 28, 2013.
- Available characters: digits from 0 to 9; 11 digits + 1 check digit
- Valid example: 123456789014
- Possible check methods: None, Mod10Pla, Standard
PLANET 14 digit
This code was developed for the United States Postal Service (USPS). It is a 3-of-5 variant of the POSTNET barcode. It was fully replaced by the USPS Intelligent Mail Barcode (IMb) on January 28, 2013.
- Available characters: Digits from 0 to 9; 13 digits + 1 check digit;
- Valid example: 12345678901411
- Possible check methods: Provided by the user
Royal Mail Mailmark® 4-State Barcode
This is a height-modulated barcode with four different vertical bars. It is defined and used by Royal Mail for postal services. The following Mailmark 4-state variants are used:
- Variant C (22 digits, 66 modules), available for customers consolidating shipments
- Variant L (26 digits, 78 modules), available to all customers
Each field in a Mailmark 4-State has a fixed and defined length. The total length must be either 22 characters (for Variant C) or 26 characters (for Variant L). Missing or optional attributes must be filled with the SPACE digits.
- Available characters: digits from 0 to 9; Capital letters from A to Z; empty digits
- Valid example: 21B2254800659JW5O9QA6Y
- Possible check methods: None
Royal Mail 4-State (RM4SCC)
This is a height-modulated barcode with four different vertical bars. It is used in bulk mailings (Cleanmail, Mailsort) by Royal Mail in the United Kingdom as well as in Singapore (also known as SinPost barcode). It encodes postal codes.
- Available characters: digits from 0 to 9; Capital letters from A to Z
- Valid example: ABCDEF1234
- Possible check methods: None, Standard
UPU S10 - Generic Postal Code
This code is based on Code 128 and is used on postal labels in various countries. The code consists of:
- a 2-digit letter prefix
- an 8-digit serial number
- a 1-digit check digit (mod 11)
- a 2-digit country code
The check digit is calculated using the Universal Postal Unions weighted Modulo-11 method (for eight digits).
- Available characters: digits from 0 to 9; uppercase letters from A to Z; 2 letters + 8 digits + 1 check digit + 2 letters
- Valid example: EM100027995SE
- Possible check methods: None
2.3. GS1 DataBar
GS1 DataBar is a new global barcode standard released in 2010. GS1 DataBar is intended to be compatible with all point-of-sale (POS) systems, and POS (Point of Sale) scanners should be able to distinguish between different GS1 barcode symbologies. GS1 DataBar is used particularly in the healthcare sector for pharmaceutical as well as medical and surgical products, by GS1 member organizations and product manufacturers and industry associations.
GS1-128 (EAN /UCC-128)
GS1-128 is simply another name for the existing EAN /UCC-128 barcode. GS1 was established to globalize (and harmonize) different standards.
- Available characters: ASCII digits between position 0 and 128
- Valid example: 123456789
- Possible check methods: None, EAN-128, Mod10, Standard
GS1 DataBar (RSS-14)
GS1 DataBar is used to encode the GTIN (Global Trade Item Number) with the Application Identifier (AI) "01". The GTIN consists of a packaging indicator (0-9), followed by a 12-digit number (from the EAN-13 article numbering system), followed by a check digit. The check digit at the 14th position is calculated automatically if it is not included in the input data. The symbol height should be at least 33X to support omnidirectional scanning (X = module width). The VDP Editor automatically prepends AI "01" to the barcode data - so only the 12-digit number should be provided.
- Available characters: Digits from 0 to 9
- Valid example: 00614141999996
- Possible check methods: None, Standard
GS1 DataBar Expanded (RSS)
This is a variable-length code. It encodes up to 74 numeric or 41 alphanumeric characters. Data should be encoded using Application Identifiers (AIs). Omnidirectional scanning is supported.
- Available characters: all uppercase and lowercase letters from A(a) to Z(z); Digits from 0 to 9; + ISO 646
- Valid example: 0061414199999555554444333221
- Possible check methods: None, EAN-14, Mod10, Standard
GS1 DataBar Expanded Stacked (RSS)
This is the stacked version of GS1 DataBar Expanded. The number of data segments per row can vary between 4 and 22. The default number of data segments is 4.
- Available characters: all uppercase and lowercase letters from A(a) to Z(z); Digits from 0 to 9; + ISO 646
- Valid example: ABCabc1234
- Possible check methods: None, EAN-14, Mod10, Standard
GS1 DataBar Limited (RSS)
GS1 DataBar Limited is a fixed-length symbology that supports encoding Global Trade Item Numbers (GTINs) starting with "0" or "1". It is used in applications where space is extremely limited and omnidirectional scanning is not required. Due to its compact size, this symbology is primarily used in the healthcare sector.
- Available characters: digits from 0 to 9
- Valid example: 0012345678911
- Possible check methods: Standard
GS1 DataBar Stacked (RSS)
GS1 DataBar Stacked is a GS1 DataBar Omnidirectional symbol that has been reduced in height and split into two rows with a separator pattern between them. It is identical to GS1 DataBar Stacked Omnidirectional, except that the total height is reduced to only 13 modules. As a result, this symbology cannot be read fully omnidirectionally.
- Available characters: digits from 0 to 9
- Valid example: 0012345678911
- Possible check methods: Standard
GS1 DataBar Stacked Omnidir (RSS)
GS1 DataBar Stacked Omnidirectional is one of four DataBar symbols intended for use in retail point-of-sale applications. As the name suggests, GS1 DataBar Stacked Omnidirectional can be read omnidirectionally.
- Available characters: digits from 0 to 9
- Valid example: 0012345678911
- Possible check methods: Standard
GS1 DataBar Truncated (RSS)
GS1 DataBar Truncated is a GS1 DataBar Omnidirectional symbol that has been reduced to a height of only 13 modules. As a result, this symbology cannot be read fully omnidirectionally.
- Available characters: digits from 0 to 9
- Valid example: 0012345678911
- Possible check methods: Standard
2.4. Healthcare
In the healthcare sector, barcodes with higher density and extended check methods are required. The following barcode types are available for this area.
Code 32
The 9-digit Code-32 number is converted into a corresponding Code 39 barcode with six characters. An A is prefixed, which is not encoded.
- Available characters: digits from 0 to 9
- Valid example: 012345676
- Possible check methods: None, Mod10LuhnRev, Standard
HIBC LIC 128
When using HIBC LIC 128, HIBC primary and secondary data should be encoded in separate symbols, but may be concatenated if space permits. Code 128 is recommended over Code 39 due to its higher density and its ability to be decoded even in side-printed ("ladder" style).
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: +A99912345/$$52001510X3
- Possible check methods: None, Mod43, Standard
HIBC PAS 128
The HIBC PAS 128 is based on the Code 128 symbology. An additional Modulo-43 check digit is required.
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: +/EU9C83416F/Z34H159$
- Possible check methods: None, Mod43, Standard
HIBC LIC 39
When using HIBIC LIC 39, HIBC primary and secondary data should be encoded in separate symbols, but may be concatenated if space permits. The Code 39 Regular (non-Full ASCII) format should be used, and Full ASCII mode must be disabled in the barcode scanner. The ratio of wide to narrow should be 3:1, and the spacing between digits should correspond to the X-dimension.
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: +A99912345/$$52001510X3
- Possible check methods: None, Mod43, Standard
HIBC PAS 39
HIBC PAS 39 is based on the Code 39 symbology. The data format follows the HIBC PAS specification. An additional Modulo-43 check digit is required.
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: +/EU9C83416F/Z34H159$
- Possible check methods: None, Mod43, Standard
HIBC LIC Codablock-F
The HIBC LIC is used by labelers (manufacturers) of healthcare products for identification purposes. Labelers can encode so-called "primary data" and "secondary data." In short, the primary data identifies the labeler, product code, and unit of measure, while the secondary data is useful for distributors and suppliers and may be added at the labeler's discretion. Secondary data is optional and is used together with the primary data to encode quantity and/or expiration date and/or lot number.
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: +A99912345/$$52001510X3
- Possible check methods: None, Mod43, Standard
HIBC PAS Codablock-F
The HIBC PAS Codablock-F is based on the stacked Codablock-F symbology. The data format follows the HIBC PAS specification. An additional Modulo-43 check digit is required.
- Available characters: digits from 0 to 9; uppercase letters from A to Z; special characters like "-", ".", "space", "$", "*", "/", "+" and "%"
- Valid example: +/EU9C83416F/Z34H159$
- Possible check methods: Mod43
Pharmacode One-Track
This code is used in pharmaceutical applications. It supports colored bars. The bar and space data are encoded directly in the property:
- "0" is used for a narrow bar (the width of these bars is increased after a color change, according to the ratio 1C).
- "1" is used for a wide bar (the width of these bars is increased after a color change, corresponding to the ratio 2C)
- "b" is used for a narrow bar
- "c" is used for a wide bar
- Available characters: digits from 0 to 9; or binary
- Valid example: 123456
- Possible check methods: None, Standard
Pharmacode Two-Track
This pharmacode assigns numeric values to bars. It is used in the pharmaceutical sector for medicine packaging and small labels. Pharmacode is typically printed without human-readable text. The dimensions are:
- 2-track bar width: 1 mm
- space between bars: 1 mm
- bar height top/bottom: 4-6 mm
- height of the long bar: 8-12 mm
It offers high print tolerance and very fast readability (up to 200 measurements per second).
- Available characters: numeric digits from 0 to 9 (generic numeric input)
- Valid example: 123456
- Possible check methods: None, Standard
Article Update: $PRODUCT_NAME_WORKFLOW 2.0.0 – 04/2026





































































































