Menu

Códigos de Barras com ZPL

Guia completo de 10 tipos de códigos de barras para impressoras Zebra com exemplos práticos e configuração para o mercado brasileiro

Experimente nossas ferramentas ZPL gratuitas agora

Gratuito, sem cadastro — Resultados instantâneos

Códigos de barras em ZPL

ZPL suporta mais de 30 tipos de códigos de barras entre 1D (lineares) e 2D (bidimensionais). Cada tipo tem seu próprio comando e parâmetros específicos. O comando ^BY é fundamental: deve ser colocado ANTES do código de barras para definir a largura do módulo (espessura das barras), a proporção largo/estreito e a altura padrão. Este guia cobre os 10 tipos mais utilizados em logística, varejo, manufatura e farmacêutica no Brasil, com exemplos prontos para copiar e colar e compatibilidade com impressoras Elgin, Xprinter e fluxos do Mercado Livre, Shopee e Correios.

Tipos de códigos de barras

Code 128

^BC

O código de barras mais usado em logística e envios no mundo inteiro. Codifica os 128 caracteres ASCII (números, letras maiúsculas/minúsculas, símbolos). Possui 3 subtipos automáticos: A (maiúsculas + controle), B (maiúsculas + minúsculas) e C (somente numérico, mais compacto). A impressora seleciona o subtipo ideal automaticamente.

Ejemplo de código:

^XA
^FO50,50^BY2
^BCN,100,Y,N,N
^FD123ABC456^FS
^XZ

Casos de uso:

  • Etiquetas de envio (Mercado Livre, Shopee, Correios)
  • Números de série e lotes
  • Identificação de produtos no armazém
  • Logística e transporte de encomendas

Código QR

^BQ

Código 2D que armazena até 4.296 caracteres alfanuméricos ou 7.089 dígitos. Suporta correção de erros (níveis L, M, Q, H) que permite ler o código mesmo que esteja parcialmente danificado. O prefixo de dados define o modo: QA (automático), QM (manual). Requer prefixo FDQA, ou FDMM,A para dados com caracteres especiais.

Ejemplo de código:

^XA
^FO50,50
^BQN,2,5
^FDQA,https://zplpdf.com^FS
^XZ

Casos de uso:

  • URLs e links web em etiquetas
  • Informações ampliadas do produto
  • Tickets, ingressos e cartões de embarque
  • Marketing e rastreamento de campanhas

EAN-13

^BE

Padrão mundial para produtos de consumo no varejo. Usado no Brasil, Europa, Ásia e América Latina. Requer exatamente 12 dígitos de dados (o 13° dígito de verificação é calculado automaticamente). O primeiro dígito identifica o país de origem (789 = Brasil). É o código que aparece em todo produto de supermercado.

Ejemplo de código:

^XA
^FO50,50^BY2
^BEN,100,Y,N
^FD789123456789^FS
^XZ

Casos de uso:

  • Produtos de supermercado e varejo
  • Inventário com ponto de venda (PDV)
  • Etiquetas de preço em lojas
  • Catalogação de produtos no Brasil

UPC-A

^BU

Padrão principal para produtos de consumo nos Estados Unidos e Canadá. Requer exatamente 11 dígitos de dados (o 12° dígito de verificação é calculado automaticamente). É o equivalente norte-americano do EAN-13 e é necessário para vendedores brasileiros que exportam para o mercado americano.

Ejemplo de código:

^XA
^FO50,50^BY2
^BUN,100,Y,N
^FD12345678901^FS
^XZ

Casos de uso:

  • Produtos para mercado americano e canadense
  • Ponto de venda norte-americano
  • Inventário retail para exportação
  • Etiquetas de prateleira nos EUA

Code 39

^B3

Um dos códigos mais antigos e difundidos na indústria. Codifica apenas letras maiúsculas (A-Z), números (0-9) e 7 símbolos especiais (-, ., espaço, $, /, +, %). É auto-verificável (não exige checksum obrigatório). Menor densidade que Code 128, mas compatível com praticamente todos os scanners industriais.

