Logistics

GS1-128 barcode: SSCC, expiry date and batch

Shipping cartons and pallets carry more than an item number: batch, best-before date, quantity or the serial shipping container code (SSCC). GS1-128 packs all of this into one barcode – using “application identifiers” that give every value its meaning. Here is how it works and what retailers look for.

Enter application identifiers in brackets – the Barcode Generator checks GTIN check digits and formats and creates the GS1-128 at logistics size.

Create a GS1-128

The short version

  1. In the Barcode Generator, choose GS1-128.
  2. Enter each value with its application identifier in brackets: (01)04006381333931(17)271231(10)CH42.
  3. Fixed-length AIs (01, 15, 17 …) first, variable-length ones (10, 21 …) at the end.
  4. Module width from 0.495 mm, bar height from 32 mm for logistics labels.

The principle: application identifiers

Technically, GS1-128 is a Code 128 with a special start character (FNC1). The difference lies in the content: every value starts with an application identifier (AI) – a 2- to 4-digit number that says what follows. (17) means “expiry date”, (10) means “batch”.

The brackets are not encoded – they only appear in the human-readable text below the barcode so people can tell the parts apart. The scanner passes the values to the warehouse system separately, so it can assign batch and date automatically.

The most important AIs

AIMeaningFormat
(00)SSCC – serial shipping container code18 digits incl. check digit
(01)GTIN of the item or trade unit14 digits (EAN-13 with leading 0)
(02)GTIN of contained items (with (37))14 digits
(10)Batch / lotup to 20 characters
(11)Production dateYYMMDD
(15)Best before dateYYMMDD
(17)Expiration dateYYMMDD
(21)Serial numberup to 20 characters
(37)Count of contained unitsup to 8 digits
(3103)Net weight in kg, 3 decimals6 digits, e.g. 012500 = 12.500 kg
(400)Customer’s purchase order numberup to 30 characters

GS1 maintains the complete list of more than 500 AIs. The generator knows all of them and reports wrong lengths, invalid dates or a wrong GTIN check digit.

Take an example, fill in your values and print the result right away on 99 × 57 mm labels.

Examples

Carton with item, expiry date and batch:

(01)04006381333931(17)271231(10)CH42

Pallet with SSCC (often its own barcode):

(00)340123450000000017

Mixed pallet with contents and count:

(02)04006381333931(37)48(15)271231

Why order matters: the scanner recognizes fixed-length fields by their length. After a variable-length field such as the batch, a separator is needed, which takes extra space. At the end it can be omitted – the code gets shorter. A GS1-128 may contain at most 48 data characters; if everything doesn’t fit, split the data over two barcodes stacked on top of each other.

SSCC: the serial shipping container code

The SSCC (in German “NVE”) identifies a single logistics unit – a pallet or parcel – uniquely worldwide. It has 18 digits:

Like a GTIN, an SSCC requires a GS1 company prefix. Large retailers require it on every pallet, usually together with an advance shipping notice, so goods-in can match the pallet with a single scan.

Size and label

Create your GS1-128 barcode

Application identifiers in brackets, automatic validation, logistics size preset, export as PDF, SVG or label sheet – free and with no upload.

Frequently asked questions

What is the difference between Code 128 and GS1-128?

GS1-128 is a Code 128 with the special character FNC1 at the start and content following GS1 rules (application identifiers). A plain Code 128 holds any text without defined meaning.

What do the numbers in brackets mean?

They are application identifiers. They say what the following value is, e.g. (01) GTIN, (10) batch, (17) expiry date. The brackets themselves are not encoded.

How do I write a date in GS1-128?

Always as six digits YYMMDD, e.g. 271231 for 31 December 2027. If only month and year are known, the day is written as 00.

What is an SSCC?

The serial shipping container code – an 18-digit, globally unique number for a pallet or parcel, encoded with application identifier (00).

Do I need a GS1 membership for GS1-128?

For GTINs and SSCCs yes, since both are based on a GS1 company prefix. The barcode itself can be created with any generator.

How large must a GS1-128 be on a logistics label?

Module width 0.495 to 1.016 mm and bar height at least 32 mm; the total width must not exceed 165 mm.

Sources

  1. GS1 Application Identifiers, GS1 – the complete list.
  2. GS1 General Specifications, GS1 – rules for symbol sizes, quiet zones and application identifiers.
  3. Get barcodes, GS1 – how companies obtain GTINs from their local GS1 organization.

GS1-128 with SSCC, expiry date and batch – free, no upload.

Open the tool