A point of sale that issues ZATCA simplified invoices, takes mada and keeps every branch's stock and books in sync, for Saudi retailers, cafes and restaurant chains.

Saudi retailers and cafe chains typically run a standalone cashier system per branch, reconcile mada terminal reports by hand, and update stock and the accountant at the end of the day, which is when they discover the receipt was not a valid simplified e-invoice. Odoo Point of Sale runs in a browser or on a tablet, keeps selling when the internet drops, and posts every receipt to inventory and accounting as a ZATCA simplified invoice, with retail and restaurant modes managed from one back office by Naqlah, Odoo Gold Partner in Saudi Arabia.
Every receipt is a simplified e-invoice with the ZATCA QR code, UUID and cryptographic stamp, reported to Fatoora within the required window through the Odoo Saudi localization, so a ZATCA inspector scanning a receipt in your Jeddah branch finds a valid invoice. Receipts print in Arabic and English with 15% VAT shown, each branch runs its own onboarded journal, and VAT, cash and margin report per branch and consolidated. For chains that keep Foodics at the counter, Naqlah's Foodics integration syncs sales, payments and stock consumption into Odoo, and Salla orders share the same catalog and stock pool as the branches.
Fatoora onboarding per branch journal
Each branch sales journal is onboarded with its own serial number and OTP, tested in simulation and then moved to production. Naqlah handles the sequence so no branch goes live with an unregistered device.
mada first
Terminals from PayTabs, Paymob or your bank are integrated so the amount is pushed to the device and the payment comes back confirmed. No retyping, no mismatch at session close, and STC Pay and Apple Pay sit beside it.
Branch reporting that matches the books
VAT by branch, cash by session, margin by product and shrinkage by location come from the same receipts that posted to accounting. The accountant stops exporting POS reports into Qoyod.
1. Items scanned, payment taken on the terminal
The cashier scans barcodes or picks from the menu, applies loyalty or a promotion, and sends the amount to the mada terminal or records cash.
2. Receipt printed with the ZATCA QR
The simplified invoice prints in Arabic and English with the QR code, or a standard invoice if the customer gave a VAT number.
3. Stock deducted at the branch
Sold items leave branch stock in Odoo Inventory, recipes consume ingredients in restaurant mode, and reordering rules react to the day's sales.
4. Reported to Fatoora and posted to accounting
The invoice is reported to ZATCA, the sale and payment post to the journal, and the session close reconciles cash and terminal totals.
Timelines depend on the number of branches and the devices involved, and Naqlah gives you a clear roadmap in the first consultation.
| Area | Before | With Odoo via Naqlah |
|---|---|---|
| Receipts | Non-compliant receipts or manual QR workarounds | ZATCA simplified invoice with QR on every sale |
| Payments | Separate terminal, totals matched by hand at close | Integrated mada, STC Pay and Apple Pay, reconciled per session |
| Stock | Updated at day end or by the weekly count | Deducted per receipt, recipes consumed in restaurant mode |
| Branches | Separate databases and prices per branch | One back office with branch pricelists and availability |
| Accounting | POS report exported to Qoyod or Daftra monthly | Sales and payments posted automatically per journal |
| Loyalty | Points valid in one branch only | Chain-wide points, gift cards and eWallet, online too |
Everything else, we cover in a free 30-minute consultation.
Free consultation. Meet the team and get a clear roadmap in one call.