Multi-company

See also

Branches

In Odoo, multiple companies can be configured under one database. This allows some data to be shared among companies while maintaining some separation between entities.

A centralized management environment allows authorized users to select multiple companies simultaneously and set their specific warehouses, customers, equipment, and contacts. It also generates reports of aggregated figures without switching interfaces, facilitating daily tasks and enhancing the overall management process.

Warning

Enabling multi-company functionality in an Odoo database on a Standard plan automatically triggers an upsell to the Custom plan. This does not apply to databases on the One-App Free plan.

  • For yearly or multi-year contracts: An upsell order is created with a 30-day limit.

  • For monthly contracts: The subscription automatically switches to the Custom plan and the new rate is applied when the next bill is generated.

For more information, refer to Odoo’s pricing page or contact your account manager.

Configuration

Open the Settings app, navigate to the Companies section, and click Manage Companies. Then, click New and fill in the form with the company’s information or select an existing company to edit it.

Note

Alternatively, it is possible to create a company by going to Settings ‣ Users & Companies ‣ Companies.

Tip

To archive a company, follow these steps:

  1. In the Settings app, navigate to the Companies section and click Manage Companies.

  2. In the Companies list view, select the company to be archived.

  3. Click the Actions menu and select Archive.

  4. Click Archive to confirm.

Multi-company environment

In a multi-company environment, users are granted access to one or more companies, and data is created or modified based on its intended use within that structure.

User access

A multi-company environment allows flexible control over user access and access rights that can be granted or restricted as needed.

Company selector

To switch between (or select) multiple companies, follow these steps:

  1. Click the company selector in the top-right corner of the header menu.

  2. In the drop-down list, select the checkboxes next to the desired companies.

  3. The highlighted company indicates the current active environment.

  4. To switch to another company, click its name in the list of selected companies.

Example

In the example below, the user can access six companies, two of which are selected. The current active company is My Company (San Francisco).

View of the companies menu through the main dashboard in Odoo.

Shared and company-specific records

Data, such as products, contacts, and equipment can either be shared across companies or restricted to a specific company by setting the Company field on the relevant records:

  • either leave the field blank to make it accessible to all companies;

  • or select the company to make it visible to users logged in to that specific company.

Records specifically linked to a particular company are accessible only within that entity. For instance, quotations, invoices, and vendor bills associated with a company are visible only when logged into that company, and the corresponding company is automatically selected by default and displayed in the Company field.

In a multi-company database, new products and contacts are shared across companies by default. To restrict them to a specific company, set the Company field on the record’s form.

Inter-company transactions

The Inter-Company Transactions feature allows one company in the database to sell or purchase goods and services from another company within the same database. Depending on the configuration settings, counterpart documents for orders and invoices can be automatically generated and synchronized.

Warning

To handle inter-company transactions correctly, general and specific configurations must be set properly, including fiscal positions and localizations.

To activate inter-company transactions, select the relevant company in the company selector, open the Settings app, navigate to the Companies section, enable Inter-Company Transactions, and Save. Then, choose one of the following Rule options to create a counterpart for the selected company:

  • Do not synchronize: Do not synchronize any inter-company transactions.

  • Synchronized invoice/bills: Generate a bill/invoice when a company confirms a bill/invoice for the selected company.

  • Synchronize Sales Order: Generate a quotation (drafted sales order) when a sales order is confirmed for the selected company. To generate a validated sales order instead of a quotation, enable Automatic Validation.*

  • Synchronize Purchase Order: Generate a request for quotation (drafted purchase order) using the selected company warehouse in the Use Warehouse field when a purchase order is confirmed for the selected company. To generate a validated purchase order instead of a request for quotation, enable Automatic Validation.*

  • Synchronize Sales and Purchase Order: Generate a drafted purchase/sales order using the selected company warehouse in the Use Warehouse field when a sales/purchase order is confirmed for the selected company. To generate a validated purchase/sales order instead of a draft one, enable Automatic Validation.*

    * This rule option needs to be selected for Automatic Validation to appear in the configuration.

Note

For inter-company transactions, the products must be shared among the involved companies.

Example

Synchronize invoices/bills: when an invoice for Customer JS Store US is posted on JS Store Belgium, a vendor bill is automatically created in JS Store US.

Synchronize sales/purchase order: when a sales order for Customer JS Store US is confirmed on JS Store Belgium, a purchase order on JS Store US is automatically created (and confirmed if the Automatic Validation feature is enabled).

Use cases

Multinational companies

A multinational retail chain operating in the United States and Canada must manage transactions in USD and CAD.

Since each country has its own tax laws and regulations, using Odoo’s multi-company feature is highly beneficial.

This setup allows for inter-company transactions, which is essential for managing cross-border inventory transfers. It also simplifies the sales process by enabling customers transactions in their local currency.

Separate processes

A small furniture company is launching a new product line that requires separate procurement, inventory, and manufacturing workflows. These new products differ significantly from the existing catalog. To manage this efficiently, the company is considering using the multi-company feature to manage the new line as a separate business entity.

However, creating a completely new company might add unnecessary complexity to the database. Instead, the company can leverage existing features such as analytic accounting and multiple warehouses to manage the new product line without complicating overall operations.