Facturación con Veri*Factu: requisitos de tu programa de facturación
Qué debe hacer tu software de facturación para cumplir con Veri*Factu: desde la generación de la huella hasta el CSV en el PDF. Lista de comprobación.
Tu programa de facturación es tu SIF
El RD 1007/2023 llama Sistema Informático de Facturación (SIF) al conjunto de aplicaciones que soportan los procesos de facturación de tu negocio. Puede ser un software de escritorio, una aplicación en la nube, una app móvil o incluso un sistema desarrollado a medida. En todos los casos, debe cumplir los mismos requisitos.
Requisitos obligatorios
1. Generación de huella SHA-256
Cada registro de factura debe incluir una huella criptográfica SHA-256 calculada sobre los campos canónicos de la factura (NIF emisor, número de serie, fecha, tipo, importes y huella de la factura anterior). Esta huella es el elemento central del sistema de inalterabilidad.
El formato de los importes en la cadena de cálculo tiene una regla específica: se elimina el cero final cuando el segundo decimal es cero (210.0, no 210.00). Un error en este punto genera el rechazo 2000 de la AEAT.
2. Encadenamiento de registros
La huella de cada factura debe incluir la huella de la factura anterior en la misma serie. El primer registro incluye la indicación PrimerRegistro: S en lugar de la huella anterior. Si el encadenamiento se rompe (por borrado o modificación de una factura intermedia), todas las huellas posteriores son inválidas.
3. Envío SOAP a la AEAT
El software debe enviar los registros de alta y anulación al endpoint SOAP oficial de la AEAT mediante conexión mTLS con el certificado digital del contribuyente. El mensaje XML debe cumplir el esquema SuministroInformacion.xsd.
El envío puede ser en tiempo real o con un máximo de 4 días hábiles de retraso en el régimen de remisión voluntaria (Veri*Factu). En el régimen de suministro inmediato (similar al SII), el plazo es menor.
4. CSV y QR en el PDF
Una vez que la AEAT acepta el registro, devuelve un CSV (Código Seguro de Verificación). El software debe incluir este CSV y un código QR de verificación en el PDF de la factura. El QR enlaza al validador público de la AEAT.
La leyenda VERI*FACTU también debe aparecer en el PDF cuando el sistema opera bajo este régimen.
5. Gestión de reintentos
Si la AEAT no está disponible o responde con un error transitorio, el software debe reintentar automáticamente el envío. Un sistema que falla silenciosamente y no reintenta puede dejar facturas sin registrar sin que el usuario lo sepa.
6. Registro de eventos
El RD 1007/2023 exige mantener un registro de eventos (altas, modificaciones de estado, anulaciones) con marca temporal. Este log es auditable en caso de inspección.
7. Prohibición de doble base de datos
El software no puede tener modos ocultos, bases de datos paralelas ni funcionalidades que permitan ocultar o alterar facturas. Esto incluye la prohibición de borrar o modificar registros ya enviados a la AEAT sin dejar rastro.
Lista de comprobación rápida
| Requisito | ¿Tu software lo cumple? |
|---|---|
| Genera huella SHA-256 encadenada | ✓ / ✗ |
| Envía al SOAP de la AEAT con mTLS | ✓ / ✗ |
| Gestiona reintentos automáticos | ✓ / ✗ |
| Incluye CSV y QR en el PDF | ✓ / ✗ |
| Muestra leyenda VERI*FACTU | ✓ / ✗ |
| Mantiene log de eventos | ✓ / ✗ |
| Tiene declaración responsable del fabricante | ✓ / ✗ |
La declaración responsable: tu documento de protección
El artículo 8 del RD 1007/2023 obliga al fabricante del software a emitir una declaración responsable de conformidad. Pídela a tu proveedor. Sin ella, en caso de inspección, no tienes documentación que acredite que tu software cumplía los requisitos en el momento en que emitiste las facturas.
¿Listo para cumplir con Veri*Factu?
Simple*Factu es la API y aplicación que gestiona el envío de facturas a la AEAT por ti. Empieza gratis.
Crear cuenta gratis