GS1 Digital Link explained
A GS1 Digital Link URI is a web address that carries GS1 identifiers. The same QR Code can then open a web page on a phone and give a GS1-aware scanner the GTIN, batch or expiry date it needs.
Structure
https://id.gs1.org/01/09521234543213/10/ABC123?17=251231
└──── domain ────┘└─ primary key ──┘└ qualifier ┘└ attributes ┘
- Domain: any domain you control, for example your brand’s site.
id.gs1.orgis GS1’s own resolver. The domain does not change the meaning of the GS1 data. - Primary key in the path: the identifier, written as AI and value, e.g.
/01/09521234543213for a GTIN. Other primary keys exist, for example00(SSCC) or414(GLN). - Key qualifiers in the path, after the primary key and in a fixed order. For a GTIN these are
22(consumer product variant),10(batch/lot) and21(serial number). - Data attributes in the query string, e.g.
?17=251231for the expiry date or?3103=000500for a net weight.
The example above carries the same data as the element string (01)09521234543213(10)ABC123(17)251231.
Rules that are often broken
- The AI values follow the same rules as in a barcode: the GTIN needs a correct check digit, dates use
YYMMDD. - Qualifiers belong in the path and in the defined order.
/01/…/21/…/10/…is not valid,/01/…/10/…/21/…is. - Characters outside the allowed set must be percent-encoded in the URI.
- Write AIs as digits (
/01/). Short names like/gtin/are rejected by the official GS1 Barcode Syntax Engine, which our parser uses.
In which barcode?
Usually a QR Code, because phone cameras open it as a link. It can also be encoded in a Data Matrix. In both cases it is plain text inside a normal symbol, not the FNC1-based GS1 variant.
Related tools
- GS1 Parser: paste a Digital Link URI to see and validate every AI
- GS1 Application Identifiers: which AIs exist and which may appear in a Digital Link
- Barcode Generator: encode the URI in a QR Code
- GS1 DataMatrix vs QR Code: which symbol to use