Arabia Saudyjska wdrożyła obowiązkowe e-fakturowanie w dwóch fazach za pośrednictwem ZATCA (Zakat, Tax and Customs Authority), pod nazwą Fatoorah. Faza 1 (od grudnia 2021 roku) już wymagała generowania i przechowywania ustrukturyzowanych faktur elektronicznych. Faza 2 idzie znacznie dalej: bezpośrednia integracja techniczna z platformą urzędu.
Kogo dotyczy: każdej firmy zarejestrowanej do saudyjskiego VAT. ZATCA grupuje podatników w waves według rocznego obrotu i powiadamia ich z co najmniej sześciomiesięcznym wyprzedzeniem. Wave 23 i 24 obejmują MŚP z niższymi progami przychodów, które włączają się do systemu w latach 2025-2026.
Czym dokładnie jest Faza 2 (Integration Phase)
Faza 2 jest znana jako Integration Phase. Samo wygenerowanie faktury już nie wystarcza: Twój system fakturowania musi łączyć się przez API z platformą ZATCA (Fatoora) i stosować określony format oraz cykl walidacji.
ZATCA rozróżnia dwa typy dokumentów o różnych przepływach:
- Standard Tax Invoice (B2B/B2G): wymaga clearance. Faktura jest wysyłana do ZATCA przed przekazaniem jej klientowi; ZATCA ją waliduje, opatruje kryptograficzną pieczęcią i zwraca jako zatwierdzoną.
- Simplified Tax Invoice (B2C): wymaga reporting. Jest przekazywana klientowi natychmiast wraz z kodem QR, a ZATCA jest o niej informowana w ciągu 24 godzin.
Wymagania techniczne, których nie możesz pominąć
- Faktura w formacie XML UBL 2.1 (lub PDF/A-3 z osadzonym XML) zgodnym ze schematem ZATCA.
- Podpis kryptograficzny certyfikatem wydanym przez ZATCA po onboardingu urządzenia (CSID).
- Łańcuchowy hash (PIH, Previous Invoice Hash), który łączy każdą fakturę z poprzednią i gwarantuje integralność serii.
- Kod QR z polami TLV (nazwa sprzedawcy, NIP/VAT, data, suma, VAT oraz pieczęć kryptograficzna) czytelny dla aplikacji ZATCA.
- Unikalny UUID dla każdej faktury oraz sekwencyjny licznik (ICV), który ZATCA weryfikuje, aby wykryć luki.
Jak to działa w Odoo 19
Nasz moduł integruje cały ten cykl w natywnym przepływie fakturowania Odoo, bez zewnętrznych back-office'ów. Gdy potwierdzasz fakturę, Odoo generuje XML UBL, oblicza łańcuchowy hash, wysyła go do podpisania certyfikatem ZATCA, buduje kod QR i wykonuje wywołanie clearance lub reporting, zależnie od typu dokumentu.
Każda faktura zapisuje swój status wobec ZATCA (zaakceptowana, zaakceptowana z ostrzeżeniami lub odrzucona), komunikat urzędu oraz zwróconą pieczęć. Jeśli ZATCA odrzuci dokument, powód zostaje zapisany w samej fakturze, aby można było go poprawić i wysłać ponownie, bez utraty śladu zmian.
Na co zwrócić uwagę przed terminem
- Potwierdź swój wave i dokładną datę w piśmie powiadamiającym od ZATCA: okno integracji otwiera się z miesięcznym wyprzedzeniem, ale termin jest ostateczny.
- Czyste dane podstawowe: NIP/VAT, adres, kod pocztowy i režim VAT muszą być poprawne w Odoo, inaczej clearance zakończy się niepowodzeniem.
- Najpierw testuj w sandboxie ZATCA: onboarding certyfikatu i pierwsze faktury muszą zostać zwalidowane w środowisku testowym, zanim przejdziesz na produkcję.
- Nie mieszaj serii: łańcuchowy hash (PIH) wymaga ciągłej numeracji; przeskok lub zduplikowana faktura zrywa łańcuch.
ZATCA Faza 2 nie jest kosmetycznym dodatkiem: to zmiana w sposobie wystawiania każdej faktury. Wykonana porządnie w Odoo, jest niewidoczna dla zespołu fakturującego; wykonana połowicznie, kończy się odrzuconymi fakturami i codzienną pracą ręczną.
Co robimy w tym zakresie
Potrzebujesz spełnić wymogi ZATCA Faza 2 w swoim Odoo?
Zarezerwuj rozmowę przez Calendly lub zadzwoń do nas pod numer +34 616 809 504, a przejrzymy Twój wave, onboarding i sposób integracji clearance z fakturowaniem w Odoo.

