Multi-Company ERP

Odoo Multi-Company Setup in Saudi Arabia: Intercompany Journals, Consolidated Reporting, and Entity-Level Zakat/VAT

Saudi conglomerates and holding companies running separate entities on spreadsheets spend weeks consolidating reports that Odoo produces in minutes. This guide covers how to configure Odoo's multi-company framework for Saudi holding structures — intercompany elimination, entity-level Zakat/VAT, and SOCPA-compliant consolidated statements.

iWesabe Editorial TeamMarch 1, 202610 min read

Saudi holding companies — family conglomerates, Vision 2030 sector plays, joint ventures with sovereign funds — all share the same problem: each subsidiary generates its own financial data, but the board needs one consolidated view. Running that on spreadsheets means month-end takes two to three weeks, intercompany eliminations happen manually, and entity-level Zakat calculations are reconciled outside the system.

Odoo's multi-company module is built for exactly this structure. One database, multiple legal entities, shared master data where it makes sense, and strict separation where it doesn't. This guide covers the configuration decisions that Saudi holding groups need to make — entity types, intercompany automation, consolidation reporting, and entity-level Zakat/VAT compliance.

Saudi Multi-Company Structures: What Odoo Manages

Not every entity in a Saudi group needs the same configuration. Odoo maps directly to the legal and operational structure of Saudi conglomerates — from the listed parent to SPEs created for Vision 2030 projects.

Saudi entity types and Odoo multi-company configuration
Entity typeTypical KSA exampleOdoo company setupShared with parent?
Holding / parentFamily group HQ, listed JSCStandalone company; owns chart of accounts for consolidationNo — separate CoA, separate Zakat
Wholly owned subsidiaryOperating company 100% ownedSeparate company; intercompany rules auto-post mirror journalsProducts, vendors, contacts (optional)
Joint venture (≥50% held)JV with Aramco, PIF, or foreign investorSeparate company; JV partner given scoped portal accessChart of accounts only
Minority associate (20–49%)Strategic investment in listed companyEquity-method journal only; no separate Odoo company requiredNot applicable
Special purpose entity (SPE)NEOM sub-project, giga-project JV vehicleSeparate company; project-scoped chart of accounts; IKTVA tracking enabledVendors, subcontractors
Branch / cost centreRegional sales office, Bahrain or UAE branchBranch of parent company; no separate Zakat filingFull parent chart of accounts

Designing a multi-company Odoo structure for your Saudi group?

iWesabe has configured Odoo multi-company for Saudi holding groups across Vision 2030 sectors. We map your legal structure, set intercompany rules, and configure entity-level Zakat/VAT before go-live.

Intercompany Journal Automation in Odoo

Every Saudi group has intercompany flows: management fees from the holding to subsidiaries, shared-service cost allocations, intercompany loans, and trading transactions between entities. In a spreadsheet environment, each of these requires a manual journal in two companies. Odoo's intercompany rules post the mirror entry automatically.

Common intercompany transactions and Odoo automation treatment
Transaction typeManual pain pointOdoo intercompany ruleElimination at consolidation
Management fee (holding → subsidiary)Two manual journals; timing mismatch creates AR/AP imbalanceInvoice auto-posted in subsidiary on approval; intercompany AP clearedEliminated via IC receivable / IC payable offset
Shared-service cost allocation (IT, HR, Legal)Spreadsheet formula updated monthly after actuals; audit trail weakCost allocation journal auto-split by company percentage; locked after postingEliminated as IC expense / IC revenue pair
Intercompany loan (holding → subsidiary)Loan schedule maintained outside ERP; interest accrual done quarterlyLoan agreement drives auto-accrual journal; repayment schedule tracked in OdooEliminated — IC loan asset / IC loan liability net to zero
Intercompany stock transfer (subsidiary A → B)Two inventory adjustments; transfer price agreed off-system; margin reported twiceIC purchase order auto-triggers IC sales order; transfer price embedded in ruleRevenue/COGS elimination on consolidation run
Dividend (subsidiary → holding)Manual journal at declaration and payment dates; WHT tracked separatelyDividend declaration posts IC receivable in holding; payment clears with WHT journalEliminated on consolidation; WHT liability remains at subsidiary level

Consolidated Financial Reporting under SOCPA Standards

Saudi listed companies and large private groups preparing consolidated statements follow SOCPA standards (aligned to IFRS). Odoo's consolidation module lets finance teams run group-level reports without exporting to Excel — intercompany eliminations, minority interest adjustments, and currency translation all handled inside the system.

Consolidated report types and Odoo handling for Saudi groups
Report / statementSOCPA requirementOdoo consolidation approachKey Saudi consideration
Consolidated balance sheetFull consolidation per IFRS 10; eliminate IC balancesIC receivable/payable auto-eliminated; minority interest posted to equityZakat base excludes IC loans — flag on balance sheet for Zakat consultant
Consolidated income statementEliminate IC revenue/COGS; show minority interest below group profitIC sales/purchase pairs eliminated on consolidation run; minority interest line auto-calculatedWHT on management fees affects subsidiary P&L; must survive elimination to appear in notes
Cash flow statement (indirect method)Group cash flows net of IC dividends and loansOdoo consolidation strips IC cash movements; operating/investing/financing split preservedZakat paid by each entity shows in operating; dividends upstreamed to holding show in financing
Segment reporting (IFRS 8)Reportable segments where revenue ≥10% of group totalAnalytic accounts map to segments; segment P&L auto-extracted from Odoo analyticsVision 2030 conglomerates often have 3–5 reportable segments (Real Estate, Hospitality, Trading, Contracting, Energy)
Related-party disclosures (IAS 24)All IC transactions disclosed with amounts and termsOdoo IC journal reference automatically links to related-party disclosure reportZATCA scrutinises transfer pricing; Odoo IC rules create the audit trail for arm's-length documentation

Entity-Level Zakat and VAT in Saudi Holding Structures

Saudi holding structures face a dual compliance challenge: Zakat is assessed at the level of the Saudi legal entity (not the consolidated group), while VAT registration follows a separate threshold rule. A holding company that invoices management fees to subsidiaries may be VAT-registered while a subsidiary below the SAR 375,000 threshold is not — Odoo's multi-company setup keeps these regimes separate by design.

Zakat and VAT treatment by entity type in Odoo multi-company (Saudi Arabia)
Entity / ownershipZakat treatmentVAT registrationWHT obligationsOdoo config implication
Saudi holding (100% Saudi ownership)Full Zakat on Zakat base; separate GAZT returnMandatory if revenue >SAR 375k (typically yes for management fees)WHT on foreign-payable management fees at 15%Separate Odoo company; own fiscal year; own ZATCA e-invoice registration
Saudi subsidiary (100% Saudi ownership)Separate Zakat return; IC loans from parent reduce Zakat baseMandatory threshold applies independentlyWHT on cross-border service paymentsSeparate Odoo company; IC rules post mirror journals automatically
JV (Saudi + foreign partner)Zakat on Saudi partner's share; CIT on foreign partner's shareJV files its own VAT return independentlyWHT on distributions to foreign partner at applicable treaty rateJV as separate Odoo company; foreign partner portion tracked via analytic accounts
Branch of Saudi entityNo separate Zakat — branch results consolidated into parent Zakat baseUses parent's VAT registration numberWHT where applicable, same as parent rulesBranch in Odoo as cost centre; all transactions post to parent company books
Non-Saudi subsidiary (Bahrain, UAE, Egypt)No Zakat — subject to local CIT rulesRegister under local VAT regime (Bahrain 10%, UAE 5%)WHT on dividends to Saudi parent per applicable DTASeparate Odoo company; functional currency set to local (BHD, AED, EGP); consolidated in SAR at group level

Multi-Company Access Control and Audit Trails

A common configuration mistake in Saudi multi-company Odoo deployments is giving finance staff access to all companies when their role only covers one. This creates audit-trail problems under IFRS 10 and GAZT assessment risk if Zakat workpapers mix data across entities. Odoo's company-level access model solves this — each user is assigned a primary company and optional allowed companies.

User roles and company access model for Saudi holding groups in Odoo
RoleCompany scope in OdooWhat they can seeWhat they cannot access
Group CFO / Finance DirectorAll companies (read); holding company (write)Full consolidated view; all IC journals; all entity P&LsCannot post directly in subsidiaries — must use intercompany rules
Subsidiary accountantOwn company onlyFull subsidiary ledger; IC payables/receivables from holdingCannot see holding company books or other subsidiaries
Group consolidation accountantAll companies (read-only)All trial balances; IC elimination journals; consolidation working papersCannot post transactions in any company
External auditor (Big 4 / local firm)Scoped read-only; specific period; specific companiesJournal entries, supporting documents, trial balance for audit scopeCannot access payroll data, employee records, or future periods
JV partner representativePortal access to JV company onlyJV management accounts (read); project cost reportsCannot see holding or other subsidiary data

iWesabe's Multi-Company Implementation Record

iWesabe has spent 14+ years configuring Odoo for Saudi businesses, including multi-entity holding groups across Vision 2030 sectors — contracting, real estate, hospitality, and trading conglomerates. Our team maps your legal structure before touching the system, ensuring intercompany rules, Zakat entity boundaries, and ZATCA Phase 2 registrations are correct from day one.

14+
years configuring Odoo for Saudi businesses
200+
Odoo implementations completed
3
Odoo awards — incl. Best Partner MENA 2023
1 sprint
to go live on standard multi-company setup

iWesabe is a Gold Odoo Partner and the holder of three certified Odoo awards: Best Partner MENA 2023, Highest Revenue KSA 2022/2023, and Top Revenue Achiever KSA 2023/2024. Our multi-company deployments include groups with up to eight legal entities across Saudi Arabia, Bahrain, and the UAE — all on a single Odoo instance with entity-level compliance boundaries intact. More than ٢٠٠ completed implementations give our team the pattern-recognition to spot holding-structure configuration risks that most partners only encounter once.

See Odoo multi-company live — a Saudi holding group demo

We run a 30-minute live demo showing intercompany journal automation, consolidated P&L, and entity-level Zakat/VAT setup — configured around a typical Saudi holding structure.

Ready to consolidate your Saudi group on Odoo?

Tell us your legal structure — number of entities, sectors, current system — and we'll scope a multi-company Odoo implementation that meets ZATCA, Zakat, and SOCPA requirements from day one.

WhatsApp

Frequently Asked Questions

Can Odoo manage multiple Saudi legal entities in one system?
Yes. Odoo's multi-company module lets you run multiple legal entities — each with its own chart of accounts, Zakat filing, ZATCA e-invoice registration, and VAT return — within a single database. Shared master data (products, vendors, contacts) can be made available across companies while financial books remain strictly separated.
How does Odoo handle intercompany invoices automatically?
You configure intercompany rules that define what happens when Company A creates a vendor bill or customer invoice involving Company B. Odoo automatically creates the mirror document in Company B — so a management fee invoice approved in the holding immediately creates a vendor bill in the subsidiary, with intercompany receivable and payable accounts populated. No manual double-entry required.
Does each Saudi entity in an Odoo multi-company setup file Zakat separately?
Yes, in most cases. Each wholly owned Saudi subsidiary files its own Zakat return with GAZT. The holding company files separately. Branches of a Saudi entity are consolidated into the parent's Zakat return. Odoo's multi-company structure mirrors these legal boundaries — each entity has its own books, making it straightforward to extract the Zakat base per entity without mixing data from other companies.
How does Odoo produce consolidated financial statements for a Saudi group?
Odoo's consolidation module aggregates trial balances from all group companies and applies intercompany elimination rules you define — eliminating IC receivables/payables, IC revenue/COGS pairs, and IC loan balances. The output is a consolidated balance sheet, P&L, and cash flow statement in your group reporting currency (SAR). For listed companies requiring SOCPA-aligned IFRS statements, the Odoo consolidation working papers feed directly into the auditors' consolidation package.
Does a Saudi holding company need ZATCA e-invoicing if it only issues management fee invoices to subsidiaries?
Yes. Management fee invoices between group entities are B2B taxable supplies subject to ZATCA Phase 2 clearance — even though the customer is a related party. The holding company must be registered as a taxpayer, issue ZATCA-cleared e-invoices for management fees, and archive invoice XML per ZATCA retention rules. Configuring the holding's Odoo entity with its own ZATCA integration is mandatory, not optional.
Can Odoo handle entities operating in different currencies (SAR, AED, BHD)?
Yes. Each Odoo company has its own functional currency. A Saudi subsidiary operates in SAR, a UAE subsidiary in AED, a Bahrain subsidiary in BHD. Intercompany transactions are recorded in each entity's functional currency and converted at the transaction-date exchange rate. The consolidation module translates subsidiary balances to the group reporting currency (SAR) using period-average rates for P&L and closing rates for the balance sheet — following IAS 21 currency translation rules.
iWesabe Editorial Team

iWesabe Editorial Team

Practitioner insights on Odoo ERP, ZATCA compliance, and Saudi enterprise digital operations — written by iWesabe's consulting, finance, and engineering teams.

About iWesabe

Related Articles