# VeriFactu

## Qué es VeriFactu

VeriFactu es el sistema de facturación electrónica establecido por el RD 1007/2023 y la Orden HAC/1177/2024. Aplica a todos los **Sistemas Informáticos de Facturación (SIF)** que operan en España.

Su objetivo es garantizar la trazabilidad de las facturas y prevenir el fraude fiscal. Cada factura genera una huella digital (hash) que se encadena con la anterior, formando un registro inmutable verificable por la AEAT.

## Cómo cumple Frihet

El cumplimiento VeriFactu en Frihet está **siempre activo**. No hay toggle, no hay configuración extra, no hay módulo que activar. Frihet es uno de los pocos ERP que incluye VeriFactu de serie en todos los planes -- consulta las [funcionalidades completas](https://www.frihet.io/es/features).

Todo ocurre en segundo plano al crear o modificar facturas:

- El hash SHA-256 se calcula automáticamente en el servidor
- El código QR se genera en cada PDF
- Los campos fiscales se bloquean tras el registro
- La cadena de hash se mantiene de forma continua

El usuario no necesita hacer nada especial para cumplir con VeriFactu.

## Cadena de hash SHA-256

Cada factura genera un hash SHA-256 en el servidor. Este hash se encadena con el hash de la factura anterior, formando una cadena inmutable que garantiza la integridad del registro.

### Hash de Alta

Al crear una factura, el hash se calcula a partir de 8 campos:

| Campo                  | Descripción                                |
| ---------------------- | ------------------------------------------ |
| NIF emisor             | Identificación fiscal del emisor           |
| Número de factura      | Número completo (serie + secuencia)        |
| Fecha expedición       | En formato DD-MM-YYYY                      |
| Tipo factura           | F1, F2, R1-R5                              |
| Cuota total impuestos  | Suma de todos los impuestos                |
| Importe total          | Total de la factura                        |
| Hash anterior          | Hash de la factura inmediatamente anterior |
| Fecha/hora de registro | Timestamp del momento de generación        |

### Hash de Anulación

Al cancelar una factura, se genera un hash de anulación con 5 campos:

| Campo                  | Descripción                              |
| ---------------------- | ---------------------------------------- |
| NIF emisor             | Identificación fiscal del emisor         |
| Número de factura      | Número del documento cancelado           |
| Fecha expedición       | Fecha original de la factura             |
| Hash anterior          | Hash de la factura anterior en la cadena |
| Fecha/hora de registro | Timestamp de la anulación                |

Los campos críticos del hash son inmutables una vez calculado. No se pueden editar después de la generación del hash.

## Tipos de factura (TipoFactura)

Frihet asigna automáticamente el tipo de factura según las características del documento:

| Código | Tipo                                   | Descripción                                          |
| ------ | -------------------------------------- | ---------------------------------------------------- |
| F1     | Factura completa                       | Factura estándar (asignada por defecto)              |
| F2     | Factura simplificada                   | Facturas menores de 400 EUR sin NIF del destinatario |
| R1     | Rectificativa (art. 80.1-2, 80.6 LIVA) | Errores, descuentos retroactivos (más común)         |
| R2     | Rectificativa (art. 80.3 LIVA)         | Concurso de acreedores                               |
| R3     | Rectificativa (art. 80.4 LIVA)         | Crédito total o parcialmente incobrable              |
| R4     | Rectificativa (resto)                  | Otros supuestos                                      |
| R5     | Rectificativa simplificada             | Rectificativa de factura simplificada                |

F2 se asigna automáticamente cuando el importe es inferior a 400 EUR y el destinatario no tiene NIF.

## Claves de régimen de IVA (ClaveRegimenIVA)

La clave de régimen identifica el tipo de operación fiscal. Frihet asigna el régimen general (01) por defecto.

| Código | Régimen                                 |
| ------ | --------------------------------------- |
| 01     | Régimen general                         |
| 02     | Exportación                             |
| 03     | Régimen especial de bienes usados       |
| 04     | Régimen especial de oro de inversión    |
| 05     | Régimen especial de agencias de viaje   |
| 06     | Régimen especial de grupos de entidades |
| 07     | Régimen especial del criterio de caja   |
| 08     | Operaciones sujetas a IPSI/IGIC         |

## QR AEAT en facturas

Todas las facturas PDF generadas por Frihet incluyen un código QR de verificación que enlaza a la sede electrónica de la AEAT.

**Formato de la URL del QR:**

```
https://www2.agenciatributaria.gob.es/wlpl/TIKE-CONT/ValidarQR?nif={NIF}&numserie={NUM}&fecha={DD-MM-YYYY}&importe={TOTAL}
```

Junto al QR aparece el texto: _"Factura verificable en la sede electrónica de la AEAT"_.

:::info
El código QR solo aparece cuando el perfil fiscal tiene un NIF configurado en **Configuración** → **Perfil fiscal**.
:::

## Declaración responsable del software

La declaración responsable cumple con el Art. 20 del RD 1007/2023. Es visible en **Configuración** → **Perfil fiscal** y contiene los siguientes datos:

| Campo          | Valor                                                            |
| -------------- | ---------------------------------------------------------------- |
| Software       | Frihet ERP v1.0                                                  |
| Fabricante     | (Se configura en **Ajustes** > **Cumplimiento** > **VeriFactu**) |
| NIF fabricante | (Se configura en **Ajustes** > **Cumplimiento** > **VeriFactu**) |
| Cadena de hash | SHA-256                                                          |
| Normativa      | RD 1007/2023, Orden HAC/1177/2024                                |

## Relación con modelos fiscales

VeriFactu se centra en la trazabilidad de las facturas (hash, QR, inmutabilidad). Los [modelos fiscales trimestrales](./modelos-fiscales) son un paso adicional donde se calculan las declaraciones a presentar ante Hacienda:

- [Modelo 303 (IVA)](./modelo-303) — para Península y Baleares
- [Modelo 420 (IGIC)](./modelo-420) — para Canarias
- [Modelo 130 (IRPF)](./modelo-130) — para todos los autónomos

Los datos VeriFactu (tipo de factura, clave de régimen) se incluyen automáticamente en los [libros registro](./libro-registro) exportados por Frihet.

## Fase 3: Envio a la AEAT

La Fase 3 de VeriFactu permite el envio automatico de los registros de facturacion directamente a la AEAT mediante mensajes SOAP/XML firmados con certificado digital. Con esta fase activa, cada factura emitida o anulada se transmite al sistema SII de la AEAT en segundo plano.

El envio requiere un certificado digital vigente (.pfx o .p12) configurado en **Ajustes** > **Cumplimiento**. Se puede activar en modo sandbox para pruebas antes de pasar a produccion.

Para la documentacion completa sobre configuracion, estados de envio, reintentos y solucion de problemas, consulta la [guia de Envio a la AEAT](./verifactu-fase3).

:::info Calendario de obligatoriedad
Sociedades (S.L., S.A.): 1 de enero de 2027. Autonomos: 1 de julio de 2027 (RDL 15/2025).
:::

## Normativa aplicable

- **Ley 11/2021** (Ley Antifraude) — Art. 29.2.j) LGT
- **RD 1007/2023** — Reglamento VeriFactu (RRSIF)
- **Orden HAC/1177/2024** — Especificaciones técnicas
- **RDL 15/2025** — Extensión de plazos

---

**Siguiente:** [Envio a la AEAT (Fase 3)](./verifactu-fase3) | [Inmutabilidad y registro](./inmutabilidad)
