Códigos de barras con IA: prefijos, QR y firma local
Antes de empezar
- Activa la IA en Ajustes › IA (interruptor general y la función Generar códigos).
- Entra en Códigos de barras y abre la pestaña Generar.
Proponer códigos, paso a paso
- En el panel Con IA, escribe en Describe los códigos que necesitas qué quieres, en tus palabras:
- «10 códigos internos para cajas de 40 kg»;
- «un QR con nombre, precio y lote para la etiqueta de la salsa»;
- «un código por unidad, difícil de copiar, para 500 bolsas».
- Pulsa Proponer con IA. Junto al botón está el costo de la llamada.
- La primera vez aparece el aviso de privacidad. Ver qué se enviará muestra solo tu descripción.
- La respuesta trae una lista de propuestas. En cada una ves el nombre, el tipo y los datos, y una nota con la recomendación.
- Pulsa Usar en la que te sirva: el tipo y los datos pasan al generador normal, donde puedes ajustar tamaño, colores y descargar.
Las propuestas que no son válidas se descartan y aparecen en «Descartados por no validar» con el motivo (por ejemplo, un dígito verificador que no cuadra). FAVERVIEW calcula el dígito de control de EAN, UPC e ITF-14 antes de mostrarte el código.
Descargar varios de una vez
Marca la casilla de las propuestas que quieras y pulsa Descargar lote de los seleccionados. Se descarga un ZIP con un PDF por código y una hoja de cálculo con tipo, datos y nombre.
Si quieres que cada código lleve firma, marca Firmar cada código del lote antes de descargar. La app firma en tu equipo los que admiten texto libre (QR, Data Matrix y Code 128); los numéricos se descargan sin firma y te avisa cuántos quedaron así. Si todavía no hay secreto, el lote se descarga sin firma y el aviso te recuerda crearlo en Ajustes › Firma de códigos.
Qué número usar: uso interno o GS1
Esta es la decisión que más problemas evita.
| Para qué | Qué número usar | Por qué |
|---|---|---|
| Cajas, inventario, muestras, uso interno | Prefijos 20 a 29 en EAN-13 | Están reservados para circulación restringida: no se venden en tiendas y no chocan con ningún producto comercial. |
| Producto que se vende en tiendas | El GTIN que te asigna GS1 Colombia | Es el número único del producto en el mundo. En Colombia los códigos de empresa empiezan por 770 o 771; GS1 Colombia asigna el rango completo. |
| QR con información | Texto libre: nombre, precio, lote, una dirección web | El QR no necesita un GTIN; sirve para que el cliente o el operario lean los datos. |
Ojo: la app no te inscribe en GS1 ni inventa GTIN válidos. Si vas a vender el producto en un supermercado, el número lo entrega GS1 Colombia; úsalo tal cual.
QR con datos de producto
Pide el QR en lenguaje natural y describe los campos: «QR para la etiqueta: producto Salsa de ají 250 g, lote L-2026-14, precio $12.900». La IA devuelve el contenido como texto y FAVERVIEW lo genera en vectorial. Si después cambias el precio, genera un QR nuevo: el impreso no se actualiza.
«Difícil de copiar»: serie única y firma
Un código impreso siempre se puede fotografiar y volver a imprimir. Lo que sí puedes hacer es que la copia se note:
- Serie única por unidad. Cada bolsa o caja lleva un número distinto. Una copia de la misma serie aparece dos veces y se detecta al inventariar o al vender.
- Verificación en el punto de control. Si escaneas contra una lista (o contra tu sistema), un código que no está o que ya se usó se rechaza.
- Firma local. Si no tienes verificación en línea, puedes incluir una firma calculada con un secreto que solo está en tu equipo. Quien copie el código sin el secreto no puede generar una firma válida para otro contenido.
Las tres cosas se complementan. La firma no reemplaza la serie única.
El formato exacto de la firma
Cuando pulsas Firmar en local en una propuesta, FAVERVIEW calcula la firma en tu equipo y arma el contenido así:
<datos>|F:<firma>
<datos>es el contenido original del código, tal cual (por ejemplo,SERIE-0001).|F:es el separador fijo.<firma>son los primeros 16 caracteres del HMAC-SHA256 calculado con tu secreto sobre<datos>, en hexadecimal y en minúsculas. Ejemplo:SERIE-0001|F:9f2c1a7b4e8d3056.
Para comprobarla, cualquier herramienta de HMAC-SHA256 sirve: calcula el HMAC del texto que va antes de |F: (en UTF-8) con el mismo secreto y compara los primeros 16 caracteres. Si no coinciden, el código fue alterado o se firmó con otro secreto.
Solo en códigos que admiten texto libre: QR, Data Matrix y Code 128. En EAN-13, EAN-8, UPC, ITF-14 y DataBar el contenido debe ser numérico; en Code 39 o en los GS1 la sintaxis es propia. En esos tipos el botón Firmar en local no aparece y verás el aviso «Este tipo solo admite dígitos: para firmar usa QR o Data Matrix» (o el motivo equivalente).
Cómo se aplica hoy: Firmar en local firma la propuesta y carga el contenido firmado en el generador (tipo y datos), para que descargues ese código en PDF, SVG o EPS. Para varias series, marca Firmar cada código del lote al descargar las propuestas o usa la casilla equivalente en Lote (CSV): la app firma cada línea que lo admita y deja sin firma las numéricas, avisando cuántas.
El botón aparece cuando la nota de la propuesta menciona la firma o la serie única y el tipo admite texto libre. Si no lo ves, pídeselo a la IA en el texto: «difíciles de copiar», «con firma».
El secreto
El secreto se administra en Ajustes › Firma de códigos:
- Estado. Dice si este equipo ya tiene un secreto configurado.
- Crear secreto. Genera uno aleatorio (32 bytes) y lo guarda en
datos_locales/codigos_secreto.json, dentro de la carpeta de datos de FAVERVIEW (en la versión instalada,%LOCALAPPDATA%\FAVERVIEW\datos_locales\codigos_secreto.json). - Usar mi propio secreto. Acepta un texto de 16 a 200 caracteres.
- Mostrar. Enseña el secreto solo cuando lo pides; no se muestra al abrir Ajustes.
- Guardar copia del secreto. Descarga un archivo
.txtcon el secreto y el aviso de guardarlo fuera del equipo. - Restaurar desde copia. Pega el texto o carga el archivo
.txt; sirve para recuperar el secreto en otro equipo. - Reemplazar o borrar. Pide confirmación con este aviso: «Los códigos ya impresos con el secreto anterior no se podrán verificar».
- Verificar un código. Pega el contenido leído (
datos|F:…) y la app responde Firma válida o Firma no válida.
El secreto nunca se envía a pixelsanto.com ni a la IA, y no aparece en los registros de la app.
Aviso importante: si borras o cambias el secreto, los códigos ya impresos no se pueden verificar. No hay forma de recuperarlo. Guarda una copia con Guardar copia del secreto y déjala en un lugar seguro (por ejemplo, un gestor de contraseñas o un respaldo cifrado) antes de imprimir. Si el archivo se pierde, los códigos viejos siguen siendo legibles, pero la firma deja de servir como prueba.
Un caso práctico
Una fábrica de salsas quiere numerar las bolsas de una edición limitada y que una copia se detecte.
- En Códigos de barras, escribe: «30 QR para la muestra, con serie y lote L-2026-14, difíciles de copiar».
- La IA propone las series y el tipo (un pedido devuelve hasta 30 propuestas). Pulsa Usar en la primera para revisar el tamaño y el color en el generador.
- Antes de imprimir, abre Ajustes › Firma de códigos, pulsa Crear secreto y luego Guardar copia del secreto. Deja esa copia en el respaldo de la fábrica.
- Marca todas las propuestas, marca Firmar cada código del lote y pulsa Descargar lote de los seleccionados: el ZIP trae un QR firmado por serie. Si alguna propuesta fuera numérica, se descarga sin firma y la app te dice cuántas.
- Para comprobar una unidad, abre Ajustes › Firma de códigos › Verificar un código, pega lo que devuelve el lector (
datos|F:…) y mira si dice Firma válida. - Para la tirada completa, arma la lista de series y usa la pestaña Lote (CSV) con Firmar cada código del lote (o tu sistema de producción con una copia del secreto). En la entrega, el operario escanea cada QR: el sistema comprueba la serie y, si hay firma, la valida con el secreto.
Resultado: cada bolsa es rastreable por su serie, y la firma permite detectar un contenido alterado.
Consejos
- No inventes GTIN. Para retail, el número lo da GS1 Colombia.
- Series cortas y legibles. Un QR muy denso se lee peor en bolsas arrugadas.
- Respalda el secreto antes de imprimir. Es el único paso que no se puede deshacer.
- Prueba el escaneo impreso. Un código que se ve bien en pantalla puede fallar en el sustrato real; usa la verificación de Códigos de barras.
Para generar y verificar códigos con calma, lee Generar y verificar códigos de barras. Para la privacidad de la IA, IA en FAVERVIEW y privacidad.
Preguntas frecuentes
¿Puedo usar cualquier número en un código de barras?
No. Para productos que se venden en tiendas necesitas el GTIN que te asigna GS1 Colombia. Los prefijos 20 a 29 están reservados para uso interno de la empresa (cajas, inventario, muestras) y no se leen en el comercio.
¿La firma evita que copien mi código?
Ningún código impreso impide una fotocopia. La firma sirve para detectar una copia cuando alguien comprueba el código: si el contenido cambió, la firma ya no coincide. Se combina con una serie única por unidad y, si puedes, con una verificación en línea.
¿Dónde se guarda el secreto de la firma?
En tu equipo, en el archivo datos_locales/codigos_secreto.json (en la versión instalada, dentro de %LOCALAPPDATA%\FAVERVIEW). Se administra en Ajustes › Firma de códigos, donde puedes crearlo, mostrarlo solo al pedirlo, guardar una copia y restaurarla. Nunca se envía al servidor. Si lo borras o lo cambias, los códigos ya impresos no se pueden verificar: guarda una copia.
¿Sirve para EAN-13?
No. EAN, UPC, ITF-14 y DataBar solo admiten números, y Code 39 o los GS1 tienen su propia sintaxis; la firma lleva |F: y letras y se rechaza. La firma va en QR, Data Matrix o Code 128, que sí aceptan texto libre. En los tipos numéricos la app no muestra el botón y te avisa.