ZATCA Phase 2 Fatoora — Wave Tracker, Onboarding Assistant and Audit Log
by FlexigoTech https://flexigotech.com$ 54.90
Saudi Arabia · ZATCA Phase 2 · Odoo 19
ZATCA Phase 2 Fatoora: wave tracker, onboarding assistant and audit log
Odoo already ships the official ZATCA connector (l10n_sa_edi, included in Community).
This app sits on top of it and adds what a Saudi SME needs to get onboarded on time and keep an eye on every submission.
What Odoo's l10n_sa_edi does (installed automatically)
- CSR, compliance CSID and production CSID with ZATCA
- UBL 2.1 XML, signature, hash chain and QR code
- Clearance of standard (B2B) invoices and reporting of simplified (B2C) invoices
What this app adds
- Phase 2 wave tracker with ZATCA's published thresholds and deadlines (waves 21 to 25)
- Seven-step onboarding of your sales journals, showing ZATCA's answer at each step
- PCSID renewal with the OTP from the Fatoora portal
- Append-only log of every call to ZATCA, with secrets removed
- Compliance-check results per journal and document type
- Alerts, compliance dashboard and bulk retry
Which wave are you in?
ZATCA rolls Phase 2 out in waves and notifies each taxpayer of its wave at least six months in advance. The app keeps ZATCA's published criteria, suggests a wave from the invoicing recorded in Odoo, counts the days left and raises an alert 60 days before the deadline if no journal is onboarded.
| Wave | Revenue subject to VAT above | Reference years | Integrate by |
|---|---|---|---|
| 22 | SAR 1,000,000 | 2022, 2023 or 2024 | 31 December 2025 |
| 23 | SAR 750,000 | 2022, 2023 or 2024 | 31 March 2026 |
| 24 | SAR 375,000 | 2022, 2023 or 2024 | 30 June 2026 |
| 25 | SAR 187,500 | 2022, 2023, 2024 or 2025 | 1 February 2027 |
Sources: ZATCA news releases for waves 22, 24 and 25 (linked on each wave record in the app). The wave 23 figures could not be checked on zatca.gov.sa and are flagged as unverified in the app. The notification ZATCA sends you is what counts.
Onboarding, step by step
- Company VAT number (TRN) and address check
- Your Phase 2 wave
- Environment (developer portal, simulation or production) and sales journals
- CSR generation
- Compliance CSID with the OTP generated on fatoora.zatca.gov.sa
- The six compliance checks (standard and simplified invoice, credit note, debit note)
- Production CSID
Each step calls ZATCA through Odoo's own connector. If ZATCA refuses something, you see its message and error code on the spot, and the call is kept in the audit log.
Alerts
- Production CSID expiring within 30 days, or expired
- Invoices rejected by ZATCA, or waiting after a server error
- Simplified invoices close to the 24-hour reporting limit
- Wave deadline approaching without an onboarded journal
Audit log
Every request to ZATCA is logged with endpoint, HTTP status, ZATCA status, duration and the linked invoice or journal. Log entries cannot be edited or deleted. The CSID secret, the OTP, the authorization header and private keys are removed before saving.
Frequently asked questions
Does it replace Odoo's l10n_sa_edi?
No. It depends on it and installs it. ZATCA submission, signing and QR codes stay in Odoo's official module.
Does it work on Odoo Community?
Yes. l10n_sa_edi and this app both run on Community and Enterprise.
Can I try it without a ZATCA account?
Yes. Choose the developer portal environment: ZATCA accepts its shared test OTP there, so you can run the whole onboarding and submit test invoices. Simulation and production need an OTP from your Fatoora portal.
Several companies?
Each company has its own wave, journals, CSIDs, alerts and log, isolated by Odoo's multi-company rules.
Is support included?
Yes, by email at comercial@flexigotech.com.
Odoo 19 Community and Enterprise · one-off purchase
flexigotech.com
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) |
| Lines of code | 1569 |
| Technical Name |
flexigo_ksa_zatca_phase_2_sme_wave_23_24_for_odoo_19 |
| License | OPL-1 |
| Website | https://flexigotech.com |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module