Mensen openen een barcodegenerator, zien een keuzemenu met een dozijn formaatnamen, en bevriezen. CODE128, EAN-13, UPC-A, CODE39, ITF-14... welke is de juiste? Bijna alle verwarring verdwijnt zodra je één enkele vraag stelt: is deze barcode voor eigen gebruik, of moet hij bij een winkelkassa scannen?

Dat is de splitsing. Al het andere is detail.

Voor eigen gebruik: CODE128

"CODE128 vs EAN-13: welke barcode moet je nu echt gebruiken in 2026?" — visual 1
Voor eigen gebruik: CODE128

Als de code iets is dat je zelf beheert — een planklabel in je magazijn, een assetlabel op een laptop, een batchnummer op een werkorder, een baklocatie in je magazijn — gebruik CODE128. Het codeert elke mix van letters en cijfers, dus LAPTOP-0413 of BAK-A7-03 werkt precies zoals je zou verwachten. Het is compact, en elke barcodescanner die in de laatste dertig jaar is gemaakt leest het zonder speciale configuratie.

Het mooiste is dat er geen regels van buiten je eigen bedrijf te vervullen zijn. Jij bepaalt wat de getallen betekenen. Niemand hoeft iets te registreren. Je kunt er vanmiddag honderd maken en ze op dingen gaan plakken.

Voor een winkelkassa: EAN-13, EAN-8 of UPC-A

"CODE128 vs EAN-13: welke barcode moet je nu echt gebruiken in 2026?" — visual 2
Voor een winkelkassa: EAN-13, EAN-8 of UPC-A

Als je product op een schap in de winkel van iemand anders komt te staan en bij hun kassa wordt gescand, heb je een retailbarcode nodig: EAN-13 (de 13-cijferige code die in het grootste deel van de wereld wordt gebruikt), EAN-8 (een kortere versie voor kleine verpakkingen) of UPC-A (de 12-cijferige code die gangbaar is in Noord-Amerika). Dit zijn de barcodes die een kassasysteem verwacht.

Hier is het deel dat de meeste tutorials overslaan. Deze getallen zijn niet de jouwe om te verzinnen. EAN- en UPC-nummers worden uitgegeven door GS1, de wereldwijde organisatie die ze beheert. Om in echte winkels te verkopen, koop je een bedrijfsprefix bij GS1, en je productnummers worden op die prefix gebouwd zodat ze wereldwijd uniek zijn. Dat is wat voorkomt dat jouw flesje hete saus een code deelt met iemands telefoonhoesje.

Een barcodegenerator — deze inbegrepen — zal graag elke 13 cijfers omzetten in een plaatje dat eruitziet als een perfecte EAN-13. De balken zijn echt, het controlecijfer berekent correct, een scanner leest het. Maar het getal is betekenisloos als het niet op jouw naam is geregistreerd. Het systeem van een winkelier kan een ongeregistreerde code afwijzen, en als je per ongeluk op een getal belandt dat GS1 aan iemand anders heeft toegewezen, heb je een botsing gecreëerd die echt vervelend is om te ontwarren.

Dus: render EAN-13's vrijelijk voor mockups, verpakkingscomps, demo's en het testen van je labellay-out. Print gewoon geen verzonnen exemplaar op product dat je daadwerkelijk via een winkel verkoopt.

Het controlecijfer, kort

EAN-13 en UPC-A eindigen op een controlecijfer — een enkel getal dat uit de andere wordt berekend en waarmee een scanner een verkeerd gelezen code kan opvangen. Daarom accepteert een strikt formaat niet zomaar elke reeks: geef het de verkeerde lengte of een fout controlecijfer en een goede tool markeert het meteen in plaats van iets te exporteren dat niet scant. Wanneer je een geldig retailnummer typt, wordt het controlecijfer voor je afgehandeld.

De korte versie

  • Intern / magazijn / bedrijfsmiddelen / alles wat je beheert → CODE128. Geen registratie, letters en cijfers welkom.
  • Verkopen via echte retail → EAN-13 / EAN-8 / UPC-A, met een getal dat je echt bezit via GS1.
  • De zeldzamere formaten (CODE39, ITF-14, Codabar, MSI, Pharmacode) bestaan voor specifieke branches — verzenddozen, bibliotheken, apotheekverpakkingen — en heb je er een nodig, dan weet je dat al.

Negen van de tien keer is het antwoord CODE128, omdat de meeste barcodes die mensen genereren voor hun eigen systemen zijn, niet voor een supermarktschap. Begin daar, en grijp alleen naar EAN of UPC wanneer een kassa echt in beeld is.