Saltar al contenido
VeriFactu

Qué es la huella o hash de una factura y para qué sirve

Por el equipo de Gestonet · · 5 min de lectura

Manos revisando una factura impresa con bolígrafo sobre la mesa

«Huella», «hash», «encadenamiento»… El vocabulario de VeriFactu suena a informática, pero la idea es sencilla y conviene entenderla: explica por qué ya no se pueden borrar facturas y por qué los errores se corrigen de otra manera. No necesitas saber programar para seguir este artículo.

Qué es un hash, explicado sin tecnicismos

Un hash es el resultado de aplicar una fórmula matemática a un conjunto de datos. Esa fórmula tiene tres propiedades que la hacen útil:

  • Siempre da el mismo resultado para los mismos datos.
  • Cualquier cambio mínimo (un céntimo, una cifra del número de factura) produce un resultado totalmente distinto.
  • No se puede ir hacia atrás: a partir del hash no se pueden reconstruir los datos, ni fabricar otros datos que den el mismo hash.

Funciona como una huella dactilar de los datos, y de ahí el nombre que usa la normativa española: huella. El algoritmo que fija la Orden HAC/1177/2024 para los registros de facturación es SHA-256, que produce un código de 64 caracteres hexadecimales (números del 0 al 9 y letras de la A a la F).

Qué datos de la factura entran en la huella

La huella no se calcula sobre el PDF de la factura, sino sobre el registro de facturación que genera el programa. Según las especificaciones técnicas publicadas por la AEAT, para un registro de alta se usan, entre otros, estos campos:

CampoQué es
IDEmisorFacturaNIF de quien emite la factura
NumSerieFacturaNúmero y serie de la factura
FechaExpedicionFacturaFecha de expedición
TipoFacturaCompleta, simplificada, rectificativa…
CuotaTotalSuma de las cuotas de IVA
ImporteTotalImporte total de la factura
HuellaLa huella del registro anterior
FechaHoraHusoGenRegistroFecha, hora y huso horario en que se generó el registro

Para los registros de anulación se usan campos equivalentes de la factura anulada. El detalle exacto, incluido el formato de cada campo, está en la documentación técnica de la sede de la AEAT; es tarea del fabricante del programa aplicarlo, no tuya.

El encadenamiento: por qué no se puede borrar una factura

El punto clave es el campo «Huella»: cada registro incluye la huella del registro anterior. Eso crea una cadena en la que cada eslabón depende de todos los anteriores.

Ejemplo con datos reales de cálculo

Supongamos una empresa ficticia con NIF B12345678 que emite la factura 2027-0042 por 121,00 € (100 € de base y 21 € de IVA; cifras de ejemplo). La factura anterior, la 2027-0041, tenía esta huella:

62E7982F83C179AC5A61BC95CF9697CDCACE8CB4927500653B9B97062FBD8F5E

El programa une los datos de la nueva factura con esa huella en una cadena de texto con un formato fijo, parecida a esta (ilustrativa):

IDEmisorFactura=B12345678&NumSerieFactura=2027-0042&FechaExpedicionFactura=15-03-2027&TipoFactura=F1&CuotaTotal=21.00&ImporteTotal=121.00&Huella=62E7…8F5E&FechaHoraHusoGenRegistro=2027-03-15T10:24:05+01:00

Al aplicar SHA-256 a esa cadena completa se obtiene la huella de la 2027-0042:

5896C0580DFE66EBBFEA8C6886F314C3D0C5EBE0F1571D07016A4CCCB4C36C07

Si alguien intentara cambiar después el importe a 112,00 €, la huella pasaría a ser:

0E9F14AB4951D4EEBF65DFC2E5398E2D398ADEB867012C1C8EC89BC048D0B72E

No se parece en nada a la original. Y como la factura 2027-0043 lleva dentro la huella original de la 2027-0042, la cadena dejaría de cuadrar a partir de ese punto.

Qué ocurre con cada tipo de manipulación

