Menu

Códigos de Barras con ZPL

Guía completa de 10 tipos de códigos de barras para impresoras Zebra con ejemplos prácticos y configuración

Prueba nuestras herramientas ZPL gratuitas ahora

Gratis, sin registro — Resultados instantáneos

Códigos de barras en ZPL

ZPL soporta más de 30 tipos de códigos de barras entre 1D (lineales) y 2D (bidimensionales). Cada tipo tiene su propio comando y parámetros específicos. El comando ^BY es fundamental: se coloca ANTES del código de barras para definir el ancho del módulo (grosor de las barras), el ratio ancho/angosto y la altura por defecto. Esta guía cubre los 10 tipos más utilizados en logística, retail, manufactura y farmacéutica, con ejemplos listos para copiar y pegar.

Tipos de códigos de barras

Code 128

^BC

El código de barras más usado en logística y envíos a nivel mundial. Codifica los 128 caracteres ASCII (números, letras mayúsculas/minúsculas, símbolos). Tiene 3 subtipos automáticos: A (mayúsculas + control), B (mayúsculas + minúsculas) y C (solo numérico, más compacto). La impresora selecciona el subtipo óptimo automáticamente.

Ejemplo de código:

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

Casos de uso:

  • Etiquetas de envío (Mercado Libre, Amazon, FedEx)
  • Números de serie y lotes
  • Identificación de productos en almacén
  • Logística y transporte de paquetería

Código QR

^BQ

Código 2D que almacena hasta 4,296 caracteres alfanuméricos o 7,089 dígitos. Soporta corrección de errores (niveles L, M, Q, H) que permite leer el código incluso si está parcialmente dañado. El prefijo de datos define el modo: QA (automático), QM (manual). Requiere prefijo FDQA, o FDMM,A para datos con caracteres especiales.

Ejemplo de código:

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

Casos de uso:

  • URLs y enlaces web en etiquetas
  • Información de producto ampliada
  • Tickets, entradas y pases de abordar
  • Marketing y seguimiento de campañas

EAN-13

^BE

Estándar mundial para productos de consumo en retail. Usado en Europa, Asia y Latinoamérica. Requiere exactamente 12 dígitos de datos (el 13° dígito de checksum se calcula automáticamente). El primer dígito identifica el país de origen (750 = México, 770 = Colombia, 779 = Argentina).

Ejemplo de código:

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

Casos de uso:

  • Productos de supermercado y retail
  • Inventario con punto de venta (POS)
  • Etiquetas de precio en tiendas
  • Catalogación de productos

UPC-A

^BU

Estándar principal para productos de consumo en Estados Unidos y Canadá. Requiere exactamente 11 dígitos de datos (el 12° dígito de checksum se calcula automáticamente). Es el equivalente norteamericano del EAN-13.

Ejemplo de código:

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

Casos de uso:

  • Productos retail en EE.UU. y Canadá
  • Punto de venta norteamericano
  • Inventario retail
  • Etiquetas de estante

Code 39

^B3

Uno de los códigos más antiguos y extendidos en la industria. Codifica solo letras mayúsculas (A-Z), números (0-9) y 7 símbolos especiales (-, ., espacio, $, /, +, %). Es auto-verificable (no requiere checksum obligatorio). Menor densidad que Code 128 pero compatible con prácticamente todos los escáneres.

Ejemplo de código:

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

Casos de uso:

  • Industria automotriz (estándar AIAG)
  • Defensa y gobierno (MIL-STD-1189)
  • Sector salud y laboratorios
  • Control de inventario industrial

DataMatrix

^BX

Código 2D extremadamente compacto que puede almacenar hasta 2,335 caracteres alfanuméricos en un espacio muy reducido. Tiene corrección de errores Reed-Solomon integrada (hasta 30% de daño tolerable). El parámetro de calidad (0-200) controla el nivel de redundancia. Ideal para marcado directo de piezas (DPM).

Ejemplo de código:

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

Casos de uso:

  • Componentes electrónicos y PCBs
  • Farmacéutica (estándar GS1)
  • Marcado directo de piezas metálicas
  • Dispositivos médicos y trazabilidad

PDF417

^B7

Código 2D apilado de alta capacidad que almacena hasta 1,850 caracteres alfanuméricos o 2,710 dígitos. Soporta 9 niveles de seguridad (corrección de errores). Puede codificar texto, números y datos binarios. Es el estándar legal para documentos de identidad en muchos países.

Ejemplo de código:

^XA
^FO50,50
^B7N,5,2,3,10,N
^FDDatos extensos aquí^FS
^XZ

Casos de uso:

  • Licencias de conducir y credenciales
  • Boletos aéreos y pases de abordar
  • Documentos de identidad gubernamentales
  • Formularios con datos extensos

Aztec

^BO

Código 2D compacto que NO requiere zona de silencio (quiet zone) alrededor, lo que lo hace ideal para espacios muy reducidos. Almacena hasta 3,832 dígitos o 3,067 caracteres. Soporta corrección de errores configurable. La magnificación controla el tamaño del símbolo.

Ejemplo de código:

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

Casos de uso:

  • Boletos de transporte público y tren
  • Etiquetas en espacios muy reducidos
  • Aplicaciones donde no hay espacio para quiet zone
  • Documentos de viaje electrónicos

GS1-128 (EAN-128)

^BC con FNC1

Variante del Code 128 que usa identificadores de aplicación (AI) del estándar GS1 para codificar información estructurada como fechas de vencimiento, lotes, peso y números de serie. Se activa usando el carácter FNC1 (>8) al inicio de los datos. Es obligatorio en cadenas de suministro que siguen el estándar GS1.

Ejemplo de código:

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

Casos de uso:

  • Cadenas de suministro con estándar GS1
  • Trazabilidad de productos alimenticios
  • Industria farmacéutica (fecha + lote + serie)
  • Logística con información estructurada

Interleaved 2 of 5

^B2

Código 1D que codifica solo dígitos numéricos en pares (siempre cantidad par de dígitos). Muy compacto para datos numéricos puros. Cada par de dígitos se codifica intercalando barras y espacios, lo que reduce el espacio necesario. Si tienes un número impar de dígitos, agrega un 0 al inicio.

Ejemplo de código:

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

Casos de uso:

  • Industria de distribución y almacenes
  • Etiquetas de cajas y pallets (estándar ITF-14)
  • Sector financiero y bancario
  • Códigos de identificación de contenedores

Consejos para códigos de barras en ZPL

  • Siempre coloca ^BY ANTES del comando de código de barras para definir el ancho del módulo, ratio y altura
  • Usa ^BY2 como configuración estándar — ^BY1 puede ser difícil de escanear, ^BY3 ocupa más espacio
  • Deja suficiente zona de silencio (quiet zone): mínimo 10 veces el ancho del módulo a cada lado del código 1D
  • Para códigos QR, usa magnificación 5 como punto de partida y ajusta según el tamaño de la etiqueta
  • Siempre activa la línea de interpretación humana (parámetro Y) para que el texto sea visible debajo del código
  • Verifica cada código con un escáner real antes de producción — el visualizador ayuda pero el escáner es la prueba definitiva
  • Para envíos y logística, Code 128 (^BC) es el estándar universal — no uses Code 39 a menos que sea requerido
  • Los códigos 2D (QR, DataMatrix) son ideales cuando necesitas almacenar más de 20 caracteres de datos
  • En etiquetas pequeñas, prefiere DataMatrix o Aztec sobre QR — son más compactos para la misma cantidad de datos
  • Si el código no escanea, primero revisa el ^BY (ancho de módulo), luego la oscuridad (~SD) y la velocidad (^PR)

Preguntas frecuentes sobre códigos de barras ZPL

¿Qué código de barras debo usar para etiquetas de envío?

Code 128 (^BC) es el estándar mundial para logística y paquetería. Es el que usan Mercado Libre, Amazon, FedEx, DHL y UPS en sus etiquetas. Usa ^BY2 para el ancho de módulo y activa la interpretación humana con Y para que el número sea legible bajo las barras.

¿Cuál es la diferencia entre Code 128 y GS1-128?

GS1-128 es una variante del Code 128 que usa identificadores de aplicación (AI) del estándar GS1. Mientras Code 128 codifica cualquier texto, GS1-128 estructura los datos con prefijos como (01) para GTIN, (17) para fecha de vencimiento, (10) para lote. Se activa con el prefijo >8 en los datos del ^BC.

¿Cómo controlo el tamaño de un código de barras en ZPL?

Usa el comando ^BY antes del código de barras. El primer parámetro (1-10) controla el ancho del módulo (grosor de las barras), el segundo (2.0-3.0) el ratio ancho/angosto, y el tercero la altura. Ejemplo: ^BY2,3,100 crea barras de 2 puntos de ancho, ratio 3:1 y 100 puntos de alto.

¿Por qué mi código de barras no se escanea correctamente?

Las causas más comunes son: 1) ^BY demasiado pequeño (prueba ^BY2 o ^BY3), 2) oscuridad de impresión incorrecta (ajusta con ~SD, recomendado 15), 3) velocidad de impresión alta (reduce con ^PR4), 4) zona de silencio insuficiente alrededor del código, 5) datos incorrectos para el tipo de código (ej: EAN-13 necesita exactamente 12 dígitos).

¿Cuándo usar un código 2D en vez de uno 1D?

Usa códigos 2D (QR, DataMatrix, PDF417) cuando necesites almacenar más de 20 caracteres, cuando el espacio de la etiqueta sea limitado, o cuando necesites corrección de errores (tolerancia a daño). Para datos cortos como SKUs o números de serie de menos de 20 caracteres, los códigos 1D (Code 128) son más eficientes y universalmente compatibles.

¿Los códigos de barras ZPL funcionan en impresoras no Zebra?

Los comandos ZPL de códigos de barras son específicos de Zebra. Para imprimir en otras marcas (Elgin, Xprinter, Brother), convierte el código ZPL a PDF con ZPLPDF. Los códigos de barras se renderizan con alta resolución en el PDF y son escaneables desde cualquier impresora.

¿Cómo agrego un código QR con una URL en ZPL?

Usa ^BQ con el prefijo QA para detección automática: ^FO50,50 ^BQN,2,5 ^FDQA,https://tuurl.com^FS. El 2 indica modelo QR (usa siempre 2), y el 5 es la magnificación (ajusta de 1 a 10 según el tamaño deseado). Para datos mixtos usa FDMM,A seguido del contenido.

Prueba tus códigos de barras

Visualiza y verifica tus códigos de barras ZPL con nuestras herramientas gratuitas antes de imprimir.