Código de barras 128 e ITF-14: guia para logística e estoque
Quando usar o código de barras 128 no lugar do EAN-13, as três variantes (A, B, C) e por que o ITF-14 é o padrão para caixas de transporte.
Atualizado em
Code 128 e ITF-14 são os formatos de código de barras mais usados em logística e controle de estoque no Brasil; mas pouca gente sabe quando escolher um ou outro, nem o que são as variantes A, B e C do Code 128. Este guia explica tudo com exemplos práticos para lojistas e operações de estoque.
Código de barras 128 e ITF-14 são os formatos padrão em logística e estoque no Brasil: aparecem em etiquetas de rastreio, prateleiras de armazém e caixas de transporte — tudo onde o EAN-13 não serve. Este guia explica o que cada um faz, quando escolher um ou outro, e como gerar gratuitamente.
Resposta rápida: o código de barras 128 (Code 128) é um formato linear de alta densidade que codifica todos os 128 caracteres ASCII — letras maiúsculas e minúsculas, números e símbolos — em comprimento variável, com dígito verificador obrigatório. É o padrão usado em etiquetas de envio, rastreio de volumes, controle de estoque interno e na chave de acesso do DANFE (NF-e). O ITF-14, abordado também neste guia, é a variante para caixas de transporte e pallets da GS1.
!Code 128 e ITF-14: formatos de código de barras para logística, estoque e NF-e
O que é o código de barras 128 (Code 128)?
O Code 128 é um formato de código de barras linear de alta densidade introduzido em 1981. Diferente do EAN-13 (que só aceita números), o Code 128 pode codificar todos os 128 caracteres ASCII, letras maiúsculas e minúsculas, números e símbolos.
Isso o torna extremamente versátil para aplicações onde o EAN-13 não serve: etiquetas de envio com letras, referências internas alfanuméricas, números de pedido, lotes e datas.
As três variantes do Code 128
O Code 128 tem três modos de codificação, chamados de subconjuntos A, B e C:
| Variante | Caracteres aceitos | Uso típico |
|---|---|---|
| Code 128A | Números, maiúsculas, caracteres de controle (NUL, SOH…) | Sistemas legados que usam caracteres de controle ASCII |
| Code 128B | Números, maiúsculas e minúsculas, símbolos | Uso geral — o mais comum |
| Code 128C | Apenas pares de dígitos (00–99) | Números longos; ocupa metade do espaço do 128B |
Na prática, leitores e geradores modernos selecionam automaticamente o subconjunto mais eficiente para o conteúdo. Quando o código é puramente numérico e longo, o gerador usa Code 128C, que é duas vezes mais denso. Para conteúdo misto (letras + números), usa Code 128B.
O gerador de código de barras do GeraCode seleciona a variante ótima automaticamente ao gerar Code 128.
Quando usar o código de barras 128
Code 128 é a escolha certa quando:
- O código tem letras, referências internas como
PROD-CAM-AZL-Mnão cabem em EAN. - Você quer controle de estoque interno, sem precisar registrar na GS1.
- O código tem comprimento variável, Code 128 não impõe limite fixo de dígitos.
- Precisa de alta densidade, em embalagens com espaço limitado, Code 128 ocupa menos que Code 39 para o mesmo conteúdo.
- Etiquetas de envio e rastreio, Correios, Jadlog e transportadoras privadas usam Code 128 (ou variante GS1-128) para números de rastreio.
Code 128 vs. Code 39: qual a diferença?
| Característica | Code 128 | Code 39 |
|---|---|---|
| Densidade | Alta (≈2× mais compacto) | Baixa |
| Caracteres | ASCII completo (128) | 43 caracteres (maiúsculas + alguns símbolos) |
| Dígito verificador | Obrigatório (calculado) | Opcional |
| Compatibilidade | Universal (leitores modernos) | Universal (incluindo leitores antigos dos anos 80) |
| Uso ideal | Logística, estoque, envio | Patrimônio, saúde, defesa (sistemas legados) |
Se você está começando do zero, prefira Code 128. Code 39 só faz sentido quando há leitores muito antigos que não suportam Code 128, o que é raro em instalações novas. Para saber mais sobre Code 39, veja o guia completo sobre Code 39.
O que é código de barras ITF e o ITF-14?
Código de barras ITF (Interleaved Two of Five, ou "dois de cinco intercalado") é uma família de formatos lineares onde pares de dígitos são codificados intercalando barras e espaços — ao contrário do Code 128, que codifica um caractere por vez. Essa intercalação torna o ITF mais compacto e resistente à impressão irregular, ideal para papelão ondulado.
Dentro da família ITF, o formato mais usado no Brasil é o ITF-14: a versão padronizada pela GS1 para identificar unidades logísticas — caixas de transporte, fardos, pallets e embalagens de despacho. Enquanto o EAN-13 identifica o produto individual, o código de barras ITF-14 identifica a caixa que contém um conjunto de produtos.
O ITF-14 tem exatamente 14 dígitos, dos quais os 13 últimos são o GTIN-13 do produto, precedido por um indicador de embalagem (0 a 8, que indica o nível da unidade logística).
Como determinar o indicador de embalagem do ITF-14 (0–8)
O primeiro dígito do GTIN-14 é o indicador de embalagem. Ele não tem um significado fixo e universal — cada empresa define internamente qual número representa qual nível de agrupamento. A convenção mais comum no mercado brasileiro:
| Indicador | Nível típico | Exemplo |
|---|---|---|
| 0 | Produto unitário com variação de peso | Frutas, carnes (quantidade variável) |
| 1 | Embalagem menor (inner pack) | Caixa com 6 unidades |
| 2–8 | Outros níveis de agrupamento | Fardo com 12, caixa-mestre com 24 |
| 9 | Unidade de medida variável | Produto vendido por kg em varejo |
Como montar o GTIN-14 na prática:
- Pegue o EAN-13 do produto (ex:
7891000315507). - Remova o dígito verificador:
789100031550(12 dígitos). - Coloque o indicador de embalagem no início (ex:
1):1789100031550. - Calcule o dígito verificador módulo 10 para os 13 dígitos: resultado
7. - GTIN-14 final: `17891000315507`.
O gerador de código de barras do GeraCode calcula o dígito verificador automaticamente; informe os 13 primeiros dígitos (indicador + EAN-13 sem o verificador) e ele completa o 14°. Para dúvidas sobre qual indicador usar para cada nível da sua hierarquia de embalagem, consulte a documentação específica do ITF-14 na GS1 Brasil (abre em nova aba).
Por que ITF-14 e não Code 128 para caixas?
O ITF-14 usa o algoritmo Interleaved 2 of 5, uma codificação que intercala barras e espaços de forma que é legível mesmo em papel ondulado com impressão de baixa qualidade. Isso é essencial para caixas de papelão ondulado, onde a superfície irregular degrada outras impressões.
| Característica | ITF-14 | Code 128 |
|---|---|---|
| Dígitos | Fixo (14) | Variável |
| Resistência a imperfeições | Alta | Média |
| Uso principal | Caixas de transporte GS1 | Etiquetas de produto e rastreio |
| Padrão GS1 | Sim (GTIN-14) | Sim (GS1-128, variante) |
| Leitura em superfície ondulada | Excelente | Boa |
O GS1-128 é uma versão do Code 128 com regras GS1 para incluir informações como lote, data de validade e número de série; muito usado em indústria alimentícia e farmacêutica. Diferente do ITF-14, o GS1-128 pode conter informações variáveis além do GTIN.
Tamanhos mínimos (padrão GS1)
Segundo as especificações técnicas da GS1 Brasil (abre em nova aba) para símbolos de código de barras:
| Formato | Largura mínima | Altura mínima | Observação |
|---|---|---|---|
| Code 128 | variável | mín. 15 mm | Largura cresce com o número de caracteres |
| ITF-14 | ~142 mm | ~32 mm | Tamanho nominal; mínimo de 25% = ~35 mm |
Para o ITF-14, o tamanho grande é intencional; a caixa é escaneada de longe por leitores omnidirecionais em esteiras de distribuição. Reduções abaixo de 50% do nominal aumentam muito o risco de falha de leitura em papelão ondulado.
Como gerar código de barras 128 e ITF-14 gratuitamente
Com o gerador de código de barras do GeraCode:
Para Code 128:
- Selecione o formato Code 128.
- Digite o código (letras, números ou combinação).
- Ajuste altura e largura conforme o espaço disponível na etiqueta.
- Baixe em SVG para impressão ou use o modo lote para gerar vários de uma vez.
Para ITF-14:
- Selecione o formato ITF-14.
- Digite o GTIN-14 de 14 dígitos (indicador de embalagem + GTIN-13 do produto).
- Use o tamanho nominal (~142 mm × 32 mm) sempre que possível; reduza no máximo a 50% para caixas com pouco espaço.
- Baixe em SVG, essencial para manter qualidade na impressão em papelão.
Aplicações práticas por setor
E-commerce com armazém próprio: Use Code 128 nas etiquetas de posição de prateleira (SKU + localização), nos volumes de despacho e nas notas de separação. Para caixas master de reposição de estoque, use ITF-14.
Indústria e manufatura: Code 128 para identificação de matérias-primas, lotes de produção e produtos acabados. ITF-14 para caixas de embarque. GS1-128 quando precisar registrar lote e validade no próprio código.
Correios e transportadoras: Os Correios usam Code 128 e Interleaved 2 of 5 (I2of5) para etiquetas de objetos postais, conforme o Manual de Pré-postagem dos Correios. Transportadoras privadas (Jadlog, Total Express, Azul Cargo) geralmente usam Code 128 para números de rastreio; consulte o manual de integração de cada transportadora para o formato exato.
Supermercados (caixas de reposição): ITF-14 na caixa identifica automaticamente o produto quando a caixa passa pelo leitor de recebimento, sem precisar abrir. O leitor do PDV vai ler o EAN-13 do produto individual.
Code 128 lê letras minúsculas?
Sim; mas depende da variante:
- Code 128B: aceita letras maiúsculas e minúsculas, números e símbolos. É a variante correta se o seu SKU ou referência tem letras minúsculas (ex:
prod-azul-m). - Code 128A: aceita maiúsculas e caracteres de controle, mas não lê minúsculas. Use apenas para sistemas legados.
- Code 128C: aceita somente dígitos numéricos (em pares). Mais denso, mas sem letras.
Geradores modernos como o GeraCode selecionam automaticamente Code 128B quando o conteúdo tem letras minúsculas; você não precisa escolher manualmente.
Na prática: se você escaneou um Code 128 e as letras minúsculas apareceram em maiúsculas ou como caracteres estranhos, o leitor está configurado para Code 128A. Reprograme o leitor para aceitar Code 128B, consulte o manual do fabricante (Honeywell, Zebra, Datalogic) e escaneie o código de programação correspondente.
Onde colocar o código de barras na caixa e no pallet
A posição do ITF-14 na caixa de transporte segue orientações GS1 para garantir leitura nas esteiras de distribuição:
Caixas de papelão:
- Posicionar na face frontal ou traseira (não na lateral com dobras)
- Mínimo de 32 mm do fundo da caixa (leitores de esteira ficam abaixo do nível das caixas)
- Mínimo de 19 mm da borda lateral
- Nunca sobre costuras, grampos ou fitas de reforço
- Se imprimir direto no papelão (flexografia): aumente o tamanho em 5–10% para compensar o espalhamento da tinta em superfícies porosas
Pallets:
- O ITF-14 (ou GS1-128) deve aparecer em pelo menos duas faces opostas do pallet
- Altura: entre 400 mm e 800 mm do chão do pallet
- O código deve ser legível pelo leitor de pedestal mesmo com parte do pallet obstruído por outra carga
Etiquetas Code 128 em prateleiras e localizações:
- Posicionar na borda frontal da prateleira ao nível dos olhos do operador (1,2 m do chão)
- Ou na lateral do módulo de prateleira, se o layout do armazém usa leitura lateral
- Use etiquetas com fundo branco e laminação; evita desbotamento em ambientes com luz UV intensa
GS1-128: a variante industrial do código de barras 128
Código EAN 128: o mesmo que GS1-128?
Sim. "EAN 128", "código EAN 128" e "código de barras EAN 128" são nomes antigos do GS1-128, usados até 2009 quando a GS1 unificou a nomenclatura global. Se você encontrar referências a "EAN 128" em sistemas legados, manuais de fornecedores, especificações de varejistas ou licitações públicas, estão falando exatamente do mesmo formato. O nome atual e correto é GS1-128.
O GS1-128 é uma aplicação específica do Code 128 com regras adicionais definidas pela GS1 para codificar múltiplos campos de dados em um único código. Enquanto o Code 128 simples codifica um valor, o GS1-128 usa Application Identifiers (AIs), prefixos numéricos entre parênteses que definem o significado de cada dado.
Exemplos de AIs mais usados:
| AI | Significado | Exemplo |
|---|---|---|
| (01) | GTIN do produto | (01)07891000315507 |
| (10) | Número do lote | (10)LOT2024A |
| (17) | Data de validade (AAMMDD) | (17)261231 |
| (21) | Número de série | (21)SN-00123 |
| (30) | Quantidade variável | (30)48 |
| (310n) | Peso líquido em kg | (3102)1500 = 15,00 kg |
Um único código GS1-128 pode conter: GTIN + lote + validade + peso; tudo que o recebimento de um fornecedor precisa registrar com um único scan.
Quando usar GS1-128
- Indústria alimentícia: obrigatório para rastreabilidade de lote e validade em grandes redes varejistas.
- Farmacêutica: a ANVISA exige rastreabilidade de medicamentos com GTIN + número de série + lote + validade.
- Logística avançada: quando a etiqueta de volume precisa conter dados além do número de rastreio.
Para uso simples (número de série ou referência), o Code 128 padrão é suficiente. O GS1-128 entra quando você precisa de múltiplos campos estruturados no mesmo código.
Code 128 em notas fiscais eletrônicas
A SEFAZ utiliza Code 128 na chave de acesso das NF-e impressas (DANFE). O código de 44 dígitos impresso no topo do DANFE é gerado em Code 128C (pares numéricos), que é mais compacto para conteúdo puramente numérico.
Se você integra seu sistema com emissão de NF-e e precisa gerar o código de barras da chave de acesso para impressão manual ou consulta, o formato correto é Code 128C com a chave de 44 dígitos sem espaços nem hífens.
Etiquetas de rastreio dos Correios e transportadoras
Os Correios utilizam Code 128 e Interleaved 2 of 5 (I2of5) para etiquetas de objetos postais:
- O número de rastreio dos Correios (ex:
AA123456789BR) é gerado em Code 128. - Transportadoras privadas (Jadlog, Total Express, Azul Cargo, Sequoia) geralmente usam Code 128 para números de rastreio; consulte o manual de integração de cada uma para o formato exato do campo.
- O formato
PDF417(2D) está sendo adotado por algumas transportadoras para incluir mais dados na etiqueta.
Se você integra com transportadoras via API, o código de rastreio fornecido pela API já vem pronto para gerar em Code 128.
Configurando leitores para Code 128 e ITF-14
A maioria dos leitores de código de barras modernos (USB, Bluetooth) lê Code 128 automaticamente; não precisa de configuração especial. Para ITF-14, verifique:
- Comprimento fixo de 14 dígitos: alguns leitores precisam ser configurados para aceitar ITF de 14 dígitos específicos (evita confusão com ITF de outros comprimentos).
- Check digit ITF: configure o leitor para validar o dígito verificador do ITF-14 automaticamente.
- Leitores de pedestal/omnidirecional para recebimento de caixas: precisam de configuração de varredura mais ampla para ler ITF-14 em superfícies onduladas.
Consulte o manual do fabricante do leitor (Honeywell, Zebra, Datalogic) para os comandos de programação; geralmente feitos escaneando códigos de configuração do próprio manual.
Custo de implementação
| Item | Custo aproximado |
|---|---|
| Geração dos códigos (GeraCode) | Grátis |
| Leitor de código de barras USB básico | R$ 80 a R$ 200 |
| Leitor wireless (Bluetooth) | R$ 200 a R$ 500 |
| Impressora de etiquetas térmica (Zebra, Bematech) | R$ 800 a R$ 3.000 |
| Software de gestão com integração de leitor | R$ 0 (planilha) a R$ 300+/mês (ERP) |
Para operações pequenas, um leitor USB de R$ 100 conectado ao computador da expedição e etiquetas impressas em laser comum já resolve a maioria dos casos de uso.
Próximos passos
- Para uma visão geral de todos os formatos e quando usar: código de barras para produtos: guia completo.
- Para imprimir as etiquetas: como imprimir etiquetas com código de barras.
- Gere Code 128 e ITF-14 gratuitamente: gerador de código de barras.
Esse guia foi útil?
Perguntas Frequentes
Qual formato de código de barras devo usar para meu produto?
Para produtos vendidos em supermercados e varejo brasileiro, use EAN-13. Para controle interno de estoque, Code 128 é mais flexível. Para exportar para os EUA, use UPC-A. Para caixas de transporte e logística, use ITF-14.
Quantos formatos de código de barras o GeraCode suporta?
O GeraCode suporta 12 formatos: EAN-13, EAN-8, Code 128, Code 39, Code 93, UPC-A, UPC-E, ITF-14, MSI Plessey, Codabar, Pharmacode e ISBN. Cobrimos os principais padrões usados no varejo, logística, indústria farmacêutica e editorial.
Posso imprimir etiquetas diretamente?
Sim. Após gerar os códigos (individual ou em lote), use os botões de impressão de etiquetas com layouts 2x5 ou 3x5 por página A4. Uma janela de impressão será aberta automaticamente.
Qual a diferença entre PNG, SVG e PDF?
PNG é uma imagem raster ideal para uso digital. SVG é vetorial, ideal para impressão profissional sem perda de qualidade. PDF é ideal para documentos e envio para gráficas.
Posso gerar códigos de barras em lote?
Sim. No modo "Em Lote", você pode digitar ou colar do Excel até dezenas de códigos (um por linha). Todos são gerados de uma vez e você pode baixar em ZIP (SVG) ou PDF.
O GeraCode calcula o dígito verificador do EAN-13?
Sim. Se você digitar 12 dígitos no formato EAN-13, o GeraCode calcula automaticamente o 13.º dígito (verificador) usando o algoritmo de módulo 10. O mesmo vale para EAN-8 com 7 dígitos.