Digital Link

La technologie GS1 Digital Link : la syntaxe de l'URI, règle par règle, avec des exemples

Mis à jour

Mia

Par Mia

Rédactrice spécialisée dans les normes GS1 et la réglementation européenne d’étiquetage.

Illustration de smartphones et de fiches produits aux tons sarcelle, orange et violet, plusieurs d'entre eux affichant une icône de code QR

TL;DR

  • Une URI GS1 Digital Link est une adresse web à la grammaire fixe : un domaine, une clé primaire comme /01/ suivie d'un GTIN à 14 chiffres, des qualificatifs de clé facultatifs dans le chemin, et des attributs de données dans la chaîne de requête.
  • Ses nombres sont des identifiants d'application (IA) GS1, les mêmes que dans les codes-barres GS1-128 : une URI se convertit donc en chaîne d'éléments traditionnelle, et inversement, sans perte de données GS1.
  • Les règles qui font trébucher : des GTIN complétés à 14 chiffres avec une clé de contrôle valide, des qualificatifs dans un ordre fixe (22, 10, 21), des attributs uniquement après ?, et des symboles encodés en pourcentage dans les valeurs.

Une URI GS1 Digital Link est une adresse HTTPS qui porte des identifiants GS1 selon une structure standard, de sorte qu'un téléphone peut l'ouvrir et qu'un scanner peut en extraire les identifiants. Le chemin contient l'identité ; la chaîne de requête contient des données supplémentaires et des instructions pour le resolver. Pour le vocabulaire, voir les bases de GS1 Digital Link ; pour ce qui se passe après un scan, le guide du resolver.

Modèlehttps://{domain}/{key AI}/{value}/{qualifier AI}/{value}?{attribute AI}={value}
IdentitéDans le chemin : exactement une clé primaire, puis des qualificatifs de clé facultatifs dans un ordre fixe
Données supplémentairesDans la chaîne de requête : des attributs de données comme la date de péremption 17 ou le poids net 310n
Format du GTINToujours 14 chiffres, complétés par des zéros en tête, avec une clé de contrôle valide en dernière position
Caractères spéciauxEncodés en pourcentage : un / dans un numéro de lot devient %2F
Instructions pour le resolverlinkType dans la chaîne de requête, comme linkType=gs1:pip ou linkType=linkset

Une URI GS1 Digital Link décomposée partie par partie : domaine, clé d'identification primaire 01, GTIN, qualificatif de clé 22, CPV, attribut de données 17 et date de péremption

Un exemple complet :

https://id.example.com/01/09506000134352/22/2A/10/LOT42/21/1234?17=271231&3103=000750

PartieDans l'exempleRègle
Domaineid.example.comN'importe quel domaine, après https://. Il détermine quel resolver répond à un téléphone, mais ne fait pas partie de l'identité du produit
Clé primaire/01/09506000134352Exactement une par URI : un IA suivi de sa valeur
Qualificatifs de clé/22/2A/10/LOT42/21/1234Facultatifs, dans le chemin, dans l'ordre fixé pour cette clé
Attributs de données?17=271231&3103=000750Facultatifs, sous forme de paires AI=value reliées par &, dans n'importe quel ordre

De gauche à droite : GTIN 09506000134352, variante de produit de consommation 2A, lot LOT42, numéro de série 1234, date de péremption au 31 décembre 2027, poids net de 0,750 kg.

Le GTIN est la clé des produits de consommation, mais la syntaxe couvre aussi les autres clés GS1 :

Clé GS1IAIdentifieQualificatifs de clé
GTIN, Global Trade Item Number01Un article commercial, à tout niveau de conditionnement22, 10, 21
SSCC, Serial Shipping Container Code00Une unité logistique comme une palette (18 chiffres)Aucun
GLN, Global Location Number414Un lieu physique (13 chiffres)254, composant d'extension du GLN

Les clés d'actifs comme le GRAI (8003) et le GIAI (8004) suivent le même modèle.

Comment fonctionnent les qualificatifs de clé pour un GTIN ?

Les qualificatifs de clé restreignent un GTIN d'un produit à une variante, un lot ou une unité. Ils se placent dans le chemin, dans cet ordre :

OrdreIAQualificatifFormatIdentifie
122Variante de produit de consommation (CPV)Jusqu'à 20 caractèresUne variante au sein d'un même GTIN
210LotJusqu'à 20 caractèresUn cycle de production
321Numéro de sérieJusqu'à 20 caractèresUne unité

Chacun peut être omis, mais ceux que vous utilisez gardent cet ordre :

CheminValide ?
/01/09506000134352/10/LOT42/21/1234Oui
/01/09506000134352/21/1234Oui : un numéro de série sans lot
/01/09506000134352/21/1234/10/LOT42Non : le numéro de série précède le lot
/01/09506000134352/17/271231Non : la date de péremption doit figurer dans la chaîne de requête

Un resolver utilise les qualificatifs pour trouver son entrée la plus précise, en se rabattant sur le niveau du produit.

Quels attributs de données se placent dans la chaîne de requête ?

Les attributs de données décrivent l'article sans modifier son identité :

IAAttributFormatExemple
17Date de péremptionAAMMJJ17=271231 : 31 décembre 2027
15Date de durabilité minimaleAAMMJJ15=270630 : 30 juin 2027
310nPoids net en kg, n = nombre de décimales6 chiffres3103=000750 : 0,750 kg
422Pays d'origineCode numérique ISO 3166 à 3 chiffres422=380 : Italie

Chaque attribut apparaît une seule fois, dans n'importe quel ordre. Un resolver transmet la chaîne de requête telle quelle lorsqu'il redirige, de sorte que la page de destination peut la lire.

Toujours sur 14 chiffres. Les GTIN plus courts sont complétés par des zéros en tête, qui ne changent ni le numéro ni sa clé de contrôle :

GTIN sous le code-barresDans l'URI
GTIN-12 (UPC-A) : 614141123452/01/00614141123452
GTIN-13 (EAN-13) : 9506000134352/01/09506000134352

Le dernier chiffre est une clé de contrôle. Pour 9506000134352, multipliez les douze chiffres qui la précèdent, en partant de la droite, par 3, 1, 3, 1 et ainsi de suite, puis additionnez-les : 78. La clé de contrôle porte ce total au multiple de dix suivant : 80 − 78 = 2.

Quels caractères doivent être encodés en pourcentage ?

Les lettres, les chiffres, -, . et _ s'écrivent tels quels. Les autres symboles présents dans les valeurs de lot, de numéro de série ou de CPV sont encodés en pourcentage, pour ne pas être confondus avec la structure de l'adresse :

CaractèreEncodé enValeurDans l'URI
/%2FAB/12/10/AB%2F12
%%2550%OFF/10/50%25OFF
&%26A&B/21/A%26B

Les valeurs sont sensibles à la casse, si bien que LOT42 et lot42 sont des lots différents, et les espaces ne sont pas autorisées.

Qu'est-ce que la forme compressée ?

La norme définit aussi une forme compressée pour les très petits codes : tout ce qui suit le domaine est condensé en une courte chaîne de lettres, de chiffres, de - et de _, illisible à l'œil nu, que le resolver décompresse avant de la valider. Utilisez la forme non compressée, sauf si la taille du symbole ne laisse pas le choix : elle est plus facile à vérifier avant l'impression, et un code compressé ne fonctionne que si chaque scanner et chaque application de votre chaîne savent le décompresser.

Comment linkType et les linksets s'intègrent-ils à l'URI ?

linkType n'est pas un identifiant mais une instruction destinée au resolver, écrite dans la chaîne de requête :

URICe que renvoie le resolver
https://id.example.com/01/09506000134352Une redirection vers le lien par défaut, généralement la page produit
https://id.example.com/01/09506000134352?linkType=gs1:recallStatusUne redirection vers le lien du statut de rappel, s'il en existe un
https://id.example.com/01/09506000134352?linkType=linksetLa liste complète des liens de ce GTIN, dans un format lisible par machine

Les types de lien proviennent du GS1 Web Vocabulary, comme gs1:pip (page d'informations produit), gs1:instructions et gs1:allergenInfo. La langue n'est pas définie dans l'URI : le resolver la lit dans la requête du téléphone.

Ils portent les mêmes données GS1 selon deux syntaxes :

FormatExempleUtilisé dans
Chaîne d'éléments(01)09506000134352(10)LOT42(17)271231Les codes-barres GS1-128 et le texte sous les symboles GS1
URI GS1 Digital Linkhttps://id.example.com/01/09506000134352/10/LOT42?17=271231Les codes QR et les symboles Data Matrix que les téléphones peuvent ouvrir

Dans une chaîne d'éléments, les parenthèses n'apparaissent que dans le texte imprimé, et une valeur de longueur variable comme un lot se termine par un caractère séparateur lorsqu'un autre IA suit ; dans l'URI, ce rôle revient aux barres obliques, au ? et au &. Convertir une URI en chaîne d'éléments conserve chaque IA et chaque valeur et supprime le domaine et les instructions pour le resolver : c'est ce que fait une caisse compatible 2D, sans connexion internet. Pour le choix du symbole, voir code QR vs Data Matrix.

  1. Choisissez le domaine. Commencez par https:// et un domaine que vous contrôlez, comme id.votremarque.com, pour que les codes restent à vous quel que soit le prestataire qui exploite le resolver.
  2. Choisissez la clé primaire. Pour un produit, l'IA 01 et son GTIN : /01/.
  3. Écrivez le GTIN sur 14 chiffres. Complétez-le par des zéros en tête et vérifiez le dernier chiffre : 9506000134352 devient 09506000134352.
  4. Ajoutez les qualificatifs de clé nécessaires, dans l'ordre. CPV /22/, lot /10/, numéro de série /21/.
  5. Encodez les valeurs en pourcentage. Gardez les lettres, les chiffres, -, . et _, et encodez le reste : AB/12 devient AB%2F12.
  6. Ajoutez les attributs de données après ?. Écrivez chacun sous la forme AI=value, reliés par & : ?17=271231&3103=000750.
  7. Validez avant l'impression. Convertissez l'URI en chaîne d'éléments et vérifiez chaque valeur, ouvrez-la dans un navigateur, puis scannez le code imprimé sur plusieurs téléphones et un scanner 2D. Le guide de dépannage liste les erreurs habituelles.

Le résultat pour un lot avec une date de péremption : https://id.votremarque.com/01/09506000134352/10/AB%2F12?17=271231.

Digital Link, la plateforme à l'origine de ce site, écrit ces URI pour vous. Elle valide chaque GTIN à la création d'un lien, et ajoute le lot, le numéro de série, la date de péremption, le poids net, le pays d'origine, la date de conditionnement ou la variante de produit de consommation sous forme de variantes d'un lien, chacune avec son propre ensemble de liens. Les codes peuvent être créés en masse à partir d'un fichier CSV, sur votre propre sous-domaine ou sur le domaine dlink.is inclus.

Créez votre premier code QR GS1 Digital Link

Foire aux questions

Oui. Un GTIN-8, un GTIN-12 ou un GTIN-13 est complété par des zéros en tête jusqu'à 14 chiffres : 9506000134352 s'écrit donc /01/09506000134352. La clé de contrôle reste la même et doit être valide.

Dans quel ordre se placent les qualificatifs de clé ?

Pour un GTIN : la variante de produit de consommation 22, puis le lot 10, puis le numéro de série 21. Chacun peut être omis, mais ceux que vous utilisez gardent cet ordre.

Le domaine change-t-il l'identité du produit ?

Non. Le domaine détermine quel resolver répond à un téléphone, mais l'identité est constituée de la clé primaire et de ses qualificatifs. Le même GTIN sous deux domaines désigne le même produit.

Les mêmes données dans deux formats. Une chaîne d'éléments, comme (01)09506000134352(10)LOT42, est le format des codes-barres GS1-128. Une URI GS1 Digital Link l'écrit sous forme d'adresse web que les téléphones peuvent ouvrir.

Faut-il utiliser la forme compressée ?

Seulement si le symbole est trop petit pour l'adresse complète. Un code compressé ne fonctionne que si chaque scanner et chaque application savent le décompresser.

Soyez un leader de la transition des codes-barres aux QR codes GS1