Wat is een QR-code?
Een QR-code (Quick Response code) is een vierkante, tweedimensionale matrixbarcode van zwarte en witte modules die tot 7.089 cijfers of 2.953 bytes kan bevatten, met drie herkenbare hoekblokken en ingebouwde foutcorrectie, en die met een camera of beeldscanner wordt gelezen. De code is in 1994 uitgebracht door DENSO WAVE, destijds een divisie van de Japanse autotoeleverancier DENSO, om onderdelen in de productie sneller en met meer gegevens te kunnen scannen dan met een lineaire barcode. Tegenwoordig staat de QR-code op verpakkingen, typeplaatjes, kassabonnen en betaalverzoeken, en is hij een van de gegevensdragers van de GS1-standaarden en van het digitaal productpaspoort.
🧠 Hoe is een QR-code opgebouwd?
Een QR-code bestaat uit een raster van vierkante modules. Naast de data bevat het symbool vaste patronen die de scanner helpen het beeld te vinden en recht te zetten:
- Drie zoekpatronen (finder patterns) - de grote vierkanten in drie hoeken, waarmee een camera de code in elke draaiing herkent
- Uitlijnpatronen (alignment patterns) - kleinere vierkantjes vanaf versie 2, die vervorming op gebogen of scheve oppervlakken corrigeren
- Timingpatronen - afwisselend zwart-witte lijnen tussen de zoekpatronen, die de modulegrootte vastleggen
- Format- en versie-informatie - het foutcorrectieniveau en het maskerpatroon (een van acht), en vanaf versie 7 ook het versienummer
- Stille zone (quiet zone) - een witte rand van minimaal vier modules rondom het symbool
De grootte loopt van versie 1 (21 × 21 modules) tot versie 40 (177 × 177 modules); elke versie voegt vier modules per zijde toe. Hoe meer data en hoe hoger de foutcorrectie, hoe hoger de versie en hoe kleiner elke module bij een gelijk labeloppervlak.
| Versie | Modules | Max. cijfers (niveau L) | Max. bytes (niveau L) |
|---|---|---|---|
| 1 | 21 × 21 | 41 | 17 |
| 10 | 57 × 57 | 652 | 271 |
| 40 | 177 × 177 | 7.089 | 2.953 |
Data wordt gecodeerd in een van de modi numeriek (drie cijfers in 10 bits), alfanumeriek (twee tekens in 11 bits, alleen hoofdletters, cijfers en enkele leestekens), byte of kanji. Een webadres met kleine letters valt daardoor in de byte-modus en kost meer ruimte dan een getal van dezelfde lengte.
🔧 Hoe werkt de foutcorrectie?
De QR-code voegt Reed-Solomon-foutcorrectie toe aan de data. Daardoor blijft een code leesbaar als een deel vuil, bekrast of afgedekt is. Er zijn vier niveaus:
| Niveau | Herstelbare schade (ca.) | Typisch gebruik |
|---|---|---|
| L (Low) | 7% | Schone omgeving, maximale datacapaciteit |
| M (Medium) | 15% | Meest gekozen standaardniveau |
| Q (Quartile) | 25% | Industriële labels, kans op vuil of slijtage |
| H (High) | 30% | Ruwe omgeving, of een logo midden in de code |
Een hoger niveau kost capaciteit: versie 40 bevat op niveau H nog maar ongeveer 1.273 bytes in plaats van 2.953. In een fabriek met olie, stof of krassen op de verpakkingslijn is Q of H een gangbare keuze; voor een korte link op een schone doos volstaat M.
🔄 Wat is het verschil tussen een QR-code en andere barcodes?
| Code | Type | Leesbaar met | Sterk punt | Zwak punt |
|---|---|---|---|---|
| QR-code | 2D-matrix | Camera / beeldscanner | Hoge capaciteit, foutcorrectie, herkenbaar voor consumenten | Niet leesbaar met laserscanners |
| DataMatrix | 2D-matrix | Camera / beeldscanner | Kleiner bij weinig data, geschikt voor direct part marking | Minder bekend bij consumenten |
| GS1-128 | Lineair | Laser- en beeldscanner | Logistieke standaard voor pallets en SSCC | Groot labeloppervlak nodig |
| EAN-13 | Lineair | Laser- en beeldscanner | Retailstandaard voor het GTIN | Alleen een productnummer, geen batch of datum |
| RFID | Radio | RFID-lezer | Geen zichtlijn nodig, bulkuitlezing | Duurdere tags, gevoelig voor metaal en vloeistof |
Er bestaan ook kleinere varianten. De Micro QR-code heeft één zoekpatroon, een stille zone van twee modules en bevat maximaal 35 cijfers (versie M4, 17 × 17 modules). De rechthoekige Micro QR (rMQR), in 2022 door ISO goedgekeurd, past in smalle stroken van 7 × 43 tot 17 × 139 modules, bijvoorbeeld op de rand van een printplaat of een buisje.
🏭 Hoe wordt de QR-code met GS1-data gebruikt?
Een gewone QR-code bevat vrije tekst. Voor de keten zijn er twee gestandaardiseerde manieren om GS1-gegevens op te nemen:
-
GS1 QR Code - de data staat als GS1-elementstring met Application Identifiers in de code, gemarkeerd met een FNC1-teken op de eerste positie. Een scanner
meldt dit met de symboolidentificatie
]Q3. -
QR-code met GS1 Digital Link - de GS1-sleutels staan in een webadres, bijvoorbeeld
https://voorbeeld.nl/01/08711234567895/10/AB1234?17=280930. Een kassascanner haalt daar het GTIN uit, een smartphone opent productinformatie. De syntax is sinds 2024 vastgelegd als ISO/IEC 18975.
Een voorbeeld van de inhoud volgens de GS1-structuur:
- (01)08711234567895 → GTIN (prefix 871 is van GS1 Nederland, laatste cijfer is het controlecijfer)
- (17)280930 → vervaldatum 30 september 2028
- (10)AB1234 → batchnummer
- (21)SN8888 → serienummer
Velden met een vaste lengte, zoals (01) en (17), staan bij voorkeur vooraan. Na een veld met variabele lengte, zoals (10), volgt een scheidingsteken (GS) als er nog een veld komt. Het GS1-initiatief Sunrise 2027 vraagt winkels hun kassascanners uiterlijk eind 2027 geschikt te maken voor 2D-codes, zodat een QR-code met GS1 Digital Link naast of in plaats van de EAN-13 kan staan. In de zorg blijft GS1 DataMatrix de gangbare drager voor UDI op medische hulpmiddelen.
🛠️ Hoe zet u QR-codes in op de productievloer?
Een QR-code op een product of onderdeel koppelt de fysieke wereld aan ERP, MES en WMS. Een praktische aanpak:
- Bepaal de inhoud - een GS1-elementstring voor tracking en tracing in de keten, of een URL (GS1 Digital Link of IEC 61406-1 Identification Link) wanneer ook mensen met een smartphone moeten scannen.
- Kies foutcorrectie en grootte - kort houden levert een lagere versie en grotere modules op, en dus betrouwbaarder lezen. Houd de stille zone van vier modules vrij.
- Kies de printtechniek - thermisch transferlabel, inkjet op karton of lasermarkering op metaal en kunststof. Glanzende of gebogen oppervlakken vragen om een hoger foutcorrectieniveau.
- Verifieer de printkwaliteit - meet steekproefsgewijs met een verificator volgens ISO/IEC 15415, of laat een vision-camera elke code inline controleren en afkeuren.
- Koppel aan de systemen - leg bij elke scan vast welk serie- of batchnummer op welke lijn, op welk moment en met welke grondstof is verwerkt, voor terugroepacties en assetbeheer.
Toepassingen in OT-omgevingen zijn onder meer digitale typeplaatjes die via de Asset Administration Shell naar documentatie verwijzen, QR-codes op machines die een werkinstructie of storingsprocedure openen, en het batterijpaspoort dat vanaf 18 februari 2027 via een QR-code bereikbaar moet zijn.
🔐 Welke beveiligingsrisico’s hebben QR-codes?
Een QR-code is onleesbaar voor mensen, dus een gebruiker ziet pas na het scannen waar hij uitkomt. Dat maakt de code aantrekkelijk voor misbruik:
- Quishing - phishing via een QR-code in een e-mail, pdf of op papier. De link omzeilt URL-filtering in de mailomgeving omdat hij als afbeelding binnenkomt en vaak op een privételefoon wordt geopend.
- Overgeplakte stickers - een vervalste QR-code over de echte code op een parkeerautomaat, laadpaal of machine, als vorm van social engineering.
- Toetsenbordinjectie - veel handscanners gedragen zich als toetsenbord. Een gemanipuleerde code kan dan tekens of toetscombinaties invoeren op een HMI of terminal die de invoer niet controleert.
- Wifi-codes - een QR-code met het wifi-wachtwoord op een kast of in de controlekamer geeft iedereen met een camera toegang tot het netwerk.
Maatregelen zijn: neem quishing op in security awareness-training, controleer de domeinnaam na het scannen, valideer scannerinvoer in applicaties, schakel ongebruikte scannerfuncties uit en gebruik bij voorkeur eigen domeinen in QR-links op producten.
❓ Veelgestelde vragen
Hoeveel data past er in een QR-code?
Een QR-code bevat maximaal 7.089 cijfers, 4.296 alfanumerieke tekens, 2.953 bytes of 1.817 kanji, bij versie 40 en foutcorrectieniveau L. In de praktijk gebruikt men veel minder, omdat een kleinere QR-code met grotere modules betrouwbaarder scant.
Kan een laserscanner een QR-code lezen?
Nee, een QR-code is een tweedimensionale matrixcode die alleen met een camera of beeldscanner (imager) te lezen is. Een laserscanner leest alleen lineaire barcodes zoals EAN-13 en GS1-128, daarom is Sunrise 2027 gericht op het vervangen van kassascanners door 2D-scanners.
Is de QR-code vrij te gebruiken?
Ja, DENSO WAVE heeft het patent op de QR-code behouden maar verklaard dat het die rechten niet uitoefent, en de specificatie is openbaar als ISO/IEC 18004. Iedereen mag QR-codes dus kosteloos genereren en lezen; alleen de naam “QR Code” is een geregistreerd handelsmerk van DENSO WAVE. De huidige vierde editie van de norm verscheen in 2024.
Wat is het verschil tussen een QR-code en een GS1 QR Code?
Een gewone QR-code mag elke tekst of URL bevatten zonder vaste structuur. Een GS1 QR Code bevat GS1-Application Identifiers zoals (01) voor het GTIN en (10) voor het batchnummer, gemarkeerd met een FNC1-teken, zodat elk systeem in de keten de velden op dezelfde manier interpreteert.
Blijft een beschadigde QR-code leesbaar?
Ja, dankzij Reed-Solomon-foutcorrectie kan een QR-code afhankelijk van het niveau ongeveer 7% (L) tot 30% (H) beschadiging herstellen. De drie zoekpatronen en de stille zone moeten wel grotendeels intact blijven, anders vindt de scanner de QR-code niet.
Wanneer kiest u een QR-code en wanneer DataMatrix?
Een QR-code is de logische keus als consumenten of medewerkers met een smartphone scannen, bijvoorbeeld voor productinformatie of het digitaal productpaspoort. DataMatrix past beter bij kleine oppervlakken, direct part marking op metaal en de zorg, waar GS1 DataMatrix de gangbare drager is.
📌 Samengevat
De QR-code is in ruim dertig jaar uitgegroeid van een onderdelencode in de Japanse auto-industrie tot een van de bekendste 2D-barcodes ter wereld. Voor IT/OT-omgevingen is hij vooral interessant als brug tussen fysieke producten en digitale systemen: met GS1-data voor traceerbaarheid, met GS1 Digital Link of IEC 61406 voor productinformatie, en als drager van het digitaal productpaspoort. Tegelijk vraagt de code om aandacht voor printkwaliteit en voor beveiliging tegen quishing en gemanipuleerde scannerinvoer.
Een QR-code is een tweedimensionale matrixbarcode volgens ISO/IEC 18004 die tot 2.953 bytes met foutcorrectie opslaat en via GS1-structuur of GS1 Digital Link producten, batches en serienummers koppelt aan ERP, MES en het digitaal productpaspoort.
