Ir al contenido
EN

España — Verifactu

Zentto dispone de una primera fase técnica para Verifactu: genera el XML del registro, la huella SHA-256 encadenada y la URL de validación QR. La firma XAdES y el envío SOAP a la AEAT todavía no están implementados; por tanto, esta versión no debe presentarse como integración oficial completa.

Estado técnico actual del soporte Verifactu

Capacidad Estado actual
Generar XML del registro Disponible en POST /v1/fiscal/generators/verifactu
Calcular huella SHA-256 Disponible en verifactu-xml.generator.ts
Construir URL QR de AEAT Disponible para pruebas o producción según el parámetro de entorno
Firma XAdES con certificado X.509 Pendiente
Envío SOAP a AEAT Pendiente; el plugin responde NOT_IMPLEMENTED
SII No existe una integración SII verificable en el módulo fiscal actual

Este decreto establece que todos los software de facturación en España deben cumplir con requisitos que garanticen la integridad, conservación, accesibilidad, legibilidad, trazabilidad e inalterabilidad de los registros de facturación.

  • Registro de facturación: cada factura genera un registro inmutable.
  • Encadenamiento hash: cada registro incluye un hash que lo vincula con el anterior.
  • Código QR: cada factura incluye un QR con datos verificables.
  • Envío a la AEAT: requisito del modo correspondiente; la conexión SOAP aún está pendiente en Zentto.
  • No manipulación: el software no puede permitir la alteración de registros.

El generador actual calcula la huella con los campos canónicos de la factura, el hash anterior y la fecha/hora del registro:

Hash(N) = SHA-256(campos_canónicos_N + Hash(N-1) + timestamp_N)

Cada registro de facturación incluye:

Campo Descripción
NIF emisor Identificación fiscal del emisor
Número factura Número único del documento
Fecha expedición Fecha de emisión
Tipo factura Completa, simplificada, rectificativa
Base imponible Importe antes de impuesto
Cuota IVA Impuesto calculado
Hash anterior Hash del registro previo en la cadena
Hash actual SHA-256 calculado

La URL QR generada por verifactu-xml.generator.ts contiene:

  • URL de verificación en la AEAT.
  • NIF del emisor.
  • Número y serie de factura.
  • Fecha de expedición.
  • Importe total.

El generador devuelve la URL de validación que debe convertirse en QR dentro del documento final. La existencia de esa URL no implica que el registro haya sido firmado o enviado: esas dos etapas siguen pendientes.

El SII es un flujo diferente de Verifactu. La API actual no contiene un cliente SII verificable, por lo que no se documenta como capacidad disponible. Antes de ofrecerlo se necesitarían, como mínimo:

  • generación de los libros y XML exigidos por el servicio;
  • firma con el certificado de la empresa;
  • transporte, reintentos y registro de respuestas de la AEAT;
  • pruebas contra el entorno oficial correspondiente.
Tipo Tasa Aplicación
General 21% Productos y servicios estándar
Reducido 10% Alimentos, transporte, hostelería
Superreducido 4% Pan, leche, libros, medicamentos
Exento 0% Servicios médicos, educación, seguros
Tipo Código Uso
Factura completa F1 Factura estándar
Factura simplificada F2 Ticket (hasta 400 EUR)
Factura rectificativa por sustitución R1 Corrección
Factura rectificativa por diferencias R5 Ajuste parcial

La configuración fiscal de la API admite país ES, moneda EUR, activación de Verifactu, modo manual o auto y endpoint AEAT. El valor predeterminado es manual y apunta al endpoint de pruebas. Aunque se seleccione auto, el plugin de envío continúa devolviendo NOT_IMPLEMENTED; no hay evidencia en el frontend actual de una pantalla completa para cargar certificados o series.