Cómo Crear Etiquetas ZPL
Tutorial paso a paso con 10 ejemplos prácticos para crear etiquetas profesionales desde cero
Prueba nuestras herramientas ZPL gratuitas ahora
Gratis, sin registro — Resultados instantáneos
Introducción a ZPL
ZPL (Zebra Programming Language) es el lenguaje estándar para programar impresoras térmicas Zebra y es utilizado por marketplaces como Mercado Libre, Amazon y Shopee para generar etiquetas de envío. En este tutorial aprenderás a crear etiquetas ZPL desde cero en 10 pasos progresivos, desde la estructura básica hasta una etiqueta de envío completa. Cada paso incluye código que puedes copiar y probar directamente en el Visor ZPL de ZPLPDF. No necesitas una impresora Zebra: puedes convertir tu código ZPL a PDF e imprimir desde cualquier impresora.
1Paso 1: Estructura básica de una etiqueta ZPL
Toda etiqueta ZPL comienza con ^XA (inicio de formato) y termina con ^XZ (fin de formato). Entre estos comandos se definen todos los elementos. Cada elemento (texto, código de barras, gráfico) es un "campo" que se define con ^FO (posición), el contenido, y ^FS (fin de campo). Esta estructura es obligatoria — sin ^XA/^XZ la impresora ignorará el código.
^XA ^FO50,50 ^A0N,30,30 ^FDHola Mundo^FS ^XZ
2Paso 2: Configurar el tamaño de la etiqueta
Usa ^LL para definir el largo de la etiqueta y ^PW para el ancho de impresión, ambos en puntos (dots). A 203 DPI: 1 pulgada = 203 puntos, 1 mm = 8 puntos. Una etiqueta estándar de 4x6 pulgadas necesita ^PW812 ^LL1218. El comando ^LH ajusta el origen (márgenes) de toda la etiqueta.
^XA ^PW812 ^LL1218 ^LH10,10 ^FO50,50^A0N,30,30 ^FDEtiqueta 4x6 pulgadas^FS ^XZ
3Paso 3: Posicionamiento con ^FO
El comando ^FO (Field Origin) define la posición X,Y donde se colocará el siguiente elemento. Las coordenadas se miden en puntos desde la esquina superior izquierda de la etiqueta. X crece hacia la derecha, Y crece hacia abajo. A 203 DPI, 100 puntos ≈ 12.5 mm. Puedes colocar múltiples elementos en diferentes posiciones dentro de la misma etiqueta.
^XA ^FO50,30^A0N,25,25^FDEsquina superior^FS ^FO300,30^A0N,25,25^FDDerecha^FS ^FO50,200^A0N,25,25^FDAbajo izquierda^FS ^FO300,200^A0N,25,25^FDAbajo derecha^FS ^XZ
4Paso 4: Texto con diferentes fuentes y tamaños
El comando ^A define la fuente a utilizar. Formato: ^A(fuente)(orientación),(alto),(ancho). La fuente 0 es la estándar. Orientaciones: N=normal, R=90°, I=180°, B=270°. El alto y ancho se miden en puntos. Para texto multilínea con ajuste automático, usa ^FB(ancho),(líneas),(espaciado),(alineación) antes de ^FD.
^XA ^FO50,30^A0N,50,50^FDTítulo Grande^FS ^FO50,100^A0N,30,30^FDSubtítulo mediano^FS ^FO50,150^A0N,20,20^FDTexto pequeño^FS ^FO50,200^A0R,30,30^FDTexto rotado 90°^FS ^FO50,300^FB400,3,0,C,0 ^A0N,25,25^FDEste texto se ajusta automáticamente en un bloque de 400 puntos de ancho^FS ^XZ
5Paso 5: Códigos de barras con ^BY y ^BC
Para crear un código de barras, primero configura el tamaño con ^BY(ancho_módulo,ratio,alto), luego usa el comando del tipo de código. ^BC crea Code 128 (el estándar en logística). Parámetros de ^BC: orientación, alto, interpretación_humana(Y/N), texto_arriba(Y/N), checksum(Y/N). Siempre usa Y en interpretación para que el número sea legible bajo las barras.
^XA ^FO50,50^BY2,3,100 ^BCN,100,Y,N,N ^FD123456789^FS ^FO50,200^BY3 ^BCN,80,Y,N,N ^FDABC-001-XYZ^FS ^XZ
6Paso 6: Códigos QR
El comando ^BQ crea códigos QR. Formato: ^BQ(orientación),(modelo),(magnificación). Usa siempre modelo 2 y ajusta la magnificación (1-10) según el tamaño deseado. Los datos deben ir precedidos por un prefijo: QA para detección automática, o MM,A para datos con caracteres especiales. Magnificación 5 es un buen punto de partida para etiquetas estándar.
^XA ^FO50,50 ^BQN,2,5 ^FDQA,https://zplpdf.com^FS ^FO350,50 ^BQN,2,3 ^FDQA,Producto: SKU-001^FS ^XZ
7Paso 7: Dibujar líneas, cajas y separadores
El comando ^GB dibuja cajas y rectángulos: ^GB(ancho,alto,grosor_línea). Si ancho y alto son iguales al grosor, dibuja una línea. Usa cajas para crear marcos, separadores y organizar visualmente los elementos de la etiqueta. También puedes crear círculos con ^GC(diámetro,grosor) y líneas diagonales con ^GD.
^XA ^FO30,30^GB500,300,2^FS ^FO30,120^GB500,1,1^FS ^FO50,50^A0N,30,30^FDEncabezado^FS ^FO50,140^A0N,25,25^FDContenido de la etiqueta^FS ^FO50,200^A0N,25,25^FDMás información aquí^FS ^FO400,250^GC50,2,B^FS ^XZ
8Paso 8: Caracteres especiales y acentos con ^CI28
Por defecto, ZPL no soporta acentos ni caracteres especiales (á, é, ñ, ü). Para habilitarlos, agrega ^CI28 al inicio de tu etiqueta para activar la codificación UTF-8. Esto es esencial para etiquetas en español, portugués o cualquier idioma con caracteres no-ASCII. Sin ^CI28, los acentos aparecerán como símbolos incorrectos.
^XA ^CI28 ^FO50,50^A0N,30,30 ^FDSeñor José García^FS ^FO50,100^A0N,30,30 ^FDDirección: Av. Ñoño #123^FS ^FO50,150^A0N,30,30 ^FDCódigo: Ü-2024-MX^FS ^XZ
9Paso 9: Imprimir múltiples copias con ^PQ
El comando ^PQ(cantidad) antes de ^XZ define cuántas copias imprimir. Para serialización automática (números que se incrementan en cada copia), usa ^SN(inicio,incremento,relleno_ceros) dentro del campo. Esto es ideal para generar etiquetas con números de serie consecutivos sin enviar cada etiqueta individualmente.
^XA ^FO50,50^A0N,30,30 ^FDProducto: Widget Pro^FS ^FO50,100^A0N,25,25 ^FDSerie: ^FS ^FO130,100^A0N,25,25 ^SN0001,1,Y^FS ^FO50,150^BY2^BCN,80,Y ^FDSKU-WIDGET-PRO^FS ^PQ5 ^XZ
10Paso 10: Etiqueta de envío completa
Este ejemplo combina todos los conceptos del tutorial en una etiqueta de envío real: configuración de tamaño, marco con cajas, texto en diferentes tamaños, código de barras Code 128 para el número de guía, código QR con URL de rastreo, y soporte para acentos. Puedes usar esto como plantilla base para tus propias etiquetas.
^XA ^CI28 ^PW812^LL609 ^FO20,20^GB772,569,2^FS ^FO20,100^GB772,1,1^FS ^FO20,300^GB772,1,1^FS ^FO40,35^A0N,40,40^FDEnvío Express^FS ^FO40,120^A0N,25,25^FDDe: Juan García López^FS ^FO40,155^A0N,25,25^FDCalle Mérida #456, Col. Centro^FS ^FO40,190^A0N,25,25^FDMérida, Yucatán, CP 97000^FS ^FO40,240^A0N,30,30^FDPara: María López Ñoño^FS ^FO40,275^A0N,25,25^FDCDMX, CP 06600^FS ^FO40,320^BY2^BCN,120,Y ^FDGUIA-2024-001234^FS ^FO600,320^BQN,2,4 ^FDQA,https://rastreo.com/001234^FS ^FO40,470^A0N,20,20^FDPeso: 2.5 kg | 1 de 1^FS ^XZ
Consejos para crear etiquetas ZPL
- Siempre prueba tu código en el Visor ZPL de ZPLPDF antes de enviar a la impresora
- Coloca ^CI28 al inicio si necesitas acentos, ñ o caracteres especiales
- Usa ^BY ANTES de cada código de barras para controlar el grosor y altura
- Para etiquetas 4x6 pulgadas (estándar envío): usa ^PW812 ^LL1218 a 203 DPI
- Las coordenadas ^FO se miden en puntos: a 203 DPI, 1 pulgada = 203 puntos, 1 mm ≈ 8 puntos
- Usa ^FB para crear bloques de texto multilínea con ajuste automático de palabras
- Organiza visualmente la etiqueta con ^GB para crear marcos y líneas separadoras
- Guarda plantillas reutilizables — cambia solo los datos variables con ^FN para etiquetas en serie
- Verifica tu código con el Validador ZPL para detectar errores de sintaxis antes de imprimir
- Si no tienes impresora Zebra, convierte tu ZPL a PDF con ZPLPDF e imprime desde cualquier impresora
Preguntas frecuentes sobre crear etiquetas ZPL
¿Necesito una impresora Zebra para usar código ZPL?
¿Qué tamaño tiene una etiqueta de envío estándar?
¿Cómo calculo las coordenadas para posicionar elementos?
¿Por qué mis acentos y ñ aparecen como símbolos raros?
¿Cómo hago una etiqueta con datos que cambian (nombre, dirección)?
¿Puedo crear etiquetas ZPL desde Excel o una base de datos?
¿Cómo imprimo varias etiquetas diferentes en una sola impresión?
Prueba tu código ZPL ahora
Usa nuestro visor ZPL para ver cómo quedará tu etiqueta antes de imprimirla. No necesitas impresora.