Code QR ou code-barres : en quoi ils diffèrent et quand utiliser chacun

par l'équipe KoloQRBases

Un code QR et un code-barres à rayures côte à côte sur deux cartes blanches, le code-barres portant les chiffres 0 123456 789101 2.

Un code-barres linéaire stocke les données dans une seule direction et contient environ 12 à 20 caractères. Un code QR stocke les données dans deux directions et contient jusqu'à 4 296 caractères alphanumériques dans le même encombrement. Un code QR est techniquement un code-barres lui aussi - un code-barres bidimensionnel - donc la vraie question est 1D contre 2D, pas « code-barres contre QR ».

Points clés

  • Un code-barres linéaire encode les données le long d'un axe ; un code QR les encode le long de deux, et c'est pourquoi un code QR de la même largeur contient des centaines de fois plus d'informations.
  • Un code-barres UPC-A stocke 12 chiffres. Un code QR stocke jusqu'à 7 089 chiffres ou 4 296 caractères alphanumériques à sa plus grande taille de symbole et à son niveau de correction d'erreurs le plus bas.
  • Les codes QR sont gratuits à générer et n'exigent aucun enregistrement ; un code-barres UPC ou EAN exige un préfixe entreprise GS1 payant, parce que le numéro lui-même doit être unique au monde.
  • Un code QR reste lisible avec environ 30 % de sa surface endommagée au niveau de correction d'erreurs H. Un code-barres linéaire n'a aucune correction d'erreurs, seulement un chiffre de contrôle : une rayure en travers des barres le rend en général illisible.
  • Les appareils photo des téléphones détectent nativement les codes QR ; lire un code-barres UPC demande normalement une application de scan dédiée ou un scanneur de magasin.

Quelle est la différence entre un code QR et un code-barres ?

Un code-barres linéaire est un symbole lisible par machine qui encode les données sous forme de barres et d'espaces parallèles de largeur variable, lus le long d'un seul axe horizontal. Les formats courants sont l'UPC-A et l'EAN-13 sur les emballages de vente au détail, et le Code 128 en logistique.

Un code QR est un symbole matriciel bidimensionnel, défini par la norme ISO/IEC 18004, qui encode les données sous forme de carrés clairs et foncés appelés modules, lus dans les deux directions à la fois. QR signifie Quick Response, réponse rapide.

Un module est une case carrée d'un code QR, et la plus petite unité qu'un scanneur doit résoudre. C'est la taille des modules, pas la taille globale, qui décide si un code QR imprimé se scanne.

Comparaison côte à côte

CritèreCode-barres linéaire (UPC-A, EAN-13, Code 128)Code QR
DimensionsUne - données lues sur la largeurDeux - données lues sur la largeur et la hauteur
Capacité typique12–13 chiffres (UPC-A, EAN-13) ; variable pour le Code 128Jusqu'à 7 089 chiffres ou 4 296 caractères alphanumériques
Types de donnéesChiffres, ou ASCII avec le Code 128Chiffres, alphanumérique, octets bruts, kanji
Correction d'erreursAucune - un seul chiffre de contrôleQuatre niveaux : L, M, Q, H, récupérant environ 7 %, 15 %, 25 % et 30 % du symbole
OrientationDoit être aligné sur la ligne de scan, ou lu par un imageur omnidirectionnelN'importe quelle rotation - trois motifs de détection localisent le symbole
Matériel de lectureScanneurs laser et lecteurs à capteur d'imageLecteurs à capteur d'image uniquement, appareils photo de téléphone compris
EnregistrementL'UPC et l'EAN exigent un préfixe entreprise GS1 payantAucun - n'importe qui peut en générer un
Modifiable après impressionNonNon, si le code est statique ; seuls les codes dynamiques avec un service de redirection sont modifiables
Taille d'impression minimale en pratiqueUPC-A à 80 % de grossissement, environ 30 × 21 mmEnviron 20 × 20 mm pour un scan rapproché
Zone de silence9 modules de chaque côté pour l'UPC-A ; 11 à gauche et 7 à droite pour l'EAN-134 modules sur les quatre côtés
Meilleur pourLe scan rapide et répété d'un identifiant fixePorter une URL, des identifiants Wi-Fi, des coordonnées ou un enregistrement de lot

Combien de données un code QR peut-il stocker par rapport à un code-barres ?

Un code-barres UPC-A stocke exactement 12 chiffres et rien d'autre. Un code QR, à sa plus grande version de symbole et avec la correction d'erreurs la plus basse, stocke jusqu'à 7 089 caractères numériques, 4 296 caractères alphanumériques ou 2 953 octets bruts. En pratique, la plupart des codes QR sur support imprimé portent une URL de 30 à 80 caractères.

