Por qué un generador de QR gratuito no sirve

La confusión es entendible. Un código QR es, técnicamente, una forma de dibujar texto. Cualquier web gratuita convierte una cadena de caracteres en ese cuadrado de píxeles en dos segundos, y el resultado es un QR perfectamente legible por cualquier móvil. El problema no está en el dibujo: está en quién genera el contenido y con qué garantías.

El código QR de VeriFactu no es un adorno que se pega en la plantilla de la factura. Es la representación visual de una URL de cotejo alojada en la sede electrónica de la AEAT que lleva incrustados los datos identificativos de esa factura concreta. Para que ese enlace devuelva algo coherente cuando el cliente lo escanea, los datos tienen que salir del mismo sistema que ha registrado la factura, ha calculado su huella y —en modalidad VeriFactu— la ha remitido o la tiene en cola para remitirla.

Las tres cosas que le faltan a un QR pegado a mano

  • La cadena de huellas. Cada registro de facturación incorpora un hash SHA-256 que incluye el hash del registro anterior. Eso es lo que hace que borrar o alterar una factura a posteriori sea detectable. Un generador externo no encadena nada: no conoce la factura anterior ni la siguiente.
  • El Registro de Eventos. El RD 1007/2023 exige que el sistema anote de forma inalterable sus propios sucesos: arranques, incidencias, intentos de acceso, exportaciones. Un QR generado por fuera no deja rastro de nada.
  • La Declaración Responsable. El artículo 13 del RD 1007/2023 obliga al productor del software a declarar por escrito que su sistema cumple. Nadie firma una declaración responsable sobre una imagen que has pegado tú en un Word.

Qué codifica realmente el QR: URL de cotejo y huella

Aquí hay un matiz técnico que casi nadie explica bien y que conviene fijar, porque de él depende entender por qué el QR no puede improvisarse.

El código QR no contiene el hash de la factura. Lo que contiene es una URL del servicio de validación de la AEAT con los datos identificativos de la factura como parámetros: el NIF del emisor, el número y serie de la factura, la fecha de expedición y el importe total. Nada más.

La huella criptográfica viaja por otro camino: va dentro del registro de facturación, que en modalidad VeriFactu se remite a la Agencia Tributaria y en modalidad No VeriFactu se conserva firmado y encadenado en tu sistema. El QR es la puerta; el hash es la cerradura. Son dos piezas distintas del mismo mecanismo, y por eso un generador externo, que solo sabe dibujar la puerta, no sirve de nada.

Qué ve el cliente al escanear

El móvil abre la URL en la sede electrónica de la AEAT y el servicio responde en función de la modalidad:

• En modalidad VeriFactu, si el registro ya llegó, la AEAT confirma que la factura consta remitida. La factura debe llevar además la leyenda que la identifica como verificable.
• En modalidad No VeriFactu, el QR es igualmente obligatorio, pero la AEAT no tiene el registro: el cotejo sirve para que el receptor pueda comunicar la factura si lo desea.
• Si el registro todavía está en cola porque hubo una incidencia de red, la respuesta refleja simplemente que aún no consta. Eso no es una infracción.

Las especificaciones exactas de tamaño, contenido y ubicación las fija la Orden HAC/1177/2024. Si lo que buscas es la ficha técnica al detalle —dimensiones en milímetros, estructura de la querystring, leyenda obligatoria— la tienes desarrollada en especificaciones técnicas del código QR.

Impresión en TPV: qué pasa con tu impresora de tickets

Esta es la pregunta que más aparece en hostelería y comercio, y la respuesta suele ser tranquilizadora: en la mayoría de los casos la impresora actual sirve. Lo que cambia es el software que le manda la orden de impresión.

Una ticketera térmica estándar de 58 u 80 milímetros con 203 ppp de resolución imprime sin problema un QR de 30 a 40 mm de lado, que es el rango que maneja la norma. Los puntos a comprobar son otros:

  • Ancho útil del papel. En rollos de 58 mm el área imprimible ronda los 48 mm, así que un QR de 30 mm entra, pero deja poco margen. Si tu ticket va muy cargado de líneas, el diseño hay que reorganizarlo.
  • Estado del cabezal y del rollo. Un QR es tolerante a fallos, pero un cabezal desgastado o un papel térmico de mala calidad producen códigos que la cámara no lee. Y un QR ilegible equivale a no haberlo puesto.
  • Modo gráfico. Algunas configuraciones antiguas imprimen solo texto. El QR es una imagen: el driver y el firmware tienen que aceptar modo gráfico o comandos de código de barras bidimensional.
  • Velocidad. Añadir un bloque gráfico a cada ticket alarga la impresión unas décimas. En una barra con cola en hora punta se nota, y merece la pena probarlo antes de un sábado.

Dicho de otro modo: el gasto real de adaptar un TPV a VeriFactu casi nunca está en el hardware, sino en el software que emite el ticket. Cambiar de programa no obliga a tirar la impresora.

Sin conexión: cómo se emite el QR cuando se cae la red

El miedo está muy extendido y se apoya en una idea equivocada: que sin internet no se puede emitir una factura conforme. Sí se puede. El QR se calcula en local, porque su contenido son datos que tu propio sistema ya conoce: tu NIF, el número de factura, la fecha y el importe. No hace falta preguntar nada a la AEAT para dibujarlo.

Lo mismo ocurre con la huella: el hash SHA-256 se calcula en el dispositivo, encadenado al registro anterior. Es decir, la factura nace completa y inalterable sin conexión.

  • Se emite la factura con su QR

    El sistema genera el registro, calcula el hash encadenado y compone la URL de cotejo. El ticket sale impreso con el código, exactamente igual que con conexión.

  • El registro queda en cola

    En modalidad VeriFactu, la remisión a la AEAT se aplaza. El registro espera en una cola persistente que debe sobrevivir a un reinicio del equipo: es el punto que hay que exigir por escrito al proveedor.

  • La incidencia se anota

    La caída se registra en el Registro de Eventos. Ese asiento es tu prueba documental de que el retraso fue una incidencia técnica y no una omisión.

  • Al volver la red, se envía solo

    El sistema reintenta y transmite los registros pendientes sin que nadie tenga que hacer nada. Es el comportamiento asíncrono normal de un SIF bien construido.

Lo desarrollamos con la letra de la norma en VeriFactu vs No VeriFactu: cómo facturar sin conexión.

Por qué un SaaS sustituye al programa «para PC»

Durante años, adaptarse a un cambio normativo significaba esperar a que el fabricante publicara una versión y que alguien la instalara en el ordenador del negocio. Con VeriFactu ese modelo se ha quedado incómodo por dos motivos concretos.

El primero es de mantenimiento: las especificaciones técnicas se han modificado ya varias veces y seguirán ajustándose. En un programa instalado en local, cada ajuste exige una actualización que alguien debe aplicar y verificar; si se retrasa, tu QR y tus registros quedan desalineados sin que tú lo notes. En un servicio en la nube, el fabricante actualiza sus servidores y todos los clientes quedan conformes a la vez.

El segundo es probatorio. En un programa instalado, el ejecutable no es la única puerta a la base de datos: quien administre el equipo puede abrirla con herramientas estándar y modificar registros por debajo de la aplicación, sin que el programa lo anote. Eso no te convierte en infractor, pero mantiene una debilidad frente a una inspección. En un SaaS no existe esa credencial de administrador sobre las tablas, así que la objeción desaparece por imposibilidad material.

Matiz necesario: el RD 1007/2023 no prohíbe el software de escritorio. Un programa instalado puede ser plenamente conforme si genera el hash encadenado, incrusta el QR, mantiene el Registro de Eventos y su fabricante firma la Declaración Responsable. La diferencia entre «legal» y «blindado» está en el acceso a los datos, no en la legalidad.

Dos opciones que generan el QR de forma nativa

Holded si necesitas un ERP completo con inventario y contabilidad, habitual en comercio y distribución. Quipu si eres autónomo o microempresa y priorizas la gestión de gastos y la conexión con tu asesoría. Ambos son SaaS españoles con Declaración Responsable del fabricante, y en los dos el código QR sale en la factura sin que tengas que configurar nada.

Probar Holded (50% Dto. - Tiempo Limitado) →

🔒 Homologado. 50% Dto. 3 primeros meses desde este enlace.

Probar Quipu 15 días gratis →

🔒 Software Homologado VeriFactu.

Enlaces de afiliación · Verifica precios y condiciones vigentes en cada proveedor

Checklist: comprobar tu QR en cinco minutos

  • ☑ Escanea con el móvil un ticket recién emitido: el QR debe abrir la sede electrónica de la AEAT, no una web del fabricante ni un PDF.
  • ☑ Comprueba que los datos que muestra el cotejo coinciden con el NIF, número, fecha e importe del documento que tienes en la mano.
  • ☑ Mide el código impreso: debe estar en el rango de 30 a 40 mm de lado y ser legible sin acercar mucho la cámara.
  • ☑ Pide por escrito la Declaración Responsable del fabricante, con la referencia de la versión concreta que tienes instalada.
  • ☑ Verifica que existe Registro de Eventos y que puedes consultarlo o exportarlo.
  • ☑ Prueba una emisión con el router apagado: la factura debe salir con su QR y el envío quedar en cola.
  • ☑ Reinicia el equipo con registros pendientes: la cola debe sobrevivir al reinicio.
  • ☑ Si emites tickets, confirma que hay una serie específica para facturas simplificadas y que también llevan QR.