Il codice a barre è il simbolo grafico di identificazione dei prodotti più utilizzato al mondo. È costituito da barre nere e spazi bianchi, oltre che da una serie univoca di cifre. Questi elementi, assieme, rappresentano la carta di identità di un prodotto o di un articolo, dal momento che ne contengono tutte le informazioni utili per garantirne l'identificazione e la tracciabilità. Di codici a barre ce ne sono tantissimi tipi ma in questa sede, per semplicità, vogliamo soffermarci sul più classico dei barcode che possono venire in mente: il GS1 EAN 13.
Prima di addentrarci nella comprensione di cosa è un codice a barre, di come funziona e come è fatto, conviene distinguere anzitutto tra cosa è codice a barre e cosa no. Come detto, esistono diverse tipologie di codice a barre, per facilità distinguiamo tra quelli lineari o 1D e quelli bidimensionali o 2D. I codici a barre come siamo abituati a pensarli, ovvero quelli con le barre nere e gli spazi bianchi rientrano nella prima categoria, mentre i QR code, i DataMatrix e i codici farmaceutici nella seconda. In sostanza anche quando non sono presenti visivamente le barre (come nel caso di un QR Code) siamo comunque in presenza di un codice a barre. Sulle varie tipologie di barcode ci soffermeremo tra poco, mentre a questo punto possiamo tornare al nostro esempio, quello del codice a barre lineare GS1 EAN 13, e vedere nel dettaglio come funziona il codice a barre.
Per capire il codice a barre come funziona bisogna anzitutto comprendere come è fatto. Un codice a barre GS1 EAN 13 è composto da moduli. Un modulo è la colonna corrispondente a una barra scura o a una barra chiara, che, per comodità chiameremo “spazio”. Il motivo per cui il codice a barre è costituito da una sequenza di colonne nere e spazi bianchi ha a che fare con la riflessione della luce. Lo scopo dell'utilizzo di un barcode, infatti, è quello di poterlo decodificare. per farlo si utilizza un lettore di codici a barre. Quando il laser del lettore scansiona un codice come questo sta praticamente leggendo tra 95 colonne identiche, che chiamiamo “moduli”, controllando la quantità di luce, emessa dal laser, che ciascuno di essi è in grado di riflettere. I computer, che ragionano in linguaggio binario, tradurranno in "1" ogni barra scura, che non riflette luce, e in "0" ogni spazio, in grado di riflettere molta luce.
Lo scanner barcode inizia quindi a leggere i 95 moduli. Il primo non riflette la luce, quindi è un "1", quello successivo riflette molta luce quindi è uno "0"; il terzo è uguale al primo e non riflette luce, quindi è un "1"...e così via; il computer legge ogni modulo per tutta la lunghezza del barcode e alla fine ottiene un numero composto da 95 cifre, che sono 0 o 1. A questo punto, suddivide questo lunghissimo numero in 15 sezioni. 12 di queste sezioni, composte da 7 moduli ciascuna, rappresentano simbolicamente 12 delle cifre riportate sotto alle barre. Le altre 3 sezioni, composte da 3 moduli alle estremità e 5 moduli centrali, sono usate dal computer come punti di riferimento; permettono infatti di sapere dove il barcode inizia e finisce, ma anche dove iniziano e finiscono le cifre della prima e della seconda metà.
Queste sono informazioni importanti, perché le due metà utilizzano due differenti metodi di codifica. Inoltre, la prima metà inizia sempre con uno spazio e finisce con una barra, mentre la seconda inizia con una barra e termina con uno spazio. Anche se può sembrare un’inutile complicazione, questi differenti set di codifica permettono al computer di riconoscere le sezioni del codice e di capire se il barcode è capovolto. Sapendolo, in fase di lettura può capovolgerlo a sua volta per processarlo correttamente.
Un barcode però, come detto, non è fatto solo di barre e spazi ma anche di cifre. Cosa significano, quindi, i numeri posti nella parte bassa del codice a barre? Le prime sette cifre identificano il produttore, al quale GS1, l’organizzazione mondiale che gestisce i principali standard della codifica, ha assegnato questo prefisso. Le prime due cifre di questo numero, inoltre, ne identificano l’origine, ad esempio l’Italia. Le successive 5 cifre si riferiscono invece al codice prodotto. Infine, l’ultima a destra è detta “cifra di controllo” ed è un ulteriore sistema per evitare errori di lettura. In pratica, il computer esegue un calcolo che deve dare come risultato questa cifra
In questo esempio ci siamo soffermati su un codice a barre "classico", il GS1 EAN 13, ma esistono tantissimi tipi di codici a barre. Anzitutto i codici possono dividersi in due grandi categorie: i codici a barre lineari (1D) e quelli bidimensionali (2D). I codici a barre lineari più comuni sono quelli che troviamo tipicamente sui prodotti dei supermercati, dei punti vendita e dei negozi in generale come l'EAN 8, il GS1 DataBar e l'EAN 13. Quest'ultimo codice a barre lineare è utilizzato anche per codificare i colli, così come il codice ITF-14 e il GS1 128 che, a differenza degli altri, viene utilizzato anche per identificare un'unità logistica o un pallet e per il pagamento dei bollettini. Quello che rende diversi questi codici è la lunghezza, il numero di moduli, quello delle cifre e, di conseguenza, del numero di informazioni contenute.
La seconda categoria è quella dei codici a barre bidimensionali o 2D. I più noti tra questi sono il DataMatrix e il QR Code. Questi codici hanno il vantaggio di poter contenere un elevato volume di informazioni in uno spazio grafico ridotto (si tratta praticamente di piccoli quadratini). Il DataMatrix è molto utilizzato in ambiente farmaceutico o in quello di prodotti per il benessere. Il QR Code, invece, è probabilmente il barcode più pop. È quello che "fotografiamo" con lo smartphone per accedere a una pagina web o a un file, ad esempio per accedere al menù di un ristorante, o quello che mostriamo sul nostro telefono per entrare a un concerto o al cinema.