Skip to Content
Menu

Saudi Arabia E-Invoicing | Phase 2

Odoo in collaboration with ZATCA and SMAC solutions

ZATCA Phase II Requirements



Getting Ready

1. Upgrade your database to V15 or V16

  • The E-invoicing feature will only be introduced to Odoo V15 and V16 and future versions.
  • Note that upgrades take time, start your upgrade as soon as possible.

2. Fatoora Platform Username and Password 

  • If you are already registered with ZATCA, your company should have a username and a password  ready to be used to log in Fatoora portal.
  • Make sure you have timely access to the phone number registered on ZATCA to access the OTP to be received from the portal within 2 minutes.



Set up of Simulation Fatoora Portal Access

1. Log in on “Fatoora” Platform

  • Both Fatoora and Simulation Fatoora portal are accessible through the same platform.

2. Activate Simulation Fatoora Platform

  • It is important to always make sure you are accessing the Simulation part of the platform to ensure your testing is not reflected on the actual platform.
  • This step should be done to give you the flexibility you need in terms of testing your invoicing workflow from different aspects, without holding responsibility to the testing invoices.
  • Note that you may face fines/be liable to the testing invoices if you do not activate simulation portal at this stage.

3. Onboard New device

  • For each sales journal we will use on Odoo, we will need to onboard one device. As a result, we will get one OTP from Simulation Fatoora portal for each Journal.
  • Note that usually, people tend to use one Journal per branch or shop they have.
  • Also note that each OTP is active for one hour only.


Odoo Database Set-up

Apps to install

Download the Following Apps:


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)



Contacts:

Fill the customers/vendors contact information following the steps below:

  • Full Company Name
  • Full address including country, state, city, neighborhood, building number, plot number, zip code, and identification scheme using the company registration number and VAT number.
  • If the customer is an individual, fill their full name and any additional information as per your CRM needs.
  • Make sure to use the selection on the top left to indicate your customer is a company or an individual.



Invoice Layout

  • Go to settings, search for configure document layout
  • Fill your company information on the appropriate place to ensure full compliance to ZATCA rules
  • Use the other fields to fill your other information in the right places (footer, company tagline)
  • Add your company logo



Activate the Corresponding Environment

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



Journals set up on Simulation portal

  • Assign a serial number for each journal, you can choose any unique serial number for your company.
  • For each sales type Journal you have on the database, go to the ZATCA tab. Click on Onboard journal, paste the onboarding new device OTP you got from Fatoora portal.
  • Make sure you are using developer mode to have visibility over all fields there.
  • If you face any issues during the onboarding, click on regenerate CSR, and repeat the steps.



Testing

  1. Create your invoices using the Odoo standard workflow. After 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.



Testing results

  1. Always follow up with the invoices received statistics page on your Fatoora Simulation portal to be aligned with the status of your invoices.
  2. Odoo will send you back the portal response on each invoice after the submission. Only rejected invoices will have the option to reset to draft and edit on Odoo.
  3. To ensure you are fully onboarded on the solution, make sure to use the simulation portal for a reasonable amount of time that will cover your corner cases in invoicing.
  4. It is highly recommended to use the simulation portal environment with daily invoicing for a period not less than 1 month or to cover your full invoicing cycle.
  5. 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.
  6. After testing your full invoicing workflow on simulation portal, preferably with real invoices, you can switch your environment to the actual one.


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!
  6. For any support inquiries, kindly raise a ticket on odoo.com/help


Use Cases: POS

If you’re using POS, create a dedicated sales journal for each shop, onboard each journal, and assign it to the shop on POS module.

Invoicing in POS will be done automatically as all POS orders will be invoiced on the accounting app, so that your invoices are sent automatically to Fatoora Portal

Create a cash customer “Individual” to use on POS orders, or create your actual walk in customers to manage your CRM in Odoo.


Use Cases: 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



Use Cases:  Retention & zero percent taxes

Zero Percent taxes

  • In the event of using a zero percent tax in a customer invoice, make sure to state the reason behind the zero percent usage by choosing it on the tax. Feel free to duplicate the tax to keep the reasons saved (Dont forget to keep the original account and tags) 

Retention & Withholding

  • In the event of using retention or withholding an amount in a customer invoice, please indicate that on the tax used to retain the amount.



 

Sign in to leave a comment
Odoo S.A. Announces €150m Investment from General Atlantic to Support Continued Global Growth
We look forward to working together, as we embark on an exciting journey of expanding Odoo's presence worldwide!