The structural decision comes before any configuration
A group can run every entity in one Odoo database with company-level record rules, or keep separate databases and consolidate outside the system. One database makes intercompany flows and group reporting native and makes divergence expensive. Separate databases give each entity total freedom and make consolidation a recurring manual exercise. This is the decision that shapes everything after it, and it is worth settling deliberately rather than discovering.
Intercompany transactions should generate their own counterpart
When one entity sells to another, the matching purchase in the receiving company is mechanical work that is reliably done late and occasionally wrong. Odoo can generate the counterpart document automatically on the same database, which is what makes intercompany balances agree without a month-end reconciliation ritual.
Shared master data is the real win, and the real risk
Products, partners and charts of accounts can be shared across companies or held separately. Sharing removes duplicate maintenance and makes group reporting meaningful. It also means a change made in one entity is felt in all of them, so ownership of master data has to be assigned to someone before go-live rather than negotiated afterwards.