Ejemplo de código:

^XA
^FO50,50^BY2
^B3N,N,100,Y,N
^FDABC-123^FS
^XZ

Casos de uso:

  • Indústria automotiva (padrão AIAG)
  • Defesa e governo (MIL-STD-1189)
  • Setor de saúde e laboratórios
  • Controle de inventário industrial

DataMatrix

^BX

Código 2D extremamente compacto que pode armazenar até 2.335 caracteres alfanuméricos em um espaço muito reduzido. Possui correção de erros Reed-Solomon integrada (até 30% de dano tolerável). O parâmetro de qualidade (0-200) controla o nível de redundância. Ideal para marcação direta de peças (DPM).

Ejemplo de código:

^XA
^FO50,50
^BXN,5,200
^FDSN:ABC123456^FS
^XZ

Casos de uso:

  • Componentes eletrônicos e PCBs
  • Farmacêutica (padrão GS1 Anvisa)
  • Marcação direta de peças metálicas
  • Dispositivos médicos e rastreabilidade

PDF417

^B7

Código 2D empilhado de alta capacidade que armazena até 1.850 caracteres alfanuméricos ou 2.710 dígitos. Suporta 9 níveis de segurança (correção de erros). Pode codificar texto, números e dados binários. É o padrão legal para documentos de identidade em muitos países, incluindo a CNH brasileira.

Ejemplo de código:

^XA
^FO50,50
^B7N,5,2,3,10,N
^FDDados extensos aqui^FS
^XZ

Casos de uso:

  • CNH e documentos de identidade
  • Cartões de embarque e passagens aéreas
  • Documentos governamentais
  • Formulários com dados extensos

Aztec

^BO

Código 2D compacto que NÃO exige zona de silêncio (quiet zone) ao redor, o que o torna ideal para espaços muito reduzidos. Armazena até 3.832 dígitos ou 3.067 caracteres. Suporta correção de erros configurável. A magnificação controla o tamanho do símbolo.

Ejemplo de código:

^XA
^FO50,50
^BON,5,N
^FDDados Aztec compactos^FS
^XZ

Casos de uso:

  • Bilhetes de transporte público e metrô
  • Etiquetas em espaços muito reduzidos
  • Aplicações sem espaço para quiet zone
  • Documentos de viagem eletrônicos

GS1-128 (EAN-128)

^BC com FNC1

Variante do Code 128 que usa identificadores de aplicação (AI) do padrão GS1 para codificar informações estruturadas como datas de validade, lotes, peso e números de série. É ativado usando o caractere FNC1 (>8) no início dos dados. É obrigatório em cadeias de suprimento que seguem o padrão GS1 Brasil.

Ejemplo de código:

^XA
^FO50,50^BY2
^BCN,100,Y,N,N
^FD>801034531200000111719112510ABC123^FS
^XZ

Casos de uso:

  • Cadeias de suprimento com padrão GS1 Brasil
  • Rastreabilidade de produtos alimentícios
  • Indústria farmacêutica (data + lote + série)
  • Logística com informação estruturada

Interleaved 2 of 5

^B2

Código 1D que codifica apenas dígitos numéricos em pares (sempre quantidade par de dígitos). Muito compacto para dados numéricos puros. Cada par de dígitos é codificado intercalando barras e espaços, o que reduz o espaço necessário. Se tiver um número ímpar de dígitos, adicione um 0 no início.

Ejemplo de código:

^XA
^FO50,50^BY2
^B2N,100,Y,N
^FD1234567890^FS
^XZ

Casos de uso:

  • Indústria de distribuição e armazéns
  • Etiquetas de caixas e paletes (padrão ITF-14)
  • Setor financeiro e bancário
  • Códigos de identificação de contêineres

