Saudi Arabia – ZATCA E-Invoicing Phase 2 in Odoo

Abblez_odoo_partner
WhatsApp us

Category

ZATCA E-Invoicing | Phase 2

Saudi Arabia’s ZATCA E-Invoicing Phase 2 is transforming the way businesses handle invoicing and tax compliance. As the Kingdom moves towards full digitalization, companies must integrate their systems with ZATCA’s Fatoora platform to ensure seamless invoice generation, reporting, and validation. This phase introduces real-time connectivity, structured invoice formats, and enhanced regulatory oversight, making compliance both a challenge and an opportunity. With Odoo ERP, businesses can effortlessly meet ZATCA’s requirements, automating invoicing while optimizing operations. In this blog, we’ll explore how Odoo simplifies E-Invoicing Phase 2 compliance and helps businesses stay ahead.

How to Configure ZATCA in Odoo

E-Invoicing feature is available from V15 onwards

  • The E-invoicing feature will only be introduced to Odoo V15 and available on all the future versions like V16, V17, V18 and continues.

Fatoora Platform Username and Password

  • If your company is already registered with ZATCA, you should have a username and password ready for logging into the Fatoora portal.

Fatoora Platform Username and Password

  • If your company is already registered with ZATCA, you should have a username and password ready for logging into the Fatoora portal.
  • Ensure timely access to the phone number registered with ZATCA, as the OTP from the portal must be received and used within 2 minutes.
ksa-fatoora

Setting up Simulation Fatoora Portal Access

1. Log in to the “Fatoora” Platform

Both the Fatoora and Simulation Fatoora portals can be accessed through the same platform.

2. Activate the Simulation Fatoora Platform

Always ensure you are accessing the Simulation section of the platform to prevent test transactions from being recorded on the actual system.

This step allows flexibility in testing your invoicing workflow from various perspectives without being accountable for the test invoices.

Failure to activate the simulation portal at this stage may result in fines or liability for the test invoices.

fatooralogin

3. Onboard New Device

Each sales journal used in Odoo requires a separate device to be onboarded. Consequently, the Simulation Fatoora portal will generate one OTP for each journal. Typically, businesses use one journal per branch or shop. Additionally, note that each OTP remains valid for only one hour.
fatooralogin

Set up your Odoo Database

Install the required Apps:

Odoo zatka

Your Company Information:
From the settings, update the following company information:

  • Full Company Name
  • Full Company Address: Street, City, State, Zip, Country
  • Building Number, plot identification Note that both fields should have 4 digits each.
  • Neighborhood
  • Identification Scheme
  • Identification Number: It is highly recommended to use the commercial registration number as the identification scheme
  • VAT number
  • Company Currency as (SAR)

Activate the Corresponding Environment

  • Go to Settings, Accounting
  • Under ZATCA API Integration, choose the API Mode as Simulation (Pre-Production)
zatka activation

Setting up Journals on Simulation portal

  • Assign a unique serial number to each journal based on your company’s preference.
  • For every sales journal in your database, navigate to the ZATCA tab, click on Onboard Journal, and enter the OTP received from the Fatoora portal during the onboarding process.
  • Ensure that developer mode is enabled to access all necessary fields.
  • If you encounter any issues during onboarding, click Regenerate CSR and repeat the process.

Testing

  1. Create the invoices using the Odoo workflow and upon confirmation of the invoice, you will have an option to process the invoice now.
  2. If you choose to process the invoice now, Odoo will send it immediately to the portal. If you do not press it, Odoo will send all confirmed but not sent (to the portal) invoices once at the end of the day.
  3. If you are using your Odoo testing/staging database, feel free to send dummy invoices to fully test your workflow on Simulation portal.
  4. If you are using your Odoo live/production database, keep the environment as simulation on the settings page to test all invoicing scenarios that you may face during your sales cycle to ensure you do not have any issues at any point in the future.
  5. Use the simulation portal environment with daily invoicing for a period not less than 1 month or to cover your full invoicing cycle.
  6. Ensure you do not have any rejected invoices on the simulation portal at all times by accessing the statistics of received invoices on the portal.
  7. After testing your full invoicing workflow on simulation portal, preferably with real invoices, you can switch your environment to the actual one.

Testing on Sandbox

Sandbox is a technical environment used for testing. If you would like to use it to test your invoices validity, follow the steps below:

  1. Enable Sandbox testing mode from the settings page
  2. Onboard your Journal, use 123456 as the OTP
  3. Create an invoice, confirm it.
  4. Use the action button on invoices to export the XML file of the invoice.
  5. Go to the sandbox developer portal created by ZATCA
  6. Use the functional validation option
  7. Upload the XML file and validate it

Moving to Live Fatoora

  1. After testing your full invoicing workflow on simulation portal, preferably with real invoices, you can switch your environment to the actual one.
  2. Go to the settings page, set the API Mode as Production, and save your changes.
  3. Note that once you set the environment as Production, you will not be able to switch it back to any other environment.
  4. Go to the Journals you have initially linked to Simulation portal, and repeat the steps with the new OTP generated from your production Fatoora Portal.
  5. Go-live on Fatoora Portal!

Conclusion

ZATCA E-Invoicing Phase 2 is a major step toward digital transformation in Saudi Arabia, ensuring transparency, compliance, and efficiency in business operations. By integrating ZATCA with Odoo ERP, businesses can seamlessly comply with ZATCA regulations while automating their invoicing processes. With Odoo’s well-structured workflow, businesses can efficiently manage e-invoicing, zero compliance risks, and focus on growth. By staying proactive and leveraging the right tools, you can ensure that your business remains fully compliance and future-ready in the evolving Saudi tax landscape.

FAQ

Does Odoo support ZATCA E-Invoicing?

Yes, Odoo supports ZATCA E-Invoicing from version 15 onwards. It automates invoice generation, submission, and validation, ensuring full compliance with Saudi Arabia’s tax regulations.

How do I set up Odoo for ZATCA E-Invoicing Phase 2?

  • Update your company details in Odoo
  • Enable ZATCA API integration in Accounting settings
  • Use the Simulation Portal for testing
  • Onboard your journals using OTP from the Fatoora portal
  • Switch to Production mode after successful testing

What happens if my invoices are rejected on the Fatoora portal?

You should review the rejection reason on the portal, correct any errors in invoice data (e.g., VAT number, format issues), and resend the invoice. Odoo provides logs to track and resolve such issues.

Can I test ZATCA integration before going live?

Yes, Odoo allows testing through the Simulation Portal and Sandbox Mode. You can send test invoices and validate them before switching to the live environment.

What are the penalties for non-compliance with ZATCA Phase 2?

Penalties include fines and legal action. Businesses must ensure all invoices are generated, submitted, and validated correctly to avoid compliance risks.

Can I generate invoices offline if there is an internet issue?

No, real-time integration is mandatory. However, Odoo ensures that invoices are queued and submitted once connectivity is restored.

Ready to Start Your Project?

Let’s bring your vision to life! Get in touch with us today.

WhatsApp us