Você está na página 1de 7

Como funcionam os códigos de barras UPC

por Marshall Brain - traduzido por HowStuffWorks Brasil

Introdução

Se você for olhar em sua geladeira ou despensa agora, descobrirá que


todas as embalagens têm um código de barras UPC impresso. Na
realidade, quase todos os itens que você compra em um supermercado,
loja de departamentos e hipermercado têm um código de barras UPC.
Você já imaginou de onde estes códigos vêm e o que eles significam?
Neste artigo, resolveremos este mistério, assim você poderá decodificar
qualquer código UPC que você encontrar! códigos de barras
UPC

O código de barras de um xampu anticaspa

Aniversário
Há 57 anos, os americanos Norman Woodland e Bernard Silver
desenvolveram um sistema capaz de codificar dados em círculos
concêntricos, que é o código de barras que conhecemos hoje.
Leia mais em VEJA.com

O que é um código de barras UPC

"UPC" significa código universal de produtos. Os códigos de barras UPC foram originalmente criados
para ajudar os mercados a aumentar a velocidade do processo de verificação na saída e melhorar o
controle de inventário, porém o sistema estendeu-se rapidamente a todos os outros produtos de varejo
por ser tão eficiente.
Os códigos UPC originaram-se em uma empresa chamada Uniform Code Council ,UCC (em inglês). Um
fabricante solicita permissão para a UCC para entrar no sistema UPC. Para isso o fabricante paga uma
taxa anual. Em troca, a UCC emite ao fabricante um número de identificação de fabricação de seis
dígitos e fornece diretrizes de como usá-lo. Você pode ver o número de identificação do fabricante em
todos os códigos UPC padrão de 12 dígitos, como este mostrado na parte de trás do livro "The
Teenager's Guide to the Real World," (em inglês) publicado pela BYG Publishing (em inglês)
Você pode ver que este símbolo UPC impresso em uma embalagem tem duas partes:

 O código de barras legível por máquinas


 O número UPC de 12 dígitos legível por humanos

O número de identificação de fabricação da BYG Publishing são os seis primeiros dígitos do número
UPC - 639382. Os cinco números seguintes - 00039 - são os números de ítem. Um funcionário da
empresa, chamado coordenador UPC, é responsável pela alocação do número de item em produtos,
garantindo que o mesmo código não seja utilizado em mais de um produto, retirando códigos à medida
que produtos são retirados de linha, etc. Geralmente, cada item que um fabricante vende, assim como
todos os tamanhos de embalagens e todas as novas embalagens deste item, necessitam de um código
diferente. Então uma lata de Coca-Cola de 354ml necessita de um código de item diferente do que uma
garrafa de Coca-Cola de 473ml, assim como um pacote de 6 latas de 354ml, um pacote com 12, uma
caixa de 24 latas, e assim por diante. É tarefa do coordenador UPC manter todos estes números
corretos.
O último dígito de um código UPC é chamado de dígito de verificação. Este dígito permite que o
scanner determine se este número foi escaneado corretamente ou não. Aqui está como é calculado o
dígito de verificação para os outros 11 dígitos do código, usando o código 63938200039, conforme do
"The Teenager's Guide to the Real World" exemplificado acima:
1. some o valor de todos os dígitos em posições ímpares (dígitos 1, 3, 5, 7 e 9).
6 + 9 + 8 + 0 + 0 + 9 = 32
2. multiplique esse número por 3.
32 x 3 = 96
3. some o valor de todos os dígitos em posições pares (dígitos 2, 4, 6, 8 e 10).
3 + 3 + 2 + 0 + 3 = 11
4. some este valor ao valor no passo 2.
96 + 11 = 107
5. para criar o código verificador, determine o número que, quando adicionado ao número do passo 4,
seja múltiplo de 10.
107 + 3 = 110
Dessa forma, o dígito verificador é 3.
Cada vez que o scanner lê o código de barras de um item, ele executa este cálculo. Se o dígito de
verificação calculado for diferente do dígito de verificação lido, o scanner sabe que algo saiu errado e
que este item deve ser escaneado novamente.

Como o preço é determinado

Como você pode ver, não existe informação de preço codificada em um código de barras. Quando o
scanner na verificação de saída escaneia um produto, a caixa registradora envia o número UPC ao
computador central POS (ponto de venda) da loja para verificar o número UPC. O computador central
envia de volta o preço real deste item neste exato momento.
Este método permite que a loja mude o preço quantas vezes quiser, por exemplo para refletir preços de
venda. Se o preço estiver codificado no código de barras, os preços jamais podem mudar. Por outro
lado, não codificar um preço fixo permite à loja uma maneira fácil de enganar clientes. Quando você
ouve sobre "fraude do scanner" no noticiário, é sobre isto que o jornalista está dizendo. É
inacreditavelmente fácil para uma loja elevar os preços por engano ou propositalmente.
Algo que você irá notar quando começar a olhar os códigos UPC em detalhes é que uma grande
empresa tem as identificações da empresa com vários zeros. Aqui estão alguns:

 Post - 043000
 General Mills - 016000
 Del Monte - 024000
 Aveia Quaker - 030000

Aqui está o código de barras de uma garrafa de 3 litros de Coca-Cola diet:

Você pode ver que a identificação da empresa Coca-Cola é 049000. Porém, se você olhar em uma lata
de Coca-cola ou a maioria das garrafas de 2 litros, você verá que o código UPC é menor - apenas oitos
dígitos no total. Aqui está o código de barras de uma garrafa de 2 litros de Sprite:

Estes pequenos códigos de barras são chamados de números com zeros suprimidos. Existe um
conjunto de regras sobre a criação destes números com zeros suprimidos a partir dos números
completos, porém a idéia básica é omitir um conjunto de quatro dígitos, todos zeros. No caso do código
UPC da Sprite, o 049 no começo são os três primeiros dígitos de identificação da empresa Coca-cola
049000. O 551 é o número de item desta garrafa de Sprite, abreviado de 00551. O zero no penúltimo
dígito é o quarto dígito da identificação da empresa Coca-Cola. O dígito final é o dígito de verificação
normal. O principal motivo para a existência dos números com zeros suprimidos é criar códigos de
barras menores, para produtos com embalagens menores, como as latas de 354ml.
O primeiro dígito do número de identificação de fabricação é especial. Ele é chamado de caractere de
sistema de números. A tabela a seguir mostra o que diferentes sistemas de números de caracteres
significam:

número UPC padrão


0 (devem ter um zero para os números com zeros
suprimidos)
1 reservado
itens de peso-aleatório
2 (frutas, vegetais, carnes, etc.)
3 farmacêuticos
marcas em estoque para varejistas
4 (Uma loja pode montar seus códigos próprios, porém
nenhuma outra loja irá entendê-los.)
5 cupons
6 números UPC padrão
7 números UPC padrão
8 reservado
9 reservado

Aqui está um exemplo de código de barras farmacêutico (caractere de sistema de número 3). Este é um
frasco de 118ml de xampu anticaspa Selsun Blue:

Aqui está o exemplo de marca em estoque (caractere de sistema de número 4), neste caso de um vale
presentes de R$ 21,50 da Toys R Us:

Como a Toys R Us é a única loja que sempre usa este código de barras - este é o único lugar onde os
vales-presentes podem ser resgatados - a Toys R Us montou seu próprio código UPC para vales-
presentes e então usa o sistema de número 4 para fazê-lo.

O que é código de cupom


O código de cupom é interessante (caractere de sistema de número 5). Se você já imaginou como um
scanner pode ler um cupom e rejeitá-lo se você não tiver comprado o produto, aqui está a sua
explicação. Aqui está um código de barras UPC de uma caixa de Post Honey Nut Shredded Wheat:

Aqui está o cupom do mesmo produto:

Você pode ver que o código de barras deste cupom começa com um 5 indicando que isto é um cupom.
O número 43000 é a identificação da empresa Post. Os próximos três dígitos (186) são chamados de
código família. Os próximos dois dígitos (70) são um código de valor. O dígito final é o código de
verificação normal.
O código família e o código de valor são colocados arbitrariamente pelo coordenador UPC da empresa.
Isto é feito porque um cupom é usado por toda uma família de produtos. Por exemplo, um cupom talvez
sirva para quatro diferentes tipos de sabonetes feitos pela mesma empresa. Da mesma forma, o código
de valor representa, arbitrariamente, o valor do cupom. A empresa envia ao varejista os dados que
contam ao computador do varejista exatamente quais produtos se ajustam ao código de família, e
exatamente quantos remover. Quando o cupom é escaneado, o computador POS:
1. decodifica o código família
2. verifica para garantir que o cliente comprou um item da família
3. decodifica o código de valor
4. envia o desconto novamente à máquina registradora
Na próxima vez em que você for a uma loja, pegue um produto - qualquer produto. Olhe para o seu
código UPC: agora você já sabe o que significa!

Como posso decodificar as barras

Então, digamos que você gostaria de decodificar as barras atuais dos códigos de barras e mapear seus
números. Isso será algo que o deixará vesgo, porém pode ser feito.
Em primeiro lugar, examine qualquer código de barras de 12 dígitos. Ele é composto por barras pretas e
espaços brancos entre as barras. Suponhamos que a mais fina barra ou espaço que você vê (por
exemplo, a primeira barra a esquerda) possa ser chamada de "uma unidade largura". As barras e
espaços podem então ser vistos como tendo larguras proporcionais de uma, duas, três ou quatro
unidades. Se você examinar qualquer código de barras pode ver exemplos destas quatro larguras.
O começo de qualquer código de barras é "1-1-1". Isto é, partindo da esquerda, você encontra uma
unidade de largura de barra preta seguida de uma unidade de largura de espaço branco seguido por
uma unidade de largura de barra preta (barra-espaço-barra). Seguindo o começo do código, os dígitos
são codificados assim:

0 = 3-2-1-1 1 = 2-2-2-1 2 = 2-1-2-2

3 = 1-4-1-1 4 = 1-1-3-2 5 = 1-2-3-1

6 = 1-1-1-4 7 = 1-3-1-2 8 = 1-2-1-3

9 = 3-1-1-2

0 = 3-2-1-1 1 = 2-2-2-1 2 = 2-1-2-2

3 = 1-4-1-1 4 = 1-1-3-2 5 = 1-2-3-1

6 = 1-1-1-4 7 = 1-3-1-2 8 = 1-2-1-3

9 = 3-1-1-2

(Algo a observar: todas essas codificações apresentam a soma igual a 7).


Então vamos pegar esse código de barras como um exemplo:

o código embutido nas barras é 043000181706:

 o código de barras começa com o código padrão inicial de 1-1-1 (barra-espaço-barra).


 o zero é 3-2-1-1 (espaço-barra-espaço-barra).
 o quatro é 1-1-3-2 (espaço-barra-espaço-barra).
 o três é 1-4-1-1 (espaço-barra-espaço-barra).
 os próximos três zeros são 3-2-1-1 (espaço-barra-espaço-barra).
 no meio existe um padrão 1-1-1-1-1 padrão (espaço-barra-espaço-barra-espaço), que é muito
importante pois significa que os números à direita estão visualmente invertidos!
 o um é 2-2-2-1 (barra-espaço-barra-espaço).
 o oito é 1-2-1-3 (barra-espaço-barra-espaço).
 o um é 2-2-2-1 (barra-espaço-barra-espaço).
 o sete é 1-3-1-2 (barra-espaço-barra-espaço).
 o zero é 3-2-1-1 (barra-espaço-barra-espaço).
 o seis é 1-1-1-4 (barra-espaço-barra-espaço).
 o último caractere é um 1-1-1 (barra-espaço-barra).

Divirta-se decodificando códigos de barras de 12 dígitos!