Dicas para códigos de barras em ZPL

  • Sempre coloque ^BY ANTES do comando do código de barras para definir a largura do módulo, proporção e altura
  • Use ^BY2 como configuração padrão — ^BY1 pode ser difícil de escanear, ^BY3 ocupa mais espaço
  • Deixe zona de silêncio suficiente (quiet zone): mínimo 10 vezes a largura do módulo em cada lado do código 1D
  • Para QR codes, use magnificação 5 como ponto de partida e ajuste conforme o tamanho da etiqueta
  • Sempre ative a linha de interpretação humana (parâmetro Y) para que o texto fique visível abaixo do código
  • Verifique cada código com um scanner real antes da produção — o visualizador ajuda, mas o scanner é o teste definitivo
  • Para envios e logística (Mercado Livre, Shopee, Correios), Code 128 (^BC) é o padrão universal
  • Os códigos 2D (QR, DataMatrix) são ideais quando você precisa armazenar mais de 20 caracteres de dados
  • Em etiquetas pequenas, prefira DataMatrix ou Aztec ao QR — são mais compactos para a mesma quantidade de dados
  • Se o código não escanear, primeiro verifique o ^BY (largura do módulo), depois o escurecimento (~SD) e a velocidade (^PR)

Perguntas frequentes sobre códigos de barras ZPL

Qual código de barras devo usar para etiquetas de envio?

Code 128 (^BC) é o padrão mundial para logística e encomendas. É o que usam Mercado Livre, Shopee, Correios, Amazon e transportadoras em suas etiquetas. Use ^BY2 para a largura do módulo e ative a interpretação humana com Y para que o número seja legível abaixo das barras.

Qual a diferença entre Code 128 e GS1-128?

GS1-128 é uma variante do Code 128 que usa identificadores de aplicação (AI) do padrão GS1. Enquanto o Code 128 codifica qualquer texto, o GS1-128 estrutura os dados com prefixos como (01) para GTIN, (17) para data de validade, (10) para lote. É ativado com o prefixo >8 nos dados do ^BC e é obrigatório em cadeias de suprimento GS1 Brasil.

Como controlo o tamanho de um código de barras em ZPL?

Use o comando ^BY antes do código de barras. O primeiro parâmetro (1-10) controla a largura do módulo (espessura das barras), o segundo (2.0-3.0) a proporção largo/estreito, e o terceiro a altura. Exemplo: ^BY2,3,100 cria barras de 2 pontos de largura, proporção 3:1 e 100 pontos de altura.

Por que meu código de barras não está sendo lido pelo scanner?

As causas mais comuns são: 1) ^BY muito pequeno (tente ^BY2 ou ^BY3), 2) escurecimento da impressão incorreto (ajuste com ~SD, recomendado 15), 3) velocidade de impressão alta (reduza com ^PR4), 4) zona de silêncio insuficiente ao redor do código, 5) dados incorretos para o tipo de código (ex: EAN-13 precisa de exatamente 12 dígitos).

Quando usar um código 2D em vez de um 1D?

Use códigos 2D (QR, DataMatrix, PDF417) quando precisar armazenar mais de 20 caracteres, quando o espaço da etiqueta for limitado, ou quando precisar de correção de erros (tolerância a danos). Para dados curtos como SKUs ou números de série com menos de 20 caracteres, os códigos 1D (Code 128) são mais eficientes e universalmente compatíveis.

Os códigos de barras ZPL funcionam em impressoras que não são Zebra?

Os comandos ZPL de códigos de barras são específicos da Zebra. Para imprimir em outras marcas como Elgin i9, Xprinter, Knup ou Brother, converta o ZPL para PDF com o ZPLPDF. Os códigos de barras são renderizados em alta resolução no PDF e são escaneáveis em qualquer impressora.

Como adicionar um QR code com URL em ZPL?

Use ^BQ com o prefixo QA para detecção automática: ^FO50,50 ^BQN,2,5 ^FDQA,https://suaurl.com^FS. O 2 indica o modelo QR (use sempre 2) e o 5 é a magnificação (ajuste de 1 a 10 conforme o tamanho desejado). Para dados mistos, use FDMM,A seguido do conteúdo.

Teste seus códigos de barras

Visualize e verifique seus códigos de barras ZPL com nossas ferramentas gratuitas antes de imprimir em Elgin, Xprinter ou qualquer térmica.