Skip to main content
Multi-Company Financial Consolidation — A build-to-order Odoo module that consolidates the financial statements of your legal — 1/1Illustrative preview

A build-to-order Odoo module that consolidates the financial statements of your legal entities into one group

view with currency translation, inter-company eliminations, and minority-interest handling.

ECOSIRE scopes, builds, installs, and supports it for Odoo 17, 18, or 19.

What is Multi-Company Financial Consolidation?

A build-to-order Odoo module that consolidates the financial statements of your legal entities into one group view with currency translation, inter-company eliminations, and minority-interest handling. ECOSIRE scopes, builds, installs, and supports it for Odoo 17, 18, or 19. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

`consolidation.group` and `consolidation.company.rel` models capturing each entity's ownership %, functional currency, and consolidation method (full / proportional / equity)
Per-company currency translation with policy-driven rates: closing rate for balance-sheet accounts, average for P&L, historical for equity
Automatic FX translation-reserve posting so the consolidated balance sheet balances after retranslation
Inter-company elimination engine matching partner + account pairs, generating reviewable `account.move` entries in a dedicated consolidation journal
Unrealised inter-company profit elimination on inventory and fixed-asset transfers
Minority-interest / non-controlling-interest split computed from ownership % on every equity and result line via `@api.depends`
`consolidation.run` object with draft / computed / locked states gating who can post eliminations or reopen a period
Consolidated Balance Sheet, P&L, and Cash Flow as QWeb PDF reports plus native Odoo pivot and list views
Full drill-down from any consolidated figure back to the source company, journal entry, and elimination
Account mapping layer so subsidiaries on different local charts roll up to one group chart of accounts
Multi-period and comparative runs (current vs prior period, budget vs actual) driven by ORM domain filters
`ir.model.access.csv` + record rules scoping each user to only the entities they may consolidate
XML-RPC / JSON-RPC endpoints and an optional `ir.cron` automated action to trigger and export a run for parent-level BI
Versioned `__manifest__.py` targeting your exact edition and version (17.0 / 18.0 / 19.0), Community or Enterprise

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your Odoo.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

Odoo Compatibility
Odoo 17, Odoo 18, Odoo 19
Editions
Enterprise & Community
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
PostgreSQL 12+

About this Product

Group finance teams running several legal entities in Odoo hit the same wall every close: the accounts are clean per company, but the group picture lives in a spreadsheet. Odoo's core multi-company support lets you post in separate companies and share a chart of accounts, but it stops short of a true consolidation. There is no group ledger that revalues foreign subsidiaries at the right rates, no automatic elimination of inter-company sales, receivables, payables, and unrealised profit, and no clean split between the parent's share and the minority interest. Enterprise's account_consolidation app helps with a mapped trial balance, but it does not model FX translation reserves, ownership percentages below 100%, or a fully auditable elimination journal the way a group CFO needs for a defensible consolidated pack.

We build a dedicated consolidation layer on top of your existing Odoo accounting. At its core is a consolidation.group and consolidation.company.rel model that records each subsidiary, its ownership percentage, its consolidation method (full, proportional, or equity), and its functional currency. A consolidation.run object (a models.Model with @api.depends computed totals) pulls the period trial balance from each company via the ORM, applies currency translation per your policy — closing rate for balance sheet accounts, average rate for P&L, historical rate for equity — and books the resulting FX difference to a translation reserve. compute methods derive the parent share and non-controlling interest from the ownership percentage on every equity and result line, so minority interest falls out of the same run rather than being bolted on afterward.

Eliminations are handled as explicit, reviewable journal entries rather than hidden arithmetic. We configure elimination rules that match inter-company partners and account pairs, generate account.move elimination entries in a dedicated consolidation journal, and let controllers see and adjust them before locking the run. Every consolidated figure drills back to the underlying company, journal, and elimination that produced it — nothing is a black box at audit time. The consolidated Balance Sheet, P&L, and Cash Flow are delivered as QWeb reports (PDF and screen) plus Odoo pivot/list views, and the whole run is exposed over the XML-RPC / JSON-RPC API so a parent-level BI tool or a scheduled ir.cron automated action can trigger and read it.

Access is locked down properly: ir.model.access.csv grants plus record rules scope each user to the entities they may consolidate, and the run states (draft, computed, locked) gate who can post eliminations or reopen a period. The module ships as a proper Odoo addon with a versioned __manifest__.py, targeting your exact Odoo edition and version (17.0, 18.0, or 19.0), and respecting Community vs Enterprise differences — for example layering cleanly alongside Enterprise's consolidation app where present, or standing alone on Community.

This is a build-to-order engagement, not an off-the-shelf download. It starts with a scoping call to capture your entity structure, ownership tree, currency policy, and the exact elimination and reporting rules you need. We build against your requirements, deliver on a UAT staging environment for you to validate a real period-end close, then install to production with a rollback plan and a handover of the git repository. Typical delivery is one working week from confirmed scope, depending on the number of entities and the complexity of your elimination and FX rules.

What you get

  • Installable Odoo addon source code, pinned to your Odoo edition and version (17.0, 18.0, or 19.0)
  • Installation and configuration on your environment: entity tree, ownership %, currency policy, elimination and mapping rules
  • Technical documentation: data model, elimination logic, FX-translation methodology, and API endpoints
  • User guide plus a live training session for controllers and the group finance team
  • UAT on a staging environment with a real period-end close, plus a documented rollback plan
  • Post-go-live support window for defect fixes and configuration adjustments
  • Handover of the git repository with commit history and versioned tags
  • Configuration workbook recording the agreed rate policy, elimination rules, and account-mapping decisions

Who this is for

Group CFO

Needs a defensible, auditable consolidated Balance Sheet, P&L, and Cash Flow across all legal entities and currencies — with minority interest and eliminations that stand up to auditor scrutiny, not a spreadsheet reassembled every month.

Group Financial Controller

Owns the close. Wants elimination entries they can review and adjust, currency translation that follows a stated policy, and drill-down from every group figure back to the originating company and journal.

Multi-Entity Finance Manager

Manages several subsidiaries in one Odoo instance and needs each entity's trial balance to roll up automatically under the correct ownership percentage and consolidation method, without manual re-keying.

Odoo Systems / ERP Administrator

Responsible for the instance. Needs a clean addon with a versioned manifest, proper access rules, and an upgrade path across 17.0/18.0/19.0 that layers correctly alongside existing accounting apps.

How Multi-Company Financial Consolidation Compares

CriterionECOSIRECustom BuildCompetitorOdoo Native
Currency translationPolicy-driven closing/average/historical rates with FX reserve postingWhatever you build; often incomplete on the reserveBasic multi-currency trial balance, no translation reservePer-company currency only, no group retranslation
Inter-company eliminationsRule-based, reviewable elimination journal with drill-downHand-coded, quality depends on the developerManual or limited automatic eliminationsNot handled — done in spreadsheets
Minority interestAuto-split from ownership % on every equity/result linePossible but rarely modelled cleanlyUsually absent or manualNot supported
Consolidated reportsQWeb BS / P&L / Cash Flow plus pivot, all drill-downBuilt to spec, maintenance is on youFixed report set, limited drill-downPer-company statements only
AuditabilityEvery figure traces to company, journal, and eliminationDepends entirely on implementationPartial trace, black-box eliminationsNo group audit trail
Ownership methodsFull, proportional, and equity per entityOnly what's specifiedTypically full consolidation onlyNot applicable
Fit to your groupScoped to your entity tree and rate policyFully bespoke but you carry the riskGeneric; you adapt to itGeneric multi-company only
Support & ownershipPost-go-live window plus full git repo handoverYou own and maintain everythingVendor support, no source ownershipStandard Odoo support only

Frequently Asked Questions about Multi-Company Financial Consolidation

How is this different from Odoo Enterprise's built-in consolidation app?

Enterprise's `account_consolidation` gives you a mapped, multi-currency trial balance, which is a good starting point. It does not model FX translation reserves, sub-100% ownership with automatic minority-interest splits, unrealised inter-company profit elimination, or a fully auditable elimination journal with drill-down. We build those on top — and on Community, where the Enterprise app isn't available, we deliver the whole capability standalone.

How long does delivery take?

This is build-to-order, so we build against your confirmed scope. Typical delivery is one working week from the point where entity structure, ownership tree, currency policy, and elimination/reporting rules are signed off. More entities or more complex elimination and FX rules move you toward the upper end of that range; we give you a firm timeline after the scoping call.

Which currency translation method do you use?

The standard policy is closing rate for balance-sheet accounts, average rate for P&L, and historical rate for equity, with the difference booked to a translation reserve. If your group applies a different or jurisdiction-specific method, we configure it during scoping — the rate policy is a configuration decision recorded in your handover workbook, not hard-coded.

How are inter-company transactions eliminated?

You define elimination rules that match inter-company partners and account pairs. Each consolidation run generates explicit `account.move` elimination entries in a dedicated consolidation journal that your controllers can review, adjust, and lock. Nothing is hidden arithmetic — every eliminated figure drills back to the transactions behind it.

Can it handle partial ownership and minority interest?

Yes. Each subsidiary carries an ownership percentage and a consolidation method (full, proportional, or equity). The run computes the parent share and non-controlling interest from that percentage on every equity and result line, so minority interest is part of the same consolidation rather than a manual adjustment afterward.

What about support and updates after go-live?

Every engagement includes a post-go-live support window for defect fixes and configuration tweaks. Because you receive the git repository and full source, you own the code. We also offer ongoing support and version-upgrade work — for example moving the module from 17.0 to 18.0 or 19.0 — as a separate arrangement when you need it.

Can the consolidated results feed our BI or reporting tools?

Yes. Each run is exposed over Odoo's XML-RPC / JSON-RPC API, and an optional `ir.cron` automated action can trigger and export a run on schedule. A parent-level Power BI or data-warehouse pipeline can read the consolidated figures directly, in addition to the built-in QWeb PDF and pivot views.

Request a quote

Multi-Company Financial Consolidation

A build-to-order Odoo module that consolidates the financial statements of your legal entities into one group view with currency translation, inter-company eliminations, and minority-interest handling. ECOSIRE scopes, builds, installs, and supports it for Odoo 17, 18, or 19.

  • `consolidation.group` and `consolidation.company.rel` models capturing each entity's ownership %, functional currency, and consolidation method (full / proportional / equity)
  • Per-company currency translation with policy-driven rates: closing rate for balance-sheet accounts, average for P&L, historical for equity
  • Automatic FX translation-reserve posting so the consolidated balance sheet balances after retranslation
  • Inter-company elimination engine matching partner + account pairs, generating reviewable `account.move` entries in a dedicated consolidation journal

Request a Quotation

Tell us about your Multi-Company Financial Consolidation requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.