GS1-128
GS1-128 is an application standard of the GS1 implementation using the Code 128 barcode specification. The former correct name was UCC/EAN-128. Other no longer used names have included UCC-128 and EAN-128. The GS1-128 standard was introduced in 1989 and uses a series of Application Identifiers to include additional data such as best before dates, batch numbers, quantities, weights and many other attributes needed by the user.
Overview
The GS1-128 standard is an application standard within the Code 128 barcode. It identifies data with Application Identifiers. Without spaces below, a simple SSCC barcode would look something like this:00 12345678 0000000001
In the example above, is the single character Function Code 1, which specifies that a Code 128 barcode is a GS1-128 code. 00 is the serial shipping container code AI that designates the following data as a serial shipping container code. 12345678 is the company number. 0000000001 is the container number.
It is possible to encode several pieces of data in one barcode. For example, a product serial number, production date, and expiration date together would look something like this:
21 12345 11 090101 17 100101
An additional FNC1 is required before the production date, because the preceding product serial number is variable length. This is not required before the expiration date, because the production date is fixed length. Reordering the components to place a variable-length field last produces a more compact form:
11 090101 17 100101 21 12345
Mapping to EPC">Electronic Product Code">EPC codes
As EPC and EAN respectively UCC as code systems are not congruent, GS1-128 gets mapped to EPC-GTIN with a reference list including both codes per type of product. However, there is no mapping for the serial number with EPC-SGTIN.Full list of Application Identifiers
This list is from 2003 and therefore out of date and possibly incorrect. Also this is copyrighted by GS1 – for the up to date list please see the link below for the GS1 General Specifications Because code 128 is more efficient at coding pairs of digits, preference is given to even lengths in numeric fields.All dates are formatted as YYMMDD.
y in the AI gives a number of decimal places in the following value. The represented value is the following integer divided by 10y. For example, a net weight of 22.7 kg could be coded as 3101 000227, 3102 002270, 3103 022700, or 3104 227000.
Code | Description | data length |
00 | Serial Shipping Container Code | 18 |
01 | Global Trade Item Number | 14 |
02 | GTIN of Contained Trade Items | 14 |
10 | Batch/Lot Number | variable, up to 20 |
11 | Production Date | 6 |
12 | Due Date | 6 |
13 | Packaging Date | 6 |
15 | Best Before Date | 6 |
17 | Expiration Date | 6 |
20 | Product Variant | 2 |
21 | Serial Number | variable, up to 20 |
22 | Secondary Data Fields | variable, up to 29 |
23n | Lot number n | variable, up to 19 |
240 | Additional Product Identification | variable, up to 30 |
241 | Customer Part Number | variable, up to 30 |
242 | Made-to-Order Variation Number | variable, up to 6 |
243 | Packaging component number | variable, up to 20 |
250 | Secondary Serial Number | variable, up to 30 |
251 | Reference to Source Entity | variable, up to 30 |
253 | Global Document Type Identifier | variable, 13–17 |
254 | GLN Extension Component | variable, up to 20 |
255 | Global Coupon Number | variable, 13–25 |
30 | Count of items | variable, up to 8 |
310y | Product Net Weight in kg | 6 |
311y | Product Length/1st Dimension, in meters | 6 |
312y | Product Width/Diameter/2nd Dimension, in meters | 6 |
313y | Product Depth/Thickness/Height/3rd Dimension, in meters | 6 |
314y | Product Area, in square meters | 6 |
315y | Product Net Volume, in liters | 6 |
316y | Product Net Volume, in cubic meters | 6 |
320y | Product Net Weight, in pounds | 6 |
321y | Product Length/1st Dimension, in inches | 6 |
322y | Product Length/1st Dimension, in feet | 6 |
323y | Product Length/1st Dimension, in yards | 6 |
324y | Product Width/Diameter/2nd Dimension, in inches | 6 |
325y | Product Width/Diameter/2nd Dimension, in feet | 6 |
326y | Product Width/Diameter/2nd Dimension, in yards | 6 |
327y | Product Depth/Thickness/Height/3rd Dimension, in inches | 6 |
328y | Product Depth/Thickness/Height/3rd Dimension, in feet | 6 |
329y | Product Depth/Thickness/3rd Dimension, in yards | 6 |
330y | Container Gross Weight | 6 |
331y | Container Length/1st Dimension | 6 |
332y | Container Width/Diameter/2nd Dimension | 6 |
333y | Container Depth/Thickness/3rd Dimension | 6 |
334y | Container Area | 6 |
335y | Container Gross Volume | 6 |
336y | Container Gross Volume | 6 |
340y | Container Gross Weight | 6 |
341y | Container Length/1st Dimension, in inches | 6 |
342y | Container Length/1st Dimension, in feet | 6 |
343y | Container Length/1st Dimension in, in yards | 6 |
344y | Container Width/Diameter/2nd Dimension, in inches | 6 |
345y | Container Width/Diameter/2nd Dimension, in feet | 6 |
346y | Container Width/Diameter/2nd Dimension, in yards | 6 |
347y | Container Depth/Thickness/Height/3rd Dimension, in inches | 6 |
348y | Container Depth/Thickness/Height/3rd Dimension, in feet | 6 |
349y | Container Depth/Thickness/Height/3rd Dimension, in yards | 6 |
350y | Product Area | 6 |
351y | Product Area | 6 |
352y | Product Area | 6 |
353y | Container Area | 6 |
354y | Container Area | 6 |
355y | Container Area | 6 |
356y | Net Weight | 6 |
357y | Net Weight/Volume | 6 |
360y | Product Volume | 6 |
361y | Product Volume | 6 |
362y | Container Gross Volume | 6 |
363y | Container Gross Volume | 6 |
364y | Product Volume | 6 |
365y | Product Volume | 6 |
366y | Product Volume | 6 |
367y | Container Gross Volume | 6 |
368y | Container Gross Volume | 6 |
369y | Container Gross Volume | 6 |
37 | Number of Units Contained | variable, up to 8 |
390y | Amount payable | variable, up to 15 |
391y | Amount payable | variable, 3–18 |
392y | Amount payable per single item | variable, up to 15 |
393y | Amount payable per single item | variable, 3–18 |
400 | Customer Purchase Order Number | variable, up to 30 |
401 | Consignment Number | variable, up to 30 |
402 | Bill of Lading number | 17 |
403 | Routing code | variable, up to 30 |
410 | Ship To/Deliver To Location Code | 13 |
411 | Bill To/Invoice Location Code | 13 |
412 | Purchase From Location Code | 13 |
413 | Ship for, Deliver for, or Forward to Location Code | 13 |
414 | Identification of a physical location | 13 |
420 | Ship To/Deliver To Postal Code | variable, up to 20 |
421 | Ship To/Deliver To Postal Code | variable, 3–15 |
422 | Country of Origin | 3 |
423 | Country or countries of initial processing | variable, 3–15 |
424 | Country of processing | 3 |
425 | Country of disassembly | 3 |
426 | Country of full process chain | 3 |
7001 | NATO Stock Number | 13 |
7002 | UN/ECE Meat Carcasses and cuts classification | variable, up to 30 |
7003 | expiration date and time | 10 |
7004 | Active Potency | variable, up to 4 |
703n | Processor approval ; n indicates sequence number of several processors | variable, 3–30 |
8001 | Roll Products: Width/Length/Core Diameter/Direction/Splices | 14 |
8002 | Mobile phone identifier | variable, up to 20 |
8003 | Global Returnable Asset Identifier | variable, 14–30 |
8004 | Global Individual Asset Identifier | variable, up to 30 |
8005 | Price per Unit of Measure | 6 |
8006 | identification of the components of an item | 18 |
8007 | International Bank Account Number | variable, up to 30 |
8008 | Date/time of production | variable, 8–12 |
8018 | Global Service Relationship Number | 18 |
8020 | Payment slip reference number | variable, up to 25 |
8100 | Coupon Extended Code: Number System and Offer | 6 |
8101 | Coupon Extended Code: Number System, Offer, End of Offer | 10 |
8102 | Coupon Extended Code: Number System preceded by 0 | 2 |
8110 | Coupon code ID | variable, up to 30 |
8200 | Extended Packaging URL | variable, up to 70 |
90 | Mutually Agreed Between Trading Partners | variable, up to 30 |
91–99 | Internal Company Codes | variable, up to 90 |