Última revisión: 3 de septiembre de 2026. Campos, algoritmo y
formato de salida contrastados en el artículo 13 de la Orden HAC/1177/2024 y en el documento
técnico de la AEAT «Detalle de las especificaciones técnicas para generación de la huella o hash
de los registros de facturación» (versión 0.1.2). El ejemplo de la tabla está recalculado por
nosotros.
Una huella —o hash— es un resumen de longitud fija que se calcula a
partir de un conjunto de datos. Tiene dos propiedades que la hacen útil aquí: si cambias
cualquier cosa en los datos, por mínima que sea, el resumen cambia por completo; y del resumen no
se puede volver a los datos originales.
Verifactu usa esa idea de una forma concreta: en la huella de cada factura entra la
huella de la factura anterior. Así se forma una cadena. Tocar una factura del medio
desalinea todas las siguientes. Eso es todo el mecanismo. Lo demás son detalles de
implementación que hace tu programa, no tú.
Qué datos entran en la huella (y cuáles no)
No se calcula sobre la factura entera. Ni siquiera sobre el
registro de facturación de alta
completo. Solo entran ocho campos, en este orden exacto:
| # | Campo | Por qué está ahí |
|---|---|---|
| 1 | IDEmisorFactura | Tu NIF: ata la factura a quien la emite |
| 2 | NumSerieFactura | Número y serie: identifica la factura dentro de tu numeración |
| 3 | FechaExpedicionFactura | Impide mover una factura de fecha sin que se note |
| 4 | TipoFactura | Completa, simplificada, rectificativa… |
| 5 | CuotaTotal | La cuota de IVA total |
| 6 | ImporteTotal | El importe total: el dato que más tienta modificar |
| 7 | Huella del registro anterior | El eslabón. Es lo que convierte una lista en una cadena |
| 8 | FechaHoraHusoGenRegistro | Fecha, hora y huso horario de generación del registro |
Lo que no entra: el NIF del cliente, la descripción de las operaciones, las
líneas de detalle, la forma de pago. La huella protege la integridad de la serie y de los
importes, no de todo el contenido comercial.
En los registros de anulación los campos son cinco —emisor, número y serie de la factura
anulada, fecha de expedición, huella anterior y momento de generación— y en los registros de
evento son nueve. Cada tipo de registro tiene su propio subconjunto.
Cómo se calcula, paso a paso
El procedimiento lo publica la Agencia Tributaria en su
documentación técnica de desarrolladores, por
habilitación expresa de la
Orden HAC/1177/2024. Resumido:
- Se toman los campos anteriores, en orden, y se encadenan en una sola línea de texto con la
formanombreCampo=valor&nombreCampo=valor. - Se limpian los espacios del principio y del final de cada valor. En los importes, dar uno o
dos decimales es indiferente: los ceros a la derecha no cuentan. - Si un campo no tiene valor —el caso del primer registro, que no tiene huella anterior— se
escribe el nombre del campo, el signo igual y nada detrás. - Esa línea se codifica en UTF-8 y se le aplica el algoritmo SHA-256, hoy el
único permitido. - El resultado se expresa en hexadecimal, en mayúsculas, con 64 caracteres.
Detalle que confunde a mucha gente: el primer registro de la cadena también lleva
huella. Lo que no lleva es huella anterior; se marca como primer registro y el
campo de la huella previa va vacío.
La demostración: un céntimo lo cambia todo
La AEAT publica en su documento técnico un ejemplo con datos ficticios. Lo hemos recalculado
para comprobarlo, y para enseñar de un vistazo por qué esto funciona. Partimos del primer
registro de un sistema, con NIF 89890001K, factura 12345678/G33 de 1 de enero de 2024, tipo F1,
cuota 12,35 € e importe total 123,45 €:
| Qué se cambia | Huella SHA-256 resultante (64 caracteres) |
|---|---|
| Nada. Datos originales del ejemplo de la AEAT | 3C464DAF61ACB827C65FDA19F352A4E3BDC2C640E9E9FC4CC058073F38F12F60 |
| Solo el importe total: 123,45 € → 123,46 € | CB4C4C59CD0D9458CEAD821634EE631DD0D08CEF950306AA4F0D01A45766ADF4 |
Un céntimo de diferencia y no se parece ni el primer carácter. No hay «huellas parecidas»: o
coincide entera o no coincide. Esa es toda la garantía, y es la razón de que no haga falta que
Hacienda guarde tus facturas para saber si alguien las tocó.
Qué significa «encadenado»
El campo 7 de la tabla es la clave. La huella de tu factura número 58 se calcula incluyendo la
huella de la 57. La de la 59 incluye la de la 58. Y así sucesivamente.
Supón que alguien quiere borrar la factura 57 porque cobró en efectivo y prefiere que no
exista. Al eliminarla, la huella que la 58 lleva guardada apunta a un registro que ya no está.
Para que cuadre habría que recalcular la huella de la 58, lo que cambia la huella de la 58, lo
que obliga a recalcular la 59, la 60 y todas las posteriores hasta hoy. Y si el sistema opera en
modalidad Veri*Factu, las huellas originales
ya están en la Agencia Tributaria desde el momento en que se emitió cada factura, así que el
recálculo no sirve de nada.
Ese es, literalmente, el problema que la Ley 11/2021 quería cerrar cuando prohibió el
software de doble uso. La huella encadenada no hace
imposible el fraude: lo hace detectable, que a efectos de inspección es
suficiente.
Cinco cosas que no son verdad sobre la huella
- «La huella va en el código QR». No. La Agencia Tributaria lo aclara en sus
preguntas frecuentes sobre la huella: no forma
parte del QR. El QR lleva otros cuatro datos; ver
el código QR de la factura. - «Es un cifrado y Hacienda lo descifra». No es cifrado. Es un resumen de un
solo sentido: de la huella no se pueden reconstruir los datos. - «Necesito un certificado digital para la huella». No. El certificado hace
falta para la firma electrónica, que es otra cosa y solo se exige a los sistemas
que no remiten a la AEAT. - «Si me equivoco, la cadena se rompe para siempre». No. Los errores se
corrigen añadiendo registros —de subsanación o de anulación—, y esos registros se encadenan
igual que los demás. La cadena no se rompe: crece. Ver
anular una factura con Verifactu. - «Tengo que verificar yo las huellas». Lo hace el programa. Y solo se exige
esa verificación a los sistemas no verificables, que además deben comprobar el
encadenamiento al generar cada nuevo registro.
Qué le tienes que exigir a tu programa
Nada de esto lo calculas tú, pero sí puedes comprobar que tu proveedor lo tiene resuelto.
Cuatro preguntas concretas, de la lista larga de
requisitos del software:
- ¿Usa SHA-256 y el formato de salida hexadecimal en mayúsculas de 64 caracteres?
- ¿Puedo ver la huella y la del registro anterior de cualquiera de mis
facturas desde el propio programa? - ¿Qué hace el sistema si detecta un encadenamiento roto? ¿Avisa, bloquea, registra la
incidencia? - Si me cambio de programa, ¿cómo se enlaza la cadena nueva con el histórico? Ver
cambiar de programa de facturación.
La pregunta 3 es la que separa un producto serio de una casilla marcada en una web comercial.
La 4 es la que más problemas da en migraciones reales.
Preguntas frecuentes
¿La huella es la firma electrónica?
No. La huella la calculan todos los sistemas; la firma electrónica solo la exige el reglamento
a los sistemas que no remiten los registros a la AEAT, y usa un certificado electrónico
cualificado con el estándar XAdES. Comparativa completa en
Veri*Factu o no Veri*Factu.
¿Dos facturas idénticas dan la misma huella?
No, porque en el cálculo entran la huella del registro anterior y la fecha, hora y huso de
generación, que nunca coinciden.
¿Puede alguien deducir mis datos a partir de la huella?
No. SHA-256 no es reversible. Otra cosa es que quien ya conozca los datos pueda comprobar si
la huella cuadra: eso es precisamente lo que se busca.
¿Y si cambio de ordenador o reinstalo el programa?
La cadena pertenece al sistema informático de facturación, no al equipo. Cómo se preserva al
migrar es una de las preguntas críticas al proveedor, y una fuente habitual de sustos si no se
plantea antes.
¿Una cadena rota se sanciona?
El artículo 201 bis de la Ley General Tributaria sanciona la tenencia de sistemas que no
cumplan las especificaciones o que hayan sido alterados, con multa fija de 50.000 € por
ejercicio. Un fallo técnico documentado y una alteración deliberada no son lo mismo; los
supuestos, en la multa de 50.000 €.
Guía independiente. No vendemos software ni somos asesoría fiscal: esto es
divulgación y no sustituye al criterio de un profesional que conozca tu caso. Puedes ver
cómo nos financiamos y cómo
elaboramos el contenido.