PDF417 is a stacked linear barcode symbol format used in a variety of applications; primarily transport, identification cards, and inventory management. PDF stands for Portable Data File. The 417 signifies that each pattern in the code consists of bars and spaces, and that each pattern is 17 units long. The PDF417 symbology was invented by Dr. Ynjiun P. Wang at Symbol Technologies in 1991. (Wang 1993) It is ISO standard 15438.

Sample of a PDF417 symbol


PDF417 is used in many applications by both commercial and government organizations. PDF417 is one of the formats (along with Data Matrix) that can be used to print postage accepted by the United States Postal Service. PDF417 is also used by the airline industry's Bar Coded Boarding Pass (BCBP) standard as the 2D bar code symbolism for paper boarding passes. PDF417 is the standard selected by the Department of Homeland Security as the machine readable zone technology for RealID compliant driver licenses and state issued identification cards. PDF417 barcodes are also included on visas and border crossing cards issued by the State of Israel (example).


In addition to features typical of two dimensional bar codes, PDF417's capabilities include:

  • Linking. PDF417 symbols can link to other symbols which are scanned in sequence allowing even more data to be stored.
  • User-specified dimensions. The user can decide how wide the narrowest vertical bar (X dimension) is, and how tall the rows are (Y dimension).
  • Public domain format. Anyone can implement systems using this format without any license.[1]

The introduction of the ISO/IEC document states:[1]

Manufacturers of bar code equipment and users of bar code technology require publicly available standard symbology specifications to which they can refer when developing equipment and application standards. It is the intent and understanding of ISO/IEC that the symbology presented in this International Standard is entirely in the public domain and free of all user restrictions, licences and fees.


PDF417 Example

The PDF417 bar code (also called a symbol) consists of 3 to 90 rows, each of which is like a small linear bar code. Each row has:

  • a quiet zone. This is a mandated minimum amount of white space before the bar code begins.
  • a start pattern which identifies the format as PDF417.
  • a "row left" codeword containing information about the row (such as the row number and error correction level)
  • 1-30 data codewords: Codewords are a group of bars and spaces representing one or more numbers, letters, or other symbols.
  • a "row right" codeword with more information about the row.
  • a stop pattern.
  • another quiet zone.

All rows are the same width; each row has the same number of codewords.


PDF417 uses a base 929 encoding. Each codeword represents a number from 0 to 928.

The codewords are represented by patterns of dark (bar) and light (space) regions. Each of these patterns contains four bars and four spaces (where the 4 in the name comes from). The total width is 17 times the width of the narrowest allowed vertical bar (the X dimension); this is where the 17 in the name comes from. Each pattern starts with a bar and ends with a space.

The row height must be at least 3 times the minimum width: Y ≥ 3 X.[2]

There are three distinct bar–space patterns used to represent each codeword. These patterns are organized into three groups known as clusters. The clusters are labeled 0, 3, and 6. No bar–space pattern is used in more than one cluster. The rows of the symbol cycle through the three clusters, so row 1 uses patterns from cluster 0, row 2 uses cluster 3, row 3 uses cluster 6, and row 4 again uses cluster 0.

Which cluster can be determined by an equation:[3]

Where K is the cluster number and the bi refer to the width of the i-th black bar in the symbol character (in X units).


Where Ei is the i-th edge-to-next-same-edge distance. Odd indices are the leading edge of a bar to the leading edge of the next bar; even indices are for the trailing edges.

One purpose of the three clusters is to determine which row (mod 3) the codeword is in. The clusters allow portions of the symbol to be read using a single scan line that may be skewed from the horizontal.[5] For instance, the scan might start on row 6 at the start of the row but end on row 10. At the beginning of the scan, the scanner sees the constant start pattern, and then it sees symbols in cluster 6. When the skewed scan straddles rows 6 and 7, then the scanner sees noise. When the scan is on row 7, the scanner sees symbols in cluster 0. Consequently, the scanner knows the direction of the skew. By the time the scanner reaches the right, it is on row 10, so it sees cluster 0 patterns. The scanner will also see a constant stop pattern.


