Arabia Saudí ha desplegado la facturación electrónica obligatoria en dos fases a través de ZATCA (Zakat, Tax and Customs Authority), bajo el nombre Fatoorah. La Fase 1 (desde diciembre de 2021) ya exigía generar y conservar facturas electrónicas estructuradas. La Fase 2 va mucho más allá: integración técnica directa con la plataforma de la autoridad.
A quién afecta: a toda empresa registrada en el IVA saudí. ZATCA agrupa a los contribuyentes en waves según facturación anual y los notifica con al menos seis meses de antelación. Las waves 23 y 24 corresponden a PYMES con umbrales de ingresos más bajos, que se integran a lo largo de 2025-2026.
Qué es exactamente la Fase 2 (Integration Phase)
La Fase 2 se conoce como la Integration Phase. Ya no basta con generar la factura: tu sistema de facturación debe conectarse por API con la plataforma de ZATCA (Fatoora) y seguir un formato y un ciclo de validación concretos.
ZATCA distingue dos tipos de documento con flujos distintos:
- Standard Tax Invoice (B2B/B2G): requiere clearance. La factura se envía a ZATCA antes de entregarla al cliente; ZATCA la valida, la sella criptográficamente y la devuelve autorizada.
- Simplified Tax Invoice (B2C): requiere reporting. Se entrega al cliente al instante con su QR y se informa a ZATCA dentro de las 24 horas siguientes.
Requisitos técnicos que no puedes saltarte
- Factura en formato XML UBL 2.1 (o PDF/A-3 con XML incrustado) según el esquema de ZATCA.
- Firma criptográfica con un certificado emitido por ZATCA tras el onboarding del dispositivo (CSID).
- Hash encadenado (PIH, Previous Invoice Hash) que enlaza cada factura con la anterior y garantiza la integridad de la serie.
- Código QR con campos TLV (nombre del vendedor, NIF/VAT, fecha, total, IVA y el sello criptográfico) legible por la app de ZATCA.
- UUID único por factura y un contador secuencial (ICV) que ZATCA verifica para detectar huecos.
Cómo funciona en Odoo 19
Nuestro módulo integra todo este ciclo dentro del flujo de facturación nativo de Odoo, sin back-offices externos. Cuando confirmas una factura, Odoo genera el XML UBL, calcula el hash encadenado, lo envía a firmar con el certificado de ZATCA, construye el QR y hace la llamada de clearance o reporting según el tipo de documento.
Cada factura guarda su estado frente a ZATCA (aceptada, aceptada con avisos o rechazada), el mensaje de la autoridad y el sello devuelto. Si ZATCA rechaza un documento, el motivo queda registrado en la propia factura para poder corregirlo y reenviarlo, sin perder la trazabilidad.
Qué vigilar antes de tu fecha límite
- Confirma tu wave y la fecha exacta en la carta de notificación de ZATCA: la ventana de integración se abre con meses de antelación pero tiene un plazo en firme.
- Datos maestros limpios: el NIF/VAT, la dirección, el código postal y el régimen de IVA deben estar correctos en Odoo o el clearance fallará.
- Prueba primero en el sandbox de ZATCA: el onboarding del certificado y las primeras facturas deben validarse en el entorno de pruebas antes de pasar a producción.
- No mezcles series: el hash encadenado (PIH) exige una numeración continua; un salto o una factura duplicada rompe la cadena.
ZATCA Fase 2 no es un añadido cosmético: es un cambio en cómo se emite cada factura. Hecho bien dentro de Odoo, es transparente para el equipo de facturación; hecho a medias, se convierte en facturas rechazadas y trabajo manual cada día.
¿Necesitas cumplir ZATCA Fase 2 en tu Odoo?
Reserva una llamada por Calendly o llámanos al +34 616 809 504 y revisamos tu wave, tu onboarding y cómo integrar el clearance en tu facturación Odoo.
