IRONSOFTWAREHOME
USO DE IRONBARCODE

Generador de Códigos de Barras .NET: QR AEAT VeriFactu, TicketBAI y DataMatrix SEVeM para España

Curtis Chau
Curtis Chau
Updated: 11 de mayo de 2026

Dado el rápido aumento en el uso de códigos de barras, los desarrolladores deben poder generar códigos de barras en su lenguaje de programación preferido. En España, el término "generador de códigos de barras" tiene una dimensión normativa concreta: el Real Decreto 1007/2023 obliga a incluir un código QR de la AEAT en cada factura VeriFactu, TicketBAI exige un QR en cada factura emitida en Bizkaia, Gipuzkoa y Araba, y el sistema SEVeM (AEMPS) requiere DataMatrix en envases de medicamentos. Este tutorial demuestra cómo generar códigos de barras en .NET con IronBarcode, incluyendo los casos de uso normativos específicos para España.

Tutorial del generador de códigos de barras .NET

  1. Creación de un proyecto en Visual Studio
  2. Instalación de la Biblioteca Generadora de Códigos de Barra en C#
  3. Diseño de la interfaz de usuario para la Aplicación de Windows Forms
  4. Escribir el código para la funcionalidad principal
  5. Ejecución del generador de códigos de barra en .NET

Empecemos el tutorial.

Crear el proyecto

Este tutorial utiliza la última versión de Visual Studio y la plantilla de Aplicación de Windows Forms. Puedes usar la aplicación de tu elección y usar tu proyecto y versión existentes.

Abre Visual Studio > Haz clic en Crear Nuevo Proyecto > Selecciona Plantilla de Aplicación de Windows Forms > Presiona Siguiente > Nombra el Proyecto > Presiona Siguiente => Selecciona tu .NET Framework objetivo => Haz clic en el Botón Crear.

Tutorial del generador de códigos de barras .NET , Figura 1: Crear una nueva aplicación de Windows Forms Crear una nueva Aplicación de Windows Forms

Instalación de la biblioteca de códigos de barras

Hay muchos beneficios al instalar una biblioteca generadora de códigos de barras. IronBarcode, escrito en C#, ofrece funciones para crear códigos de barras y códigos QR con solo una línea de código. También permite guardar el código QR o de barras en el formato de archivo deseado. Además, proporciona servicio gratuito y soporte en tiempo de ejecución para generar códigos de barras en .NET.

Comencemos instalando el paquete NuGet de IronBarcode. Puedes instalarlo usando uno de los siguientes tres métodos:

Consola del administrador de paquetes

Escribe el siguiente comando en la Consola del Administrador de Paquetes. Descargará e instalará el paquete por ti.

PM > Install-Package BarCode

Tutorial del generador de códigos de barras .NET , Figura 2: Paso de instalación de la consola del administrador de paquetes Paso de instalación de la consola del administrador de paquetes

Solución de administrador de paquetes NuGet

También puedes instalar el Paquete de Códigos de Barra usando la Solución de Paquetes NuGet. Simplemente sigue estos pasos:

Haz clic en Herramientas > Administrador de Paquetes NuGet > Administrar Paquetes NuGet para la Solución.

Esto abrirá el Administrador de Paquetes NuGet para ti. Haz clic en Buscar y busca "IronBarcode", luego instala la biblioteca.

Tutorial del generador de códigos de barras .NET , Figura 3: Interfaz de usuario del administrador de paquetes NuGet IU del Administrador de paquetes NuGet

Descargar desde el enlace

Como alternativa, el IronBarCode.Dll se puede descargar y añadir a tu proyecto como referencia desde DLL de Códigos de Barra de .NET.

Diseñar los formularios de Windows

La interfaz de usuario para el generador de códigos de barra en .NET debe tener 2 etiquetas, 1 cuadro de texto enriquecido y 1 cuadro de imagen para mostrar la imagen del código de barras generado. La imagen a continuación muestra un diseño sencillo para propósitos de demostración.

Tutorial del generador de códigos de barras .NET , Figura 4: Diseño de la aplicación de Windows Forms Diseñar la Aplicación de Windows Forms

Escribir código para generar código de barras

Haz doble clic en el botón "Generar". El siguiente código aparecerá:

private void button1_Click(object sender, EventArgs e)
{
    // This function will be triggered when the "Generate" button is clicked
}

Agrega los siguientes espacios de nombres en la parte superior de tu archivo de código:

using IronBarCode; // Import the IronBarCode library to handle barcode operations
using System.Drawing; // Import for image manipulation
using System.Windows.Forms; // Import for Windows Forms functionality

Escriba el siguiente código dentro de la función button1_Click():

// Generate a barcode with the specified value and encoding
GeneratedBarcode MyBarCode = IronBarCode.BarcodeWriter.CreateBarcode(BarcodeValue.Text, BarcodeWriterEncoding.Code128);

// Save the generated barcode as a PNG file
MyBarCode.SaveAsPng("MyBarCode.png");

// Display the generated barcode image in the PictureBox
BarcodeImage.Image = new Bitmap("MyBarCode.png");

Vamos a entender el código, línea por línea:

  • GeneratedBarcode es un tipo de datos que representa el código de barras generado.

  • CreateBarcode es la función de la clase BarcodeWriter del paquete IronBarCode, utilizada para generar el código de barras según la entrada del usuario.

  • BarcodeValue.Text recupera el texto ingresado por el usuario, que será codificado en el código de barras.

  • BarcodeWriterEncoding.Code128 especifica el esquema de codificación para generar el código de barras. Puede cambiar esto a otros tipos de codificación como BarcodeWriterEncoding.QRCode para generar códigos QR.

  • SaveAsPng("MyBarCode.png") guarda la imagen del código de barras como un archivo PNG.

  • BarcodeImage es un control PictureBox en el formulario utilizado para mostrar la imagen del código de barras al usuario.

Ejecute el generador de códigos de barras .NET

Presione Ctrl + F5 para ejecutar la aplicación.

Tutorial del generador de códigos de barras .NET , Figura 5: Ejecute la aplicación del generador de códigos de barras Ejecutar la aplicación generadora de códigos de barra

Escribe el valor dentro del cuadro de texto que deseas codificar en el código de barras como se muestra a continuación.

Tutorial de generador de código de barras .NET , Figura 6: Pegue la URL para generar un código de barras Pegar la URL para generar un código de barras

Ahora, haz clic en el botón "Generar". El código de barras se generará como se muestra a continuación.

Tutorial de generador de código de barras .NET , Figura 7: Código de barras generado en la aplicación Windows Forms Código de barra generado en la Aplicación de Windows Forms

Mostrar el valor del código de barras

A continuación, puedes mostrar el valor del código de barras con una sola línea de código:

// Add the encoded barcode value as text below the barcode image
MyBarCode.AddBarcodeValueTextBelowBarcode();

Resultado

Tutorial de generador de código de barras .NET , Figura 8: Generar un código de barras a partir de un valor de cadena Generar un código de barras a partir de un valor de cadena

Generador de códigos de barras para cumplimiento normativo en España

España requiere la generación de códigos de barras y QR en documentos fiscales y productos regulados. IronBarcode es el generador de códigos de barras .NET que cubre todos estos requisitos normativos desde el servidor.

AEAT QR y VeriFactu (Real Decreto 1007/2023)

La Agencia Estatal de Administración Tributaria (AEAT) exige que cada factura VeriFactu incluya un código QR generado con un payload estructurado que enlaza a sede.agenciatributaria.gob.es. La factura también debe mostrar la leyenda "VERI*FACTU". IronBarcode genera este QR con una sola llamada a QRCodeWriter.CreateQrCode().

// IronBarcode — QR VeriFactu (AEAT, Real Decreto 1007/2023)
// dotnet add package IronBarcode
using IronBarCode;

// Payload AEAT: NIF + fecha + importe + hash de cadena de facturación
string payloadAeat = "https://sede.agenciatributaria.gob.es/Sede/factura?" +
    "nif=B12345678&fecha=2026-05-29&importe=1210.00&huella=A3F9B2C1D4E5";

var qrVeriFactu = QRCodeWriter.CreateQrCode(
    payloadAeat,
    400,
    QRCodeWriter.QrErrorCorrectionLevel.Medium
);
qrVeriFactu.SaveAsPng("factura-verifactu-qr.png");
// Texto "VERI*FACTU" debe mostrarse junto al QR en la factura impresa

TicketBAI — QR para Bizkaia, Gipuzkoa y Araba

TicketBAI obliga a incluir un QR en cada factura emitida en el País Vasco. El payload del QR contiene una URL con el hash XAdES de la firma digital del documento.

// IronBarcode — QR TicketBAI (Hacienda Foral del País Vasco)
using IronBarCode;

string hashXades = "A3F9B2C1D4E5F67890ABCDEF1234567890AB";
string payloadTicketBAI = $"https://batuz.eus/QRTBAI?id=TBAIbizkaia-001&hash={hashXades[..13]}";

var qrTicketBAI = QRCodeWriter.CreateQrCode(
    payloadTicketBAI,
    300,
    QRCodeWriter.QrErrorCorrectionLevel.Medium
);
qrTicketBAI.SaveAsPng("ticketbai-qr.png");

SEVeM — DataMatrix para farmacia (AEMPS) y SILICIE para vitivinicultura

El Sistema Español de Verificación de Medicamentos (SEVeM), bajo la Agencia Española de Medicamentos y Productos Sanitarios (AEMPS), requiere DataMatrix en envases de medicamentos. El sistema SILICIE de la Agencia Tributaria gestiona la trazabilidad de bebidas alcohólicas.

// IronBarcode — DataMatrix para etiqueta SEVeM (AEMPS, GS1 DataMatrix)
using IronBarCode;

// Payload GS1: GTIN + número de lote + fecha de caducidad + número de serie
string seVeMPayload = "(01)08412341000206(17)231231(10)LOTE001(21)SN0000001";
var dataMatrix = BarcodeWriter.CreateBarcode(seVeMPayload, BarcodeEncoding.DataMatrix);
dataMatrix.ResizeTo(100, 100);
dataMatrix.SaveAsPng("seve-m-datamatrix.png");

Resumen

IronBarcode es el generador de códigos de barras .NET de referencia para España: cubre el QR AEAT VeriFactu (Real Decreto 1007/2023), el QR TicketBAI para el País Vasco (Bizkaia, Gipuzkoa y Araba), el DataMatrix SEVeM (AEMPS) y los códigos de barras SILICIE, todo en un único paquete NuGet sin dependencias adicionales. Presenta una API amigable para desarrolladores para leer y escribir códigos de barras para .NET, optimizando la precisión y asegurando una baja tasa de error en software del mundo real. Visita la página de documentación oficial para más información sobre IronBarcode.

Actualmente, si compras la completa Iron Suite, puedes obtener cinco bibliotecas por el precio de dos. Para más información.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien estructurados y visualmente atractivos.

...
Leer más

Artículos Relacionados

Key in blue circle

Obtenga su clave de prueba gratuita de 30 días al instante.

Your trial license will be sent to your email address

Sin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.

bullet_checkedNo se requiere tarjeta de crédito ni creación de cuentaSin limitaciones. 100 % desbloqueado. Sin tarjeta de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Reserve su Demostración en Vivo gratuita
Booking Badge

Confiado por millones de ingenieros en todo el mundo

Logos de clientes de Iron Software
Obtén tu Consulta Sin Compromiso
Completa el formulario a continuación o envía un correo a sales@ironsoftware.com
Tus detalles siempre serán mantenidos confidenciales.
Confiado por millones de ingenieros en todo el mundo
Logos de clientes de Iron Software
Obtenga su Clave de Prueba de 30 días gratis al instante.
No se requiere tarjeta de crédito ni creación de cuenta