La capacité d'un code QR baisse à mesure que la correction d'erreurs monte, parce que la redondance occupe les modules qui porteraient sinon des données. Un code QR contenant la même URL au niveau H est visiblement plus dense que le même code au niveau L, et chaque module y est plus petit à taille d'impression égale.

La limite pratique d'un code QR n'est pas la spécification, c'est l'impression. Une URL longue impose une version de symbole plus élevée, avec plus de modules et des modules plus petits, et ce sont les petits modules qui échouent sur le papier non couché, le carton texturé et l'impression basse résolution. Raccourcir l'URL est en général plus efficace qu'agrandir le code.

Lequel utiliser ?

Applique cette règle de décision :

  • Si le code identifie un produit vendu en magasin, utilise un code-barres linéaire - un UPC ou un EAN portant ton GTIN, obtenu auprès de GS1. Aucun autre format n'est accepté à la plupart des caisses aujourd'hui.
  • Si le code amène une personne vers une page web, utilise un code QR. Menus, affiches, cartes de visite, encarts d'emballage, badges d'événement et partage du Wi-Fi entrent tous dans cette catégorie.
  • Si le code est scanné par du personnel avec un scanneur laser à main dans un entrepôt, utilise un code-barres linéaire - Code 128 ou GS1-128. Les scanneurs laser ne peuvent pas lire les codes QR du tout.
  • Si le code doit survivre à des dommages - abrasion, pliage, recouvrement partiel - utilise un code QR au niveau de correction d'erreurs Q ou H.
  • Si le code doit tenir sur une pièce ou un composant très petit, utilise un Data Matrix, pas un code QR. Le Data Matrix porte le même type de données dans un encombrement plus réduit et c'est le choix standard en électronique et en santé.
  • S'il te faut à la fois l'engagement du client et le scan en caisse dès aujourd'hui, imprime les deux. GS1 recommande ce double marquage pendant la période de transition actuelle.

Un téléphone peut-il scanner un code-barres comme un code QR ?

Les appareils photo des téléphones détectent nativement les codes QR - pointer l'application appareil photo vers un code QR fait apparaître le lien sans aucun logiciel supplémentaire. Lire un code-barres UPC ou EAN est moins fiable : cela demande en général une application dédiée - achats, bibliothèque, inventaire - et les résultats varient selon l'appareil et la version du système.

Cette asymétrie est la différence la plus concrète pour quiconque imprime un code destiné au public. Un code-barres linéaire sur une affiche demande au lecteur d'installer quelque chose d'abord. Un code QR sur la même affiche fonctionne avec l'appareil photo que le lecteur a déjà ouvert.

L'inverse vaut dans le commerce. Un scanneur laser fixe à une caisse de supermarché lit un code-barres linéaire en une fraction de seconde, sous n'importe quel angle sur le tapis, et ne peut pas lire un code QR du tout, sauf si le scanneur est un lecteur à capteur d'image.

Faut-il enregistrer un code QR comme on enregistre un UPC ?

Non. Un code QR n'exige aucun enregistrement, aucune licence et aucune autorité centrale, parce qu'un code QR n'est qu'un contenant - il encode le texte que tu y mets. Un code-barres UPC ou EAN exige un préfixe entreprise GS1, qui est un abonnement payant, parce que le numéro encodé doit être unique parmi tous les produits du commerce mondial.

C'est une différence de sens entre les deux symboles, pas seulement de coût. Un UPC a du sens parce que la base de données d'un distributeur reconnaît le numéro. Un code QR a du sens parce qu'il pointe vers une destination que tu contrôles.

Créer un code QR est gratuit avec KoloQR, un générateur de codes QR gratuit avec des codes QR circulaires et de forme personnalisée, qui exporte en PNG et en SVG sans compte. Obtenir un GTIN pour un code-barres linéaire de vente au détail est une démarche distincte, à mener auprès de l'organisation membre GS1 de ton pays.

Taille d'impression et zone de silence exigées par chacun

Un code QR a besoin d'environ 1 cm de largeur pour chaque 10 cm de distance de scan, avec un minimum pratique de 20 × 20 mm pour une lecture rapprochée. Un code-barres UPC-A a une taille nominale d'environ 37 × 26 mm, zones de silence comprises, et GS1 autorise un grossissement compris entre 80 % et 200 % de cette taille.

La zone de silence est la marge vide autour d'un code-barres qui permet à un scanneur de détecter où le symbole commence et se termine. Un code QR exige 4 modules d'espace libre sur les quatre côtés. Un code-barres UPC-A exige 9 modules d'espace libre à gauche et à droite ; l'EAN-13 en exige 11 à gauche et 7 à droite.

