El código de barras (barcode en inglés) es el sistema de identificación de mercancías más extendido del mundo; está constituido por una secuencia alterna de barras oscuras y claras de diferente grosor.

Para leer un barcode, se utilizan sistemas específicos que, al emitir rayos luminosos (los lectores actuales utilizan láseres de color rojo), «escanean» el código de barras; los rayos emitidos por los dispositivos son absorbidos por las barras oscuras y reflejados por las barras claras; la identificación del artículo se realiza sobre la base de la señal devuelta a los dispositivos de lectura. Es evidente que el contraste entre el color utilizado para las barras oscuras y el de las barras claras debe ser suficientemente marcado para permitir la lectura; por ello, se recomienda utilizar tinta negra sobre un fondo blanco o amarillo.

Existen diferentes estándares para la codificación de los barcodes, siendo los más extendidos los estándares EAN (European Article Numbering) y los estándares UPC (Universal Product Code).

En particular, existen distintas clases dentro de estos estándares que se distinguen por la densidad del código, es decir, por su capacidad para contener información.

Entre los estándares EAN, cabe señalar EAN-7, EAN-13 y EAN-128 (este último capaz de codificar todos los caracteres ASCII); mientras que dentro de los estándares UPC se distinguen 5 clases, de A a E. Los estándares EAN-13 y UPC-A son muy similares, hasta el punto de que pueden ser leídos por el mismo escáner.

El estándar EAN-13 es, con diferencia, el más utilizado en el ámbito de la gran distribución para la identificación del producto terminado adquirido por el consumidor final; se compone de barras que codifican 13 cifras; estas identifican (de izquierda a derecha):

  • la nacionalidad del productor (2 caracteres) ;

  • el productor (5 caracteres) ;

  • el artículo específico (5 caracteres) ;

  • el check-digit (1 carácter).

Este último sirve para prevenir errores de lectura del barcode y se determina de modo que la suma del triple de la suma de las cifras en posición par, la suma de las cifras en posición impar y el check-digit en sí misma sea igual al múltiplo de 10 más cercano.

Por ejemplo, consideremos el código 80-02270-01490-1. La suma de las cifras en posición par es 13 (=0+2+7+0+4+0), cuyo triple es 39; la suma de las cifras en posición impar es 20 (=8+0+2+0+1+9); si sumamos estos dos números, obtenemos 59. La diferencia entre 60 (es decir, el múltiplo de 10 inmediatamente superior a 59) y 59 es igual a 1, lo que corresponde exactamente al valor del check-digit.