ManipulaciónQué delata la cadena
Cambiar el importe de una facturaSu huella cambia y no coincide con la que guarda el registro siguiente.
Borrar una facturaEl registro siguiente apunta a una huella que ya no existe.
Insertar una factura con fecha antiguaNo encaja en la cadena sin recalcular todas las posteriores, y la fecha y hora de generación del registro la delata.
Recalcular toda la cadenaEn VeriFactu, la AEAT ya tiene las huellas originales. En No VeriFactu, cada registro va firmado electrónicamente y hay un registro de eventos.

Hash no es lo mismo que firma electrónica

Es una confusión frecuente. La huella demuestra que los datos no han cambiado respecto a una referencia, pero cualquiera podría calcularla. La firma electrónica, en cambio, demuestra quién ha generado el registro, porque requiere un certificado. Por eso:

  • En modalidad VeriFactu basta con la huella: el envío inmediato a la AEAT hace de garantía.
  • En modalidad No VeriFactu, además de la huella, cada registro debe ir firmado electrónicamente.

Lo comparamos con más detalle en diferencias entre VeriFactu y No VeriFactu.

¿La huella aparece en la factura?

No. La huella queda en el registro de facturación, no impresa en la factura. Lo que sí aparece es el código QR, que contiene el NIF del emisor, el número, la fecha y el importe, para que el cliente pueda cotejar la factura. Lo explicamos en qué contiene el código QR de las facturas VeriFactu.

Qué implica la huella para tu forma de trabajar

  • Una factura emitida es definitiva. Si te equivocas, emites una factura rectificativa, que genera su propio registro en la cadena.
  • Si una factura se registró por error y no llegó a expedirse, el programa genera un registro de anulación, que también se encadena. El registro original no desaparece.
  • No mezcles programas sin control. Si facturas con dos sistemas distintos, cada uno debe cumplir el reglamento por su cuenta.
  • Revisa antes de emitir. El NIF del cliente, la fecha y el importe pasan a formar parte de la cadena en cuanto pulsas «emitir».

Esta misma técnica de encadenar huellas se usa en otros ámbitos donde importa demostrar que un registro no se ha tocado, como el registro de jornada o los registros notariales electrónicos. No es una invención de Hacienda, sino un método estándar de integridad.

Huellas y VeriFactu, sin que tengas que pensar en ellas

En Gestonet la huella, el encadenamiento, el QR y el envío a la AEAT los gestiona el sistema al emitir cada factura del portal del cliente. Las correcciones se hacen con rectificativas, nunca borrando, y la gestoría ve el estado de cada envío. Si quieres verlo en funcionamiento, conoce Gestonet.

Preguntas frecuentes

¿Qué algoritmo se usa para calcular la huella de una factura VeriFactu?

SHA-256, según las especificaciones técnicas de la Orden HAC/1177/2024. Produce un código de 64 caracteres hexadecimales.

¿Tengo que calcular yo la huella?

No. La calcula el programa de facturación de forma automática al generar cada registro. Tu responsabilidad es usar un programa adaptado y no manipularlo.

¿Qué pasa si borro una factura en un sistema con huella encadenada?

Un sistema adaptado no debe permitirlo. Si se forzara, el registro siguiente apuntaría a una huella inexistente y la manipulación quedaría a la vista. Los errores se corrigen con rectificativas o registros de anulación.

¿El cliente puede ver la huella de mi factura?

No en la factura. El cliente ve el código QR, que contiene el NIF del emisor, el número, la fecha y el importe para cotejarla en la AEAT.

Fuentes oficiales

¿Te ayudamos?

Habla con nosotros

Cuéntanos tu caso y te enseñamos cómo lo resolvemos con Gestonet para gestorías, sin compromiso.

  • Demostración personalizada
  • Lanzamiento: 3 €/mes por cliente, sin permanencia

Solicita información

Te respondemos en menos de 24 horas laborables.

Solicita una demo