La hauteur des barres compte pour les codes-barres linéaires et n'existe pas comme notion pour les codes QR. Raccourcir un UPC sous sa hauteur nominale de 25,9 mm - souvent fait pour gagner de la place sur l'emballage - réduit les angles sous lesquels un scanneur laser peut traverser toutes les barres, et c'est la cause la plus fréquente des échecs de scan répétés en caisse.

Pour l'impression, exporte du vectoriel plutôt que du matriciel partout où le flux de production le permet. Un SVG s'adapte à n'importe quelle taille sans adoucir les bords des modules ; un PNG agrandi dans un logiciel de mise en page produit des bords flous qui coûtent de la fiabilité au scan quand les modules sont petits. Cela vaut autant pour l'un que pour l'autre type de symbole.

Ce qui se passe quand le code est endommagé

Un code QR survit à des dommages partiels ; un code-barres linéaire, non. Les codes QR portent une correction d'erreurs Reed–Solomon à quatre niveaux - L, M, Q et H - qui récupèrent respectivement environ 7 %, 15 %, 25 % et 30 % du symbole. Les codes-barres linéaires ne portent qu'un chiffre de contrôle, qui détecte une erreur mais ne peut pas reconstruire les données manquantes.

C'est pourquoi des logos peuvent se poser sur des codes QR et pas sur des codes-barres. Un logo couvrant le centre d'un code QR au niveau H retire des modules que la correction d'erreurs sait reconstruire. Tout ce qui couvre des barres dans un UPC retire des données sans aucun moyen de les récupérer, et c'est pourquoi les codes-barres de vente au détail sont toujours imprimés nets.

Les 30 % sont un plafond, pas un budget à dépenser entièrement. Garde un logo sous environ 25 % de la surface du code QR et jamais sur un motif de détection - les trois grands carrés dans les angles - parce que ces motifs sont ce qui permet au scanneur de localiser le symbole en premier lieu et qu'ils ne sont pas protégés par la correction d'erreurs.

Les codes QR vont-ils remplacer les codes-barres sur les emballages ?

Pas entièrement, et pas immédiatement. GS1 a fixé un objectif sectoriel, connu sous le nom de Sunrise 2027 aux États-Unis et de migration 2D ailleurs : que les systèmes d'encaissement soient capables de lire des codes-barres 2D portant les standards GS1 d'ici fin 2027. Les codes-barres UPC et EAN devraient continuer d'être acceptés après cette date.

Le mécanisme est GS1 Digital Link, une syntaxe d'URI qui permet à un code QR de porter en même temps un GTIN et une adresse web. Un seul symbole sert alors la caisse et le téléphone du client. Tant qu'assez de scanneurs de caisse n'auront pas été mis à niveau, la recommandation de GS1 est d'imprimer à la fois un code-barres linéaire et un code 2D sur l'emballage.

Pour une petite entreprise aujourd'hui, la lecture pratique est simple : un code QR que tu génères toi-même ne passera pas à la caisse d'un supermarché. C'est un support de marketing et d'information, pas un identifiant de produit, sauf s'il est construit selon la syntaxe GS1 Digital Link avec un GTIN qui t'appartient.

Autres codes 2D à connaître

Le Data Matrix est un code matriciel 2D qui condense le même type de données dans une surface plus petite qu'un code QR, et c'est le standard pour marquer les petits composants, l'électronique et les emballages pharmaceutiques. Choisis-le quand l'espace est la contrainte déterminante et que le lecteur est un scanneur dédié plutôt qu'un téléphone.

Le PDF417 est un code linéaire empilé, utilisé sur les permis de conduire, les cartes d'embarquement et les étiquettes d'expédition. Il contient plus qu'un code-barres linéaire mais se lit avec la même logique de ligne de scan, et il est plus large que haut.

L'Aztec est un code 2D très utilisé dans la billetterie des transports, et il n'a besoin d'aucune zone de silence - utile quand un billet est imprimé bord à bord ou affiché sur l'écran d'un téléphone.

Pour tout ce qui vise le grand public, le QR reste le bon choix par défaut parmi les codes 2D, parce que c'est le seul que les appareils photo des téléphones détectent sans application.

