Academia · verifactu
QR y cadena de huellas Verifactu
Publicado el 2026-07-02
Qué es
Cada factura Verifactu incluye una "huella": un hash SHA-256 calculado a partir de los datos de la factura y de la huella de la factura anterior. Ese encadenamiento es lo que hace que, si alguien manipulara una factura antigua, la cadena completa dejaría de cuadrar — por eso se llama cadena de huellas.
Por qué importa
La huella y el QR no son un adorno visual: son el mecanismo que permite comprobar que el registro de facturación no ha sido alterado después de emitirse. Es el corazón técnico de lo que exige el RRSIF.
Pasos en Zeva
- 1
Cálculo de la huella al emitir
En el momento de emitir, Zeva concatena ocho campos en un orden exacto —NIF de quien emite (no el de tu cliente), serie y número, fecha de expedición, tipo de factura, cuota total, importe total, la huella de la factura anterior y el instante de generación con su huso horario— y calcula el SHA-256 de esa cadena.
- 2
Verificación contra el vector oficial
El algoritmo de cálculo de la huella en Zeva está verificado byte a byte contra el vector de pruebas oficial publicado por la AEAT, no es una implementación propia sin contrastar.
- 3
Generación del QR
Cada factura emitida incluye su código QR de cotejo, generado a partir del registro de facturación encadenado.
- 4
Bloqueo de edición
Como la huella depende de los datos exactos de la factura, cualquier cambio posterior rompería la cadena — por eso Zeva bloquea la edición de una factura ya emitida sin excepción.
Si necesitas corregir una factura ya emitida, la única vía es una factura rectificativa, que se encadena a continuación de la original — nunca se reescribe ni se borra la factura con el error.
Los ocho campos, en su orden exacto
La huella no es «un hash de la factura»: es el SHA-256 de una cadena de texto con
campos concretos, en un orden concreto, unidos por &. Cambiar el orden, añadir un
espacio o formatear una fecha distinto da un hash distinto y una cadena que la AEAT
no reconocería.
IDEmisorFactura— el NIF de quien emite. No el de tu cliente.NumSerieFactura— serie y número, ya asignados sin huecos.FechaExpedicionFactura.TipoFactura— F1 completa, F2 simplificada, R1–R5 rectificativas.CuotaTotal— el impuesto repercutido.ImporteTotal.Huella— la de la factura inmediatamente anterior. Este es el eslabón.FechaHoraHusoGenRegistro— el instante de generación, con huso horario.
El resultado se guarda en hexadecimal, 64 caracteres en mayúsculas.
Tu primera factura: el eslabón que no tiene anterior
Una duda razonable al empezar: si cada huella depende de la anterior, ¿de dónde sale la de la primera? De ninguna parte — encadena con una huella anterior vacía. Eso no es un caso especial ni un parche: es el arranque normal de la cadena, y a partir de ahí cada factura se apoya en la de antes.
Anular también encadena: no es borrar
Hay un segundo tipo de registro que casi nadie menciona. Anular una factura emitida no la borra: genera un registro de anulación con sus propios cinco campos —NIF del emisor, serie y número de la factura anulada, su fecha de expedición, la huella anterior y el instante de generación— que se encadena a continuación, igual que una factura. La cadena crece; nunca se recorta.
El QR tiene norma, tamaño y destino
El código que se imprime no es decorativo. Sigue la norma ISO/IEC 18004 con nivel de corrección de errores M, y debe medir entre 30 y 40 mm de lado: tiene que poder leerse con un móvil desde una factura en papel. Apunta a la sede electrónica de la AEAT con cuatro datos: NIF del emisor, número de serie, fecha de expedición e importe total.
Cómo compruebas tú que la cadena está intacta
No hace falta que te fíes de nuestra palabra. Zeva expone una verificación del encadenado de solo lectura: recorre tus facturas en orden y confirma que la huella de cada una coincide con la que quedó grabada como «anterior» en la siguiente. Si alguien hubiera alterado una factura antigua, ahí se vería.
Errores comunes
- Pensar que la huella es solo un identificador único: en realidad depende de la factura anterior, por eso es una cadena, no huellas aisladas.
- Esperar poder "reimprimir" una factura con datos distintos tras emitirla: los datos que generaron la huella quedan fijados para siempre.
Preguntas frecuentes
¿El QR envía algo a la AEAT automáticamente?
No por sí mismo: el QR permite verificar el registro de facturación. La transmisión telemática automática a la AEAT es una pieza distinta, todavía en desarrollo en nuestro roadmap.
¿Qué pasa si se pierde o corrompe una factura de la cadena?
El propio diseño de la cadena hace que cualquier alteración sea detectable: si una huella no encaja con la anterior, la ruptura de la cadena es evidente en una verificación.
Si necesitas la norma, no el procedimiento
Este artículo explica cómo funciona la cadena en Zeva. Lo que exige el reglamento —y qué parte de eso cubre Zeva hoy y qué queda pendiente— está en Verifactu: qué exige la ley y cómo se cumple.
Siguiente paso recomendado
Cada factura de venta también genera contabilidad sola: sigue con contabilidad automática.
Solicitar demo