Skip to content

How to Set Up Odoo Multi-Company

DeployMonkey Team · March 11, 2026 8 min read

Odoo's multi-company feature lets you manage multiple legal entities from a single Odoo database. One login, one interface, multiple companies — with controlled data sharing between them. Setting it up correctly from the start prevents data leakage, accounting errors, and permission headaches later.

When to Use Multi-Company vs Separate Databases

Multi-company is the right choice when:

  • Your companies share employees, customers, or suppliers
  • You need consolidated financial reports across entities
  • You want users to work across companies without switching systems
  • You do intercompany transactions (sales orders that generate purchase orders in the other company)

Use separate databases when:

  • Companies have completely separate operations and no shared data
  • Data isolation is a hard compliance requirement
  • Companies use significantly different Odoo configurations or modules

Step 1: Enable Multi-Company

In Odoo Settings → General Settings, enable Companies under the Organizations section. In recent Odoo versions, this is on by default.

Confirm it's active by checking that you see the company switcher in the top-right corner of the Odoo interface (the building icon or company name).

Step 2: Create Your Companies

  1. Go to Settings → Companies → Companies
  2. Click New
  3. Fill in: Company Name, Address, Currency, Timezone, Language
  4. Set the Parent Company if this is a subsidiary
  5. Upload a company logo (used on invoices, reports)
  6. Configure the fiscal year (under Accounting settings for that company)
  7. Save and repeat for each company

The first company created during Odoo setup is your "main" company. It cannot be deleted and its currency becomes the base currency for consolidated reports.

Step 3: Configure Chart of Accounts per Company

Each company needs its own Chart of Accounts. After creating a company:

  1. Switch to that company using the company switcher
  2. Go to Accounting → Configuration → Accounting
  3. Install a localization package if available for your country
  4. Or manually create accounts under Accounting → Configuration → Chart of Accounts

Companies in the same country can share a chart of accounts structure, but each company has its own account records and balances.

Step 4: Assign Users to Companies

Every Odoo user must be assigned to one or more companies:

  1. Go to Settings → Users & Companies → Users
  2. Open a user record
  3. In the Companies field, add all companies this user should access
  4. Set a Default Company (the company they see on login)

A user with access to multiple companies can switch the active company from the top-right switcher. The active company determines which records are visible and which company new records are created for.

Step 5: Set Up Inter-Company Rules

Inter-company rules automate document creation between companies. When Company A creates a sale order to Company B, Odoo can automatically generate a purchase order in Company B.

  1. Go to Settings → Companies → Companies
  2. Open a company record
  3. Find the Inter-Company Rules section (may require enabling in Settings first)
  4. Configure rules:
Inter-company rules options:
- Synchronize Sales Order / Purchase Order
- Synchronize Invoice / Bill
- Auto-validate invoices
- Product cost sharing

Enable Synchronize Sales Order/Purchase Order so a sales order in Company A automatically creates a corresponding purchase order in Company B (the customer).

Step 6: Configure Shared vs Separate Data

Understanding what Odoo shares between companies by default:

Data TypeBehaviorNotes
Contacts (Partners)Shared by defaultOne customer record visible to all companies
ProductsShared by defaultPrices and stock are per-company
EmployeesPer-company by defaultCan be assigned to multiple companies
Sales OrdersPer-companyOnly visible when that company is active
InvoicesPer-companySeparate journals and sequences per company
Bank AccountsPer-companySeparate bank journals
Price ListsCan be shared or per-companySet company field on pricelist to restrict

Step 7: Set Up Branch Accounting

For companies with branches (same legal entity, different locations), Odoo 17+ supports branches natively:

  1. Enable Branches in Accounting settings
  2. Go to Accounting → Configuration → Branches
  3. Create a branch and assign it to a parent company
  4. Branches share the parent company's chart of accounts but have separate journal sequences

For older Odoo versions, branches are typically modeled as separate companies with a parent-child relationship, or as analytic accounts.

Step 8: Configure Company-Specific Settings

Many Odoo settings are company-specific. Always switch to the target company before configuring:

  • Email templates and signatures
  • Invoice numbering sequences
  • Default payment terms
  • Tax settings and fiscal positions
  • Warehouse and stock locations
  • Report templates (headers, footers)

A common mistake is configuring these settings while the wrong company is active, causing them to apply to the wrong entity.

Common Multi-Company Pitfalls

Pitfall 1: Users seeing the wrong company's data

Symptom: User creates an invoice and it appears under the wrong company.

Fix: Check the user's active company (shown in top-right). New records are always created for the active company. Users must consciously switch companies before creating records.

Pitfall 2: Intercompany invoices not generating

Symptom: Sale order in Company A doesn't create a purchase order in Company B.

Fix: Verify both companies have the intercompany rule enabled. The buying company (B) must have the selling company (A) configured as a vendor in its partner record.

Pitfall 3: Consolidated reports showing incorrect totals

Symptom: Consolidated P&L doesn't match the sum of individual company reports.

Fix: Check that intercompany transactions are being eliminated properly. Odoo's consolidation requires matching accounts between companies. Consider using the same account codes across all entities.

How DeployMonkey Supports Multi-Company

Multi-company Odoo requires more resources than a single-entity setup — more active users, more concurrent sessions, more database activity. DeployMonkey's Professional plan ($29/month) and BYOS plan ($150/month) are sized for multi-company deployments with adequate worker counts and memory limits.

Our S3 backup system backs up the entire database regardless of how many companies it contains — a single restore recovers all entities simultaneously.

Start your free instance and set up multi-company from day one.

Frequently Asked Questions

Can I add a company later without affecting existing data?

Yes. Adding a new company doesn't affect existing records — they remain associated with the original company. You'll need to configure the new company's settings, chart of accounts, and assign users before it's operational.

Can two companies share the same bank account?

Technically yes in Odoo, but legally this is unusual. If companies share a physical bank account (common for small groups), configure it once but reconcile carefully. Most accountants prefer separate bank journals per company for audit clarity.

How do I run a consolidated profit and loss across all companies?

Use the Accounting module's consolidation features. Go to Accounting → Reporting → Consolidated Journal Entries, select all companies, and generate the consolidated report. This requires the same currency or configured currency conversion rates.

Is there a limit on how many companies I can create?

No hard limit in the software. Practical limits depend on your hardware — each active company adds query complexity and memory usage. Most successful multi-company Odoo deployments have 2–20 companies.