1001Ferramentas
🏷️ Validadores

Validador EAN-8

Valida códigos de barras EAN-8 calculando o dígito verificador pelo padrão GS1.

Dígito verificador do EAN-8, calculado na mão

O EAN-8 / GTIN-8 é o código de barras GS1 compacto de 8 dígitos usado onde um EAN-13 completo não cabe fisicamente — pequenos cosméticos, balas, itens de porção única. O oitavo dígito é um dígito verificador mod-10 que permite ao leitor rejeitar uma leitura errada na hora. Esta ferramenta o confere; aqui está exatamente como esse dígito é derivado, usando o exemplo 73513537.

Passo a passo de 7351353 ?

  • 1. Pesos: sobre os sete primeiros dígitos aplique 3,1,3,1,3,1,3 (posições ímpares da esquerda pesam 3).
  • 2. Multiplique e some: 7×3 + 3×1 + 5×3 + 1×1 + 3×3 + 5×1 + 3×3 = 21+3+15+1+9+5+9 = 63.
  • 3. Próximo múltiplo de 10: 63 → 70.
  • 4. Dígito verificador: 70 − 63 = 7 → o código completo é 73513537. ✓

De forma equivalente, o dígito é (10 − (soma mod 10)) mod 10 — a mesma fórmula que a GS1 usa para EAN-13, UPC-A e ITF-14; só muda o comprimento do padrão de pesos.

Por que ter um dígito verificador

  • Erros de um dígito: qualquer dígito errado muda a soma ponderada, então o checksum falha — pego no leitor.
  • Maioria das transposições: trocar dois dígitos adjacentes geralmente também quebra a ponderação 3/1 (embora alguns pares de transposição passem, uma limitação conhecida do mod-10).
  • Impressão autoverificável: os dígitos legíveis embaixo das barras podem ser reconferidos sem banco de dados.

Pegadinhas comuns

  • Direção da ordem dos pesos: na especificação GS1 os pesos correm da direita para a esquerda, mas para um código de 8 dígitos isso cai em 3,1,3,1,3,1,3 a partir da esquerda — erre o alinhamento e todo resultado sai errado.
  • Não é UPC-E: o UPC-E é um UPC-A comprimido de 6 dígitos, coisa diferente do número alocado de forma independente do EAN-8.
  • Zeros à esquerda: mantenha o valor como string de 8 caracteres; armazenar como inteiro descarta zeros e corrompe o checksum.
  • Dígito válido ≠ produto real: um checksum correto não significa que a GS1 licenciou aquele GTIN.

FAQ

O algoritmo do EAN-8 é igual ao do EAN-13? Sim — mod-10 idêntico com pesos alternados 3/1; só muda a quantidade de dígitos ponderados.

E se a soma já for múltiplo de 10? Então o dígito verificador é 0 (ex.: soma 60 → 60 − 60 = 0).

O dígito pode ser X? Não — dígitos de EAN/UPC são sempre 0–9. Só ISBN-10 e ISSN (mod-11) podem ser X.

Ferramentas Relacionadas