O que é um código EAN?
EAN significa European Article Number. É um padrão internacional para identificar produtos comerciais. Quando você passa um produto no caixa do supermercado, o leitor de barras lê o código EAN e o sistema sabe exatamente qual produto é, qual o preço, o estoque etc.
O código tem dois formatos principais:
EAN-13
13 dígitos. Identifica produtos individuais — uma caixa de leite, um frasco de shampoo. É o código que vai na prateleira do mercado.
EAN-14 / ITF-14
14 dígitos. Identifica embalagens coletivas — uma caixa com 12 latas, um pallet. Usado na logística, não no varejo.
Por que existe um dígito verificador?
Imagine que o operador de estoque digita um código manualmente e erra um número. Sem verificação, o sistema aceitaria qualquer sequência de dígitos como válida — e registraria o produto errado.
O dígito verificador resolve isso: é um número calculado matematicamente a partir de todos os outros dígitos do código. Quando o leitor escaneia ou o operador digita, o sistema refaz o cálculo. Se o resultado não bater com o último dígito do código, ele sabe que algo está errado e rejeita a entrada.
💡 O verificador não carrega nenhuma informação de produto — ele só existe para detectar erros. Um único dígito trocado já é suficiente para o cálculo dar diferente.
Como o verificador do EAN-13 é calculado?
O EAN-13 tem 12 dígitos de informação + 1 dígito verificador. O cálculo tem três etapas simples:
1
Multiplique cada dígito por um peso alternado
O primeiro dígito é multiplicado por 1, o segundo por 3, o terceiro por 1, e assim por diante, alternando 1 e 3 até o 12º dígito.
Por que pesos 1 e 3?
Usar pesos diferentes faz com que a posição de cada dígito importe. Se todos os pesos fossem iguais, inverter dois dígitos (ex: trocar o 4 pelo 7 de lugar) resultaria na mesma soma — e o erro passaria despercebido. Com pesos alternados, qualquer troca muda o total.
2
Some todos os resultados e pegue o último algarismo
Some todas as multiplicações. Depois, calcule o resto da divisão por 10 — isso é o mesmo que pegar apenas o último algarismo da soma.
Por que dividir por 10?
O verificador é um dígito único (0 a 9). Dividir por 10 e pegar o resto garante que o resultado sempre cabe em um dígito. É como perguntar: "a soma termina em que número?"
3
Subtraia de 10
O verificador é 10 menos o resto. Se o resto for 0, o verificador também é 0 (não 10).
Por que subtrair de 10?
A ideia é que a soma de todos os 13 dígitos (com seus pesos) deve ser divisível por 10. Subtraindo o resto de 10, você encontra exatamente o número que falta para "completar" a soma e torná-la divisível. É uma propriedade matemática chamada checksum módulo 10.
Exemplo passo a passo com 789123456789
| Posição | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| Dígito | 7 | 8 | 9 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| Peso | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 |
| Resultado | 7 | 24 | 9 | 3 | 2 | 9 | 4 | 15 | 6 | 21 | 8 | 27 |
1Soma: 7+24+9+3+2+9+4+15+6+21+8+27 = 135
2Último algarismo de 135 = 5 (135 ÷ 10 dá resto 5)
3Verificador = 10 − 5 = 5 → código completo: 7891234567895
Se o último algarismo da soma fosse 0, o verificador seria 0 (não 10 — afinal precisa ser um único dígito).
O que é o EAN-14 e como ele se relaciona com o EAN-13?
O EAN-14 não é um código completamente diferente — ele é construído em cima do EAN-13. Para criar um EAN-14, você pega o EAN-13 de um produto, remove o verificador original, e adiciona um novo dígito na frente chamado dígito variável.
1 dígito
Variável
(nível de embalagem)
+
12 dígitos
Base do EAN-13
(sem o verificador)
+
1 dígito
Novo verificador
(recalculado)
O dígito variável indica o tipo de embalagem:
0 = unidade ·
1–8 = diferentes níveis de caixa ·
9 = uso interno / pallet
Por exemplo: se o EAN-13 de uma lata é 7891234567895, a caixa com 12 latas pode ter o EAN-14 17891234567892 — o 1 na frente indica "caixa nível 1", os 12 dígitos do meio são os mesmos, e o 2 no final é o novo verificador recalculado para esse conjunto de 14 dígitos.
Como o verificador do EAN-14 é calculado?
O processo é idêntico ao EAN-13, com uma diferença: os pesos começam em 3 em vez de 1. Ou seja: ×3, ×1, ×3, ×1… (invertido).
Por que os pesos são invertidos no EAN-14?
O EAN-14 tem 13 dígitos de dados (ao invés de 12). Para que a lógica de paridade funcione corretamente com 13 posições — e ainda resulte em um único dígito verificador compatível com o padrão GS1 —, o padrão de pesos começa em 3. O efeito matemático é o mesmo: detectar erros de transposição e de digitação.
Exemplo: dígito variável 1 + base 789123456789 (do EAN-13 acima)
| Posição | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| Dígito | 1 | 7 | 8 | 9 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| Peso | ×3 | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 | ×1 | ×3 |
| Resultado | 3 | 7 | 24 | 9 | 3 | 2 | 9 | 4 | 15 | 6 | 21 | 8 | 27 |
1Soma: 3+7+24+9+3+2+9+4+15+6+21+8+27 = 138
2Último algarismo de 138 = 8
3Verificador = 10 − 8 = 2 → EAN-14: 17891234567892
Como os números do EAN-13 são organizados no Brasil?
O EAN-13 não é uma sequência aleatória de números — cada grupo de dígitos tem um significado específico definido pelo padrão GS1. No Brasil, o órgão responsável é o GS1 Brasil (antigo EAN Brasil), que atribui os prefixos às empresas cadastradas.
Prefixo GS1 Brasil — 789 ou 790
Os três primeiros dígitos identificam o país onde a empresa está registrada. O Brasil tem dois prefixos: 789 e 790. Atenção: esse prefixo indica onde a empresa foi cadastrada, não onde o produto foi fabricado. Um produto fabricado no Brasil por uma empresa registrada em outro país pode ter outro prefixo.
Código da empresa — 4 a 7 dígitos
Atribuído pelo GS1 Brasil no momento do cadastro. O tamanho varia: empresas maiores recebem códigos menores (sobra mais espaço para produtos), empresas menores recebem códigos maiores. A soma do prefixo + código da empresa é sempre 9 ou 10 dígitos, deixando o restante para os produtos.
789 1234 → prefixo 3 + empresa 4 dígitos = 5 dígitos para produto
789 1234567 → prefixo 3 + empresa 7 dígitos = 2 dígitos para produto
Código do produto — 2 a 5 dígitos
Definido pela própria empresa, de forma livre. Pode representar variações como tamanho, sabor, cor — qualquer critério interno. A empresa é responsável por não repetir o mesmo código para produtos diferentes e por não reutilizar códigos de produtos descontinuados (durante o período de garantia exigido pelo GS1).
Dígito verificador — sempre 1 dígito
Calculado automaticamente a partir dos 12 dígitos anteriores. Não é escolhido pela empresa — é uma consequência matemática dos outros dígitos.
No EAN-14: o dígito variável vai na frente, os 12 dígitos de base do EAN-13 vêm no meio (sem o verificador original), e um novo verificador é calculado para o conjunto de 14 dígitos. A estrutura interna (prefixo + empresa + produto) é preservada nos dígitos do meio.
Por que o visual das barras é diferente?
Cada padrão de barras foi projetado para o ambiente onde seria usado.
EAN-13 — varejo
As barras usam três grupos de padrões (L, G, R). A combinação depende do primeiro dígito do código, criando um sistema de paridade interno. Possui barras "guarda" mais altas nas laterais e no centro para o leitor se orientar.
ITF-14 — logística
Usa o padrão Interleaved 2 of 5: os dígitos são codificados em pares, onde cada par vira uma sequência de barras largas e estreitas intercaladas. É mais robusto para leitura em superfícies onduladas (como papelão) ou a distância.