Of the 929 available code words, 900 are used for data, and 29 for special functions, such as shifting between major modes. The three major modes encode different types of data in different ways, and can be mixed as necessary within a single bar code:

  • Byte: each group of 5 code words represents 6 bytes. (Because 9005 > 2566.) Additional bytes are encoded one per code word.
  • Numeric: n digits are encoded in ⌊n/3⌋+1 code words, up to a maximum of 44 digits in 15 code words.
  • Text: Each code word represents two base-30 digits, which are used by a system of four submodes to represent the printable ASCII characters (plus CR, LF and HT):
    • Uppercase: A–Z, SP, Change to lowercase, Change to mixed, Interpret next digit as punctuation
    • Lowercase: a–z, SP, Interpret next digit as uppercase, Change to mixed, Interpret next digit as punctuation
    • Mixed: 0–9, &, CR, HT, comma, :, #, -, period, $, /, +, %, *, =, ^, Change to punctuation, SP, Change to lowercase, Change to uppercase, Interpret next digit as punctuation
    • Punctuation: ;, <, >, @, [, \, ], _, `, ~, !, CR, HT, comma, :, LF, -, period, $, /, ", |, *, (, ), ?, {, }, ', Change to uppercase

Error correction

When the PDF417 symbol is created, from 2 to 512 error detection and correction codewords are added. PDF417 uses Reed–Solomon error correction. When the symbol is scanned, the maximum number of corrections that can be made is equal to the number of codewords added, but the standard recommends that two codewords be held back to ensure reliability of the corrected information.

Comparison with other symbologies

PDF417 is a stacked barcode that can be read with a simple linear scan being swept over the symbol.[6] Those linear scans need the left and right columns with the start and stop code words. Additionally, the scan needs to know what row it is scanning, so each row of the symbol must also encode its row number. Furthermore, the reader's line scan won't scan just a row; it will typically start scanning one row, but then cross over to a neighbor and possibly continuing on to cross successive rows. In order to minimize the effect of these crossings, the PDF417 modules are tall and narrow — the height is typically three times the width. Also, each code word must indicate which row it belongs to so crossovers, when they occur, can be detected. The code words are also designed to be delta-decodable, so some code words are redundant. Each PDF data code word represents about 10 bits of information (log2(900) ≈ 9.8), but the printed code word (character) is 17 modules wide. Including a height of 3 modules, a PDF417 code word takes 51 square modules to represent 10 bits. That area does not count other overhead such as the start, stop, row, format, and ECC information.

Other 2D codes, such as DataMatrix and QR, are decoded with image sensors instead of uncoordinated linear scans. Those codes still need recognition and alignment patterns, but they do not need to be as prominent. An 8 bit code word will take 8 square modules (ignoring recognition, alignment, format, and ECC information).

In practice, a PDF417 symbol takes about four times the area of a DataMatrix or QR Code.[7]


  1. ^ a b http://www.iso.org/iso/fr/home/store/catalogue_tc/catalogue_detail.htm?csnumber=43816
  2. ^ ISO/IEC 2006, p. 28, 5.8.2.
  3. ^ ISO/IEC 2006, p. 9, 5.3.1.
  4. ^ ISO/IEC 2006, pp. 76–78
  5. ^ ISO/IEC 2006, 5.11.1.
  6. ^ For example, the Symbol Technologies LS-4000 series.
  7. ^ Using Barcodes in Documents – Best Practices (PDF), Tampa, FL: Accusoft, 2007, archived from the original (PDF) on May 24, 2012, retrieved May 9, 2012

External links

Apple Wallet

Apple Wallet (Wallet for short, formerly Apple Passbook) is a mobile app included with the iOS operating system that allows users to store Wallet-passes, meaning coupons, boarding passes, student ID cards, event tickets, movie tickets, public transportation tickets, store cards, (and starting with iOS 8.1) credit cards, debit cards, prepaid cards, and loyalty cards via Apple Pay. It was designed by Apple Inc. and was presented at the 2012 Apple Worldwide Developers Conference (WWDC) on June 11, 2012. The app first appeared on iOS 6 on September 19, 2012.

Barcode printer

A barcode printer is a computer peripheral for printing barcode labels or tags that can be attached to, or printed directly on, physical objects. Barcode printers are commonly used to label cartons before shipment, or to label retail items with UPCs or EANs.The most common barcode printers employ one of two different printing technologies. Direct thermal printers use a printhead to generate heat that causes a chemical reaction in specially designed paper that turns the paper black. Thermal transfer printers also use heat, but instead of reacting the paper, the heat melts a waxy or resin substance on a ribbon that runs over the label or tag material. The heat transfers ink from the ribbon to the paper. Direct thermal printers are generally less expensive, but they produce labels that can become illegible if exposed to heat, direct sunlight, or chemical vapors.

Barcode printers are designed for different markets. Industrial barcode printers are used in large warehouses and manufacturing facilities. They have large paper capacities, operate faster and have a longer service life. For retail and office environments, desktop barcode printers are most common.


A bokode is a type of data tag which holds much more information than a barcode over the same area. They were developed by a team led by Ramesh Raskar at the MIT Media Lab. The bokode pattern is a tiled series of Data Matrix codes. The name is a portmanteau of the words bokeh—a photographic term—and barcode. Rewritable bokodes are called bocodes. They are circular with a diameter of 3 millimetres (0.12 in). A bokode consists of an LED covered with a photomask and a lens. They are readable from different angles and from 4 metres (13 ft) away by any standard digital camera. Powered bokodes are relatively expensive because of the LED and the power it requires. However, prototypes have been developed which function passively with reflected light like a typical barcode.Bokodes convey a privacy advantage compared to radio-frequency identification (RFID) tags: bokodes can be covered up with anything opaque, whereas RFID tags must be masked by material opaque to radio frequencies, such as the sleeve provided by the New York State Department of Motor Vehicles when issuing their enhanced state IDs.

Code 11

Code 11 is a barcode symbology developed by Intermec in 1977. It is used primarily in telecommunications. The symbol can encode any length string consisting of the digits 0–9 and the dash character (-). A twelfth code represents the start/stop character, commonly printed as "*". One or two modulo-11 check digit(s) can be included.

It is a discrete, binary symbology where each digit consists of three bars and two spaces; a single narrow space separates consecutive symbols. The width of a digit is not fixed; three digits (0, 9 and -) have one wide element, while the others have two wide elements.

The valid codes have one wide bar, and may have one additional wide element (bar or space).

The decode table has 15 entries because the symbols with two wide bars (1, 4 and 5) are listed twice.

Assuming narrow elements are one unit wide and wide elements are two units, the average digit is 7.8 units. This is better than codes with a larger repertoire like Codabar (10 units) or Code 39 (11 units), but not quite as good as interleaved 2 of 5 (7 units). The non-binary symbology Code 128 uses 5.5 units per digit (11 units per digit pair).

Documento Nacional de Identidad (Argentina)

Documento Nacional de Identidad or DNI (which means National Identity Document) is the main identity document for Argentine citizens, as well as temporary or permanent resident aliens. It is issued at a person's birth, and must be updated at 8 and 14 years of age, and thereafter every 15 years in one format: a card (DNI tarjeta); it's valid if identification is required, and is required for voting. They are produced at a special plant by the Argentine national registry of people (ReNaPer).

The front side of the card states, in both English and Spanish, the name, sex, nationality, specimen issue, date of birth, date of issue, date of expiry, and transaction number along with the DNI number and portrait and signature of the card's bearer. The back side of the card shows the address of the card's bearer along with their right thumb fingerprint. The front side of the DNI also shows a PDF417 barcode while the back shows machine-readable information. The unique DNI number is semi-perforated through the front-right side of the card.

The DNI is a valid travel document to enter the member countries of Mercosur (Brazil, Paraguay, Uruguay and Venezuela) and countries associated to the bloc (Bolivia, Chile, Colombia, Ecuador and Peru).Before the introduction of the DNI in 1968, women had a Libreta cívica ("civic booklet"); men a Libreta de enrolamiento ("(military) enrollment booklet"). For many years, the DNI was issued as a small green booklet (called libreta). In 2009, the DNI was revamped and digitalized; and booklets (now blue) were issued along with an identity card simultaneously. Since 2012, DNIs are issued only in card format. The new DNI card is required to obtain the new biometric Argentine Passport.

Egyptian passport

Egyptian passports (Arabic: جواز السفر المصري‎) are issued to nationals of Egypt for the purpose of international travel. Besides serving as a proof of Egyptian citizenship, they facilitate the process of securing assistance from Egyptian consular officials abroad if needed.

Egyptian passports are valid for seven years for adults, and is issued for lesser periods for school or college students, or those who have not finalized their status of the military conscription. The Egyptian Passport is not renewable; one must apply for a new passport after their original has expired. Starting in 2008, The Egyptian government introduced newer machine-readable passport (MRP), in order to comply with international passport standards and requirements with 96.7% conformance to ICAO Document 9303. The newer passports offer better security and state-of-the-art anti forging parameters and have a soft cover.

Extended Channel Interpretation

Extended Channel Interpretation (ECI) is an embedded piece of information in a bar code symbol that tells the bar code reader details about the used references for encoding the data in the symbol. The bar code reader uses this information to automatically select the matching options to decode the symbol accordingly.

ECI is a symbology-independent extension of the Global Label Identifier (GLI) system in the PDF417 barcode. It allows usually unsupported national character sets such as Arabic, Greek, or Japanese to be used in barcode symbols. In theory, a barcode symbol could use several character sets by embedding several ECI codes.

As the ECI information is not intended to be part of the bar code "data," it should be transparent when the symbol is scanned. When encoding a symbol, ECI is a switch, or tick-box, to be checked, followed by a symbology-dependent ECI selection. The ECI information will be encoded in a symbology-specific codeword that the decoder will recognize and interpret accordingly.

In Basic Channel Mode, the ECI control information is not transmitted from the reader to the host system. In Extended Channel Mode, both the ECI control information and the data are transmitted to the host system.

Guatemalan passport

Guatemalan Passports are issued to Guatemalan citizens to travel outside Guatemala. As of 1 January 2017, Guatemalan citizens had visa-free or visa on arrival access to 119 countries and territories, ranking the Guatemalan passport 40th in terms of travel freedom (tied with Dominica passport) according to the Henley visa restrictions index.


ITF-14 is the GS1 implementation of an Interleaved 2 of 5 (ITF) bar code to encode a Global Trade Item Number. ITF-14 symbols are generally used on packaging levels of a product, such as a case box of 24 cans of soup. The ITF-14 will always encode 14 digits.

The GS1 GEPIR tool can be used to find out the company identification for a given GTIN-14 that is encoded in an ITF-14 Symbol.

The thick black border around the symbol is called the Bearer Bar. The purpose of a Bearer Bar is to equalise the pressure exerted by the printing plate over the entire surface of the symbol, and to enhance reading reliability by helping to reduce the probability of misreads

or short scans that may occur when the scanner is held to a bar code at too large an angle. Such instances of skewed scanning cause the scanning beam to enter or exit the bar code symbol through the Bearer Bar at its top or bottom edge, forcing the scanner to detect an invalid scan since Bearer Bars are much wider than a legitimate black bar.

Information-Based Indicia

Information-Based Indicia (IBI) refers to a secure postage evidencing standard used by the United States Postal Service (USPS) to indicate electronic postage payment.Information-Based Indicia is a 2-dimensional PDF417 or data matrix barcode combined with human-readable information. The barcode data contains such information as amount of postage, origin zip code, destination, mail class, weight, confirmation/tracking numbers, and a cryptographic signature. The human-readable information shows at a minimum the information required by the USPS Domestic Mail Manual (DMM).


MIL-STD-129 standard is used for maintaining uniformity while marking military equipment and supplies that are transported through ships. This standard has been approved to be used by the United States Department of Defense and all other government agencies. Items must be marked for easy identification before they are transported. The marking helps the military personnel to fill the necessary requisition, when a particular stock goes short of the balance level.


MaxiCode is a public domain, machine-readable symbol system originally created and used by United Parcel Service. Suitable for tracking and managing the shipment of packages, it resembles a barcode, but uses dots arranged in a hexagonal grid instead of bars. MaxiCode has been standardised under ISO/IEC 16023.A MaxiCode symbol (internally called "Bird's Eye", "Target", "dense code", or "UPS code") appears as a 1 inch square, with a bullseye in the middle, surrounded by a pattern of hexagonal dots. It can store about 93 characters of information, and up to 8 MaxiCode symbols can be chained together to convey more data. The centered symmetrical bullseye is useful in automatic symbol location regardless of orientation, and it allows MaxiCode symbols to be scanned even on a package traveling rapidly.

MaxiCode symbology was released by UPS in 1992.

Patch Code

Patch Code is a barcode developed by Kodak for use in automated scanning.


Pharmacode, also known as Pharmaceutical Binary Code, is a barcode standard, used in the pharmaceutical industry as a packing control system. It is designed to be readable despite printing errors. It can be printed in multiple colors as a check to ensure that the remainder of the packaging (which the pharmaceutical company must print to protect itself from legal liability) is correctly printed.

For best practice (better security), the code should always contain at least three bars and should always be a combination of both thick and thin bars, (all thick bars or all thin bars do not represent a secure code).

Postal Alpha Numeric Encoding Technique

The Postal Alpha Numeric Encoding Technique (PLANET) barcode was used by the United States Postal Service to identify and track pieces of mail during delivery - the Post Office's "CONFIRM" services. It was fully superseded by Intelligent Mail Barcode by January 28, 2013.

A PLANET barcode appears either 12 or 14 digits long.

The barcode:

identifies mailpiece class and shape

identifies the Confirm Subscriber ID

includes up to 6 digits of additional information that the Confirm subscriber chose, such as a mailing number, mailing campaign ID or customer ID

ends with a check digitLike POSTNET, PLANET encodes the data in half- and full-height bars. Also like POSTNET, PLANET always starts and ends with a full bar (often called a guard rail), and each individual digit is represented by a set of five bars using a two-out-of-five code. However, in POSTNET, the two bars are full bars; in PLANET, the two-of-five are the short bars. As with POSTNET, the check digit is calculated by summing the other characters and calculating the single digit which, when added to the sum, makes the total divisible by 10.


A SPARQCode is a matrix code (or two-dimensional bar code) encoding standard that is based on the physical QR Code definition created by Japanese corporation Denso-Wave.


Semacode is a software company based in Waterloo, Ontario, Canada. It is also this company's trade name for their machine-readable ISO/IEC 16022 Data Matrix barcodes, which are used to encode Internet URLs.

Semacodes are primarily aimed at being used with cellular phones which have built-in cameras, to quickly capture a Web site address for use in the phone's web browser. Semacodes are in fact DataMatrix encoded URLs.

The Semacode website states that Semacode tags are an "open system" and that tag creation is "completely unrestricted," with the SDK software tools being free of charge for non-commercial use.Potential uses for Semacode tags are still being explored, and will complement development of the concept of using mobile phones as devices for information gathering and exchange. Suggestions from the Semacode.org website included:

placing Semacode tags on posters, such as those for concerts and public performances. Those interested could use their mobile phone to take a photo of the tag, which could link them directly to the web page where they could order tickets.

using Semacode tags and mobile phones to enable multilingual museum exhibits - a tag photographed at the exhibition entrance could set a language cookie in the phone's web browser, and subsequent Semacode tags displayed at each exhibit could then link the phone's browser directly to a web page about the item, displayed in the user's language of choice.

placing Semacode tags on name tags given to conference attendees. These tags could provide the corporate web address of each attendee's company, or their biography and contact details.


ShotCode is a circular barcode created by High Energy Magic of Cambridge University. It uses a dartboard-like circle, with a bullseye in the centre and datacircles surrounding it. The technology reads databits from these datacircles by measuring the angle and distance from the bullseye for each.

ShotCodes are designed to be read with a regular camera (including those found on mobile phones and webcams) without the need to purchase other specialised hardware. ShotCodes differ from matrix barcodes in that they do not store regular data - rather, they store a look up number consisting of 40 bits of data. This needs to link to a server that holds information regarding a mapped URL which the reading device can connect to in order to download said data.

Linear barcodes
Post office barcodes
2D barcodes (stacked)
2D barcodes (matrix)
Polar coordinate barcodes
Technological issues
Other data tags
Related topics
ISO standards by standard number

This page is based on a Wikipedia article written by authors (here).
Text is available under the CC BY-SA 3.0 license; additional terms may apply.
Images, videos and audio are available under their respective licenses.