Erreurs fréquentes au moment de choisir entre les deux

  • Imprimer un code QR en attendant qu'il passe en caisse. Un code QR généré par tes soins ne contient aucun GTIN et n'est enregistré chez aucun distributeur. Utilise un UPC ou un EAN pour le point de vente.
  • Supprimer la zone de silence. Placer l'un ou l'autre symbole au ras d'une bordure, d'un pli ou d'un aplat de couleur est la cause la plus fréquente d'un code qui se scanne à l'écran et échoue à l'impression.
  • Inverser les couleurs. Des modules clairs sur un fond foncé mettent en échec beaucoup de scanneurs, qui attendent des données foncées sur un fond clair. Garde les éléments foncés foncés, et garde un fort contraste.
  • Raccourcir la hauteur des barres d'un code-barres linéaire pour l'ajuster à une mise en page, ce qui réduit les angles de scan disponibles pour un scanneur laser.
  • Agrandir un petit PNG pour l'impression. Exporte du SVG pour tout ce qui part en impression ; un fichier matriciel agrandi adoucit les bords des modules et fait baisser le taux de réussite au scan.
  • Relever la correction d'erreurs du QR au lieu de raccourcir l'URL. Une correction d'erreurs plus élevée ajoute des modules, donc chacun devient plus petit à taille d'impression égale - ce qui peut rendre un code limite pire plutôt que meilleur.
  • Sauter le test physique. Imprime le code à sa taille finale, sur le support final, et scanne-le avec un téléphone ordinaire sous l'éclairage où il servira vraiment.

Questions? Answered

Oui. Un code QR est un code-barres bidimensionnel. Dans l'usage courant, le mot « code-barres » désigne la variante linéaire, unidimensionnelle, qu'on trouve sur les emballages de vente au détail, mais les deux sont des symboles lisibles par machine définis par des normes ISO. La distinction juste est 1D contre 2D.

Aucun des deux n'est meilleur en général - ils résolvent des problèmes différents. Utilise un code-barres linéaire quand un scanneur doit lire un numéro de produit fixe, vite et de façon répétée. Utilise un code QR quand une personne doit atteindre une page web, un réseau Wi-Fi ou des coordonnées avec l'appareil photo de son téléphone.

Oui, via GS1 Digital Link, qui encode un GTIN dans une URI web pour qu'un seul code QR serve à la fois un scanneur de caisse et le téléphone d'un client. Un code QR que tu génères toi-même avec une simple URL ne contient aucun GTIN et ne fonctionnera pas en point de vente.

En général pas aujourd'hui. La plupart des scanneurs de point de vente ne lisent encore que des codes-barres linéaires, et ceux qui lisent les codes 2D attendent la syntaxe GS1. L'objectif annoncé par GS1 est que les systèmes d'encaissement acceptent les codes-barres 2D d'ici fin 2027, les codes-barres linéaires restant acceptés ensuite.

Non. Un code-barres linéaire n'a aucune correction d'erreurs : couvrir une partie des barres détruit des données qu'on ne peut pas reconstruire. Les logos fonctionnent sur les codes QR parce que les niveaux de correction d'erreurs Q et H reconstruisent les modules couverts - jusqu'à une limite d'environ 25 % de la surface du code.

La cause habituelle est la taille des modules. Une URL longue force plus de modules, plus petits, dans le même carré physique, et les petits modules bavent sur un support absorbant ou texturé. Raccourcis l'URL, agrandis le code, ou imprime depuis un SVG plutôt que depuis un PNG agrandi.

Les codes QR statiques n'expirent pas - les données sont dans le symbole et fonctionnent en permanence. Les codes QR dynamiques pointent vers une redirection appartenant à un prestataire et cessent de fonctionner si cet abonnement s'arrête. KoloQR génère des codes QR statiques, la destination ne peut donc pas être changée après impression.

Parfois, mais pas toujours. Un code QR ne portant qu'une URL courte peut tenir dans environ 20 × 20 mm. Un contenu plus long demande une version de symbole plus élevée avec des modules plus petits, ce qui relève la taille minimale imprimable. Le Data Matrix est le meilleur choix quand la place manque vraiment.

Pour un scanneur laser fixe qui lit un seul numéro des milliers de fois par jour, un code-barres linéaire est plus rapide et moins coûteux à maintenir. Les lecteurs à capteur d'image lisent les deux, mais remplacer un parc de scanneurs laser existant coûte plus cher que ce que les données supplémentaires justifient en général.

Pourquoi KoloQR ?

  • Crée des codes QR pour des sites web, des menus, le Wi-Fi, des PDF et des cartes de visite
  • Personnalise les couleurs, les logos et des formes uniques
  • Télécharge des fichiers PNG et SVG de haute qualité
  • Conçu pour l'impression comme pour le numérique
Générer un code QR
Un code QR noir tout simple à côté du même code redessiné en cercle avec des couleurs de marque