All posts
Functional5 min read

Recharging Costs Between Group Companies in Odoo

Set up intercompany cost recharging in Odoo to allocate shared expenses - IT, facilities, HR - across subsidiaries using analytic accounts and automated intercompany journal entries.

Intercompany Cost Recharging in Odoo#

Group companies often share resources - head office IT, shared HR services, centralized facilities. The cost of these shared services must be recharged to operating subsidiaries. Odoo handles this through intercompany journal entries and analytic accounts.

Approach 1 - Intercompany Invoices#

The most common method:

  1. Parent company (cost bearer) creates a vendor bill for the shared cost (e.g., $10,000 IT infrastructure)
  2. At month-end, creates intercompany invoices to each subsidiary for their allocated share
  3. Each subsidiary records these as a vendor bill from the parent

Setting up automated intercompany invoices:

Accounting → Configuration → Settings → Intercompany Transactions:

  • Enable intercompany auto-sync between companies in the same database
  • When Company A creates an invoice to Company B, Odoo auto-creates the corresponding vendor bill in Company B

Approach 2 - Analytic Distribution + Recharge Rule#

More granular allocation using analytic accounts:

  1. Parent company posts the cost with multiple analytic distributions:

- 30% → Subsidiary A analytic account

- 50% → Subsidiary B analytic account

- 20% → Parent own costs

  1. A scheduled action generates intercompany recharge invoices based on analytic amounts

Allocation Keys#

Common allocation bases:

  • Headcount: allocate HR costs by employee count per entity
  • Revenue: allocate shared costs as % of each entity's revenue
  • Usage: allocate IT costs by number of users per entity
  • Fixed: predefined fixed amounts agreed in the management agreement

Eliminations for Consolidation#

Intercompany recharge invoices create revenue in the parent and expenses in the subsidiary. For consolidated group reporting:

  • These intercompany balances must be eliminated
  • Accounting → Reporting → Consolidation → set intercompany elimination rules
  • Parent revenue Subsidiary expense cancel out in the consolidated P&L

Transfer Pricing Compliance#

If the group spans multiple tax jurisdictions, intercompany charges must comply with transfer pricing rules:

  • Charges must be at arm's length (market rate)
  • Document the allocation methodology in a transfer pricing policy
  • Keep records for tax audit purposes

Odoo's analytic account reports provide the transaction detail needed to defend the allocation to tax authorities.

Try ERPeek on your own Odoo module - ask questions, scaffold tests, and explore your codebase in plain language.

Get started free