One live stock ledger across warehouses, branches, Salla and Zid, with barcodes, lots and expiry dates built in, for Saudi distributors, retailers and food producers.

The most common reason a Saudi brand oversells on Salla while a branch in Jeddah holds the item is that the storefront, the branches and the accountant each keep their own stock count, and the expiry write-off at month end is the second most common. Odoo Inventory tracks every unit by location, lot or serial and reserves it for the right channel the moment an order lands, with barcode operations, reordering rules and valuation keeping the warehouse and the books in step, which is why Naqlah, Odoo Gold Partner in Saudi Arabia, treats it as the core of almost every product business implementation.
Stock values flow into ZATCA-compliant accounting in SAR on every receipt, delivery and adjustment, so cost of goods sold, the balance sheet and the year-end stock figure that feeds your Zakat base come from the same ledger rather than an estimate. Labels and delivery notes print in Arabic and English with GS1 barcodes where retail chains require them, and lot and expiry tracking give you the traceability SFDA expects for food, cosmetics and medical products, down to which lot went to which customer in a recall. Available quantities are pushed to Salla and Zid through the Naqlah Salla app, and purchase receipts carry FASAH customs, freight and SABER costs through Odoo Purchase landed costs so imported stock is valued correctly.
Channel-safe stock
Salla, Zid, POS branches and sales orders reserve from one pool, and available-to-promise is what each channel sees. The website stops selling the last unit that a branch sold an hour ago.
Expiry under control
Lots carry expiry and alert dates, picking follows first-expired-first-out and reports show what expires in the next 30, 60 or 90 days by location. Waste becomes a managed number instead of a surprise.
Import-ready
Receipts from Jeddah or Dammam port carry customs duty, freight and conformity costs into product value, and the customs reference sits on the receipt for audit. Product cost reflects what it took to get the goods on the shelf.
1. Receipt scanned against the purchase order
The warehouse scans incoming goods, records lots and expiry dates, flags quantity differences and lands import costs on the received products.
2. Put away and valued
Goods are put away to the right location and the valuation entry posts to accounting at the same moment, in SAR.
3. Orders reserve and pick by barcode
Sales, Salla, Zid and POS orders reserve stock by channel priority and the picker follows a barcode-guided list, first-expired-first-out where tracking applies.
4. Delivery validated and invoice triggered
The delivery is validated, the carrier label prints through the carrier integrations Naqlah connects, tracking goes to the customer and the invoice is generated.
Timelines depend on the number of locations and SKUs, and Naqlah gives you a clear roadmap in the first consultation.
| Area | Before | With Odoo via Naqlah |
|---|---|---|
| Stock visibility | One spreadsheet per branch, reconciled monthly | Live quantity per location, lot and serial |
| Online stock | Salla or Zid quantities updated by hand | Available quantity synced from one pool |
| Expiry | Discovered on the shelf or by the customer | First-expired-first-out picking and expiry alerts |
| Counting | Annual count that closes the warehouse | Cycle counts by barcode with adjustment reasons |
| Valuation | Year-end estimate for the auditor | Posted to accounting on every move |
| Transfers | WhatsApp requests between branches | Tracked transfers with transit and receipt confirmation |
Everything else, we cover in a free 30-minute consultation.
Free consultation. Meet the team and get a clear roadmap in one call.