Skip to content
DockLabel

GS1-128 application identifiers for logistics labels

A reference for the application identifiers (AIs) that turn up on pallet and carton labels: what each one means, the format of its data, and whether it needs an FNC1 separator after it in a GS1-128 barcode.

The table

These are the 12 AIs this site's library validates. The table is generated from the library itself, and the library is tested against the GS1 Application Identifiers reference, so what you read here is what the tools enforce. GS1 defines several hundred AIs in total. For any that are not here, use the GS1 reference.

AIData titleMeaningFormatCheck digitFNC1 after it
(00)SSCCSerial Shipping Container Code (SSCC)N2+N18YesNo
(01)GTINGlobal Trade Item Number (GTIN)N2+N14YesNo
(02)CONTENTGlobal Trade Item Number (GTIN) of contained trade itemsN2+N14YesNo
(10)BATCH/LOTBatch or lot numberN2+X..20NoYes, unless it is last
(11)PROD DATEProduction date (YYMMDD)N2+N6NoNo
(15)BEST BEFORE or BEST BYBest before date (YYMMDD)N2+N6NoNo
(17)USE BY or EXPIRYExpiration date (YYMMDD)N2+N6NoNo
(37)COUNTCount of trade items or trade item pieces contained in a logistic unitN2+N..8NoYes, unless it is last
(400)ORDER NUMBERCustomers purchase order numberN3+X..30NoYes, unless it is last
(410)SHIP TO LOCShip to / Deliver to Global Location Number (GLN)N3+N13YesNo
(420)SHIP TO POSTShip to / Deliver to postal code within a single postal authorityN3+X..20NoYes, unless it is last
(421)SHIP TO POSTShip to / Deliver to postal code with ISO country codeN3+N3+X..9NoYes, unless it is last

Reading the format column

  • N means digits only. X means any character from the GS1 AI encodable character set 82: letters, digits and ! " % & ' ( ) * + , - . / : ; < = > ? _. There is no space in the set.
  • A plain number is an exact length: N18 is exactly 18 digits. Two dots mean "up to": X..20 is 1 to 20 characters.
  • The first part is the AI itself: N2+N18 is a two-digit AI followed by 18 digits, 20 characters in all.
  • Dates are YYMMDD. The GS1 reference allows day 00 when only the month is known.

Which AIs need an FNC1 after them

The last column is the one to get right, because a scanner cannot tell where a value ends without it. The rule is in sections 7.8.3 to 7.8.6 of the GS1 General Specifications: an element string needs a separator after it unless it is the last one in the barcode, or its AI begins with one of the two-digit pairs in table 7-6. Those pairs are the complete list of predefined lengths, and GS1 states the table will remain unchanged:

AI starts with00010203041112131415161718192031323334353641
Total length2016161618888888888410101010101016

The total length counts the AI and its data together. Anything not in that list is treated as variable length even if its data field is a fixed size. That is why (410), which starts with 41, needs no separator, while (400), (420) and (421) all do.

A worked example

Section 1.4.2 of the General Specifications uses a GTIN, a batch number and a date. Built with this site's library:

Printed under the bars(01)09521234500001(10)ABC123(11)250504
Encoded in the barcode010952123450000110ABC123<FNC1>11250504

The GTIN (01) has a predefined length, so the batch number follows it directly. The batch number (10) does not, so an FNC1 marks where it ends. The date is last, so nothing follows it. The parentheses are printed for people and are not in the barcode.

AIs that go together, and AIs that cannot

The GS1 reference also records pairing rules. For the AIs above:

  • (01) It cannot be used with (02) or (03) or (255) or (37).
  • (02) must be accompanied by (00) and (37). It cannot be used with (01) or (03).
  • (10) must be accompanied by (01), or (02), or (03), or (8006), or (8026).
  • (11) must be accompanied by (01), or (02), or (8006), or (8026).
  • (15) must be accompanied by (01), or (02), or (8006), or (8026).
  • (17) must be accompanied by (01), or (02), or (255), or (8006), or (8026).
  • (37) must be accompanied by (00) and (02), or (00) and (8026).
  • (420) It cannot be used with (421).
  • (421) It cannot be used with (4307).

The companion AI does not have to be in the same barcode. On a logistic label it is common to have the SSCC in one barcode and the content data in another, which GS1 notes in section 7.8.6.3.

For how these fit into the symbol, see GS1-128 label. For the label that carries (00), see SSCC label. For the ZPL, see the annotated ZPL example.

Make this label now: fill in the shipment, preview it, and copy or download the ZPL.

Open the label generator

Sources