Zeva
Crear cuenta

Blog · verifactu

La huella encadenada y el QR, explicados

Publicado el 2026-10-28

Dos elementos nuevos aparecen en toda factura desde que la norma antifraude está en vigor: una cadena larga de letras y números, y un código QR. La mayoría de la gente los ignora. Merecen cinco minutos, porque explican por qué el sistema funciona.

Qué es una huella, sin tecnicismos

Una huella es el resultado de pasar un texto por una función matemática que siempre devuelve una cadena de la misma longitud. Tiene tres propiedades que la hacen útil aquí:

La función que usa la norma produce una cadena de 64 caracteres hexadecimales en mayúsculas. Es la que ves impresa al pie de tus facturas.

Qué entra en la huella, y qué no

Esta es la parte que sorprende: en la huella entran muy pocos datos. Para un registro de alta, ocho campos, en un orden exacto y unidos de una forma exacta:

Y ya. Para un registro de anulación son cinco: los tres que identifican la factura anulada, la huella anterior y la fecha y hora.

Lo que no entra tiene tanto interés como lo que entra: la descripción de la operación, los datos del cliente, la calificación de cada línea, la moneda, el territorio, los descuentos. Todo eso viaja en el registro y se declara, pero no participa del cálculo.

Eso explica cosas que si no parecen mágicas:

Por qué se encadena

Cada huella incluye la huella de la factura anterior. La primera de la cadena la lleva vacía, y a partir de ahí cada eslabón depende del anterior.

El efecto es el que se buscaba: no se puede borrar una factura del medio. Si desaparece, todas las posteriores dejan de cuadrar, porque su huella se calculó contando con ella. Y no se puede recalcular la cadena entera sin dejar rastro, porque la fecha y hora de generación de cada registro también entra.

Un detalle poco conocido: las anulaciones van en la misma secuencia que las altas. Si anulas una factura, ese registro de anulación ocupa su posición y la siguiente factura encadena con él, no con la última alta. Sin eso, no habría forma de saber sin ambigüedad cuál fue el último registro sellado.

Qué lleva el QR

El QR no contiene la factura. Contiene una dirección del servicio de cotejo de la Agencia Tributaria con cuatro datos:

Quien lo escanea llega al servicio y comprueba si esa factura consta. Nada más y nada menos.

La norma fija además cómo tiene que verse: entre 30 y 40 milímetros, con el nivel de corrección de errores que permite leerlo aunque esté algo sucio o doblado. Un QR de 15 milímetros no cumple aunque tu móvil lo lea.

Y junto al QR va la leyenda que indica que la factura es verificable. Es texto obligatorio, no un adorno de plantilla.

Qué hace Zeva, hasta el detalle raro

Sella con el algoritmo de la norma y devuelve la cadena de 64 caracteres en mayúsculas. El vector de ejemplo oficial de la administración se verifica en la propia batería de pruebas: si un cambio rompiera el cálculo, la prueba fallaría antes de llegar a producción.

El preimagen se guarda con la factura. El texto exacto que se pasó por la función queda embebido en el XML del registro. Eso permite que la función de verificación recalcule cada huella byte a byte en lugar de fiarse de un campo guardado. Es la diferencia entre comprobar y creer.

La numeración y la posición en la cadena se asignan bajo el mismo cerrojo. Dos personas emitiendo simultáneamente no pueden compartir número ni posición.

El QR se imprime a unos 35 milímetros, dentro del rango que exige la norma, con el nivel de corrección correcto, y se codifica tal cual se selló: el generador del PDF no recalcula nada, coge la dirección que ya quedó guardada al emitir. Si la recalculara, el papel y el registro podrían divergir.

El pie legal es inmune a la personalización. Puedes elegir plantilla, poner tu logo y tu color de marca; el bloque de QR, leyenda y huella se dibuja siempre en el color oscuro seguro sobre fondo blanco. Una marca con un color claro no puede dejar ilegible el elemento que la ley exige que se lea.

El entorno de cotejo se resuelve en el servidor y es obligatorio. La dirección del QR apunta a producción o a preproducción según la configuración del despliegue, nunca según un parámetro que llegue de fuera. Antes tenía producción como valor por defecto y se corrigió justamente por eso: un valor por defecto en un sitio así lo hereda por accidente cualquiera. Hoy hay que pedirlo explícitamente, y sale de la misma fuente que la transmisión, para que el papel impreso y lo que se remita no puedan divergir.

Hay un gate que impide transmitir facturas de prueba a producción. Se comprueba justo antes de enviar, no en un paso anterior que un cambio futuro pudiera saltarse.

Cómo encaja todo esto en los requisitos completos está en qué debe hacer tu software y en los requisitos técnicos. El resto de la emisión, en la facturación de Zeva.

Qué significa que la cadena esté rota

Si una verificación falla, no significa necesariamente fraude. Significa que los datos guardados no reproducen la huella guardada, y las causas posibles son pocas:

Ninguna es buena, y todas son mejores de descubrir un martes que en una comprobación. Por eso merece la pena que el botón de verificar exista y se pulse de vez en cuando.

Lo que exige el reglamento y cómo lo cumple Zeva hoy —incluido lo que todavía es hoja de ruta— está en cumplimiento VERI*FACTU.

Errores que se repiten

Comprobaciones que puedes hacer hoy

Si la última respuesta es «nunca», ese es el clic de esta semana.

Solicitar demo
La huella encadenada y el QR, explicados · Zeva