The branch concept in Odoo refers to a parent-child relationship in a multi-company setup, ie, how different companies or business units are organized hierarchically. This feature allows the Odoo users to manage multiple companies within a single database while still maintaining a degree of separation between them.
In this blog, let's have a look at how the parent-child relationship works in the multi company setup in Odoo 17.
In order to configure your companies in your Odoo system, go to ‘Settings’ > ‘Users & Companies’ > ‘Companies’. Click on ‘New’ to open the form to create a new company.
In the form, there is a field for selecting the Parent Company under the General Information tab and also there is a new tab added for listing the Branches.
When you create the record for the parent company which serves as the top most level entity, you can leave the parent company field blank and if you want to create child companies under the parent, you can add those by clicking on the ‘Add a line’ option in the table shown under the ‘Branches’ tab. This will popup a new form with the parent company field selected by default.
You can save the record after entering all the necessary information regarding the company including the sub-branches if there is any. You can also create a child company record directly by selecting the parent company in the specified field in the form. This will automatically add the company to the branches list of the parent company.
The branches can be viewed in the list as shown in the image below.
The sub-branches created for the branches can be viewed in the form as shown in the image.
Features of branch concept:
Parent Company: In a multi-company setup, you can define a parent company. This parent company serves as the top-level entity and is responsible for managing the overall structure and settings of the various child companies. The parent company often has administrative control over the child companies. Also the child companies use the same chart of accounts as that of the parent company.
Child Companies: Each child company represents an individual business unit or subsidiary within the organization. Each child company can have its own separate:
Products and inventory: Each company can manage its own set of products, stock levels, and warehouses.
Sales and purchases: Each company can handle its own sales orders, purchase orders, and associated workflows.
Users and access rights: User access can be configured so that users can access only the data and functionalities relevant to their assigned company.
Localization settings: Each company can have its own localization settings like currency, tax rules, and language.
Inter-Company Transactions: In a parent-child multi-company setup, there might be instances where transactions need to occur between child companies. Odoo provides mechanisms to manage these inter-company transactions, ensuring accurate accounting and stock movement between the entities.
Data Separation: While the companies are part of the same Odoo database, data separation is maintained between them. Users associated with a specific company can only access and modify data relevant to their company, ensuring data privacy and integrity.
Consolidated Reporting: The parent company often has the ability to generate consolidated reports that combine the financial and operational data from all child companies. This allows for a comprehensive view of the entire organization's performance.
Configuration and Settings: Many settings and configurations are managed at the parent company level. These settings might include default accounting templates, shared contacts, payment gateways, and more.
The branch concept is particularly useful for businesses that operate multiple entities, subsidiaries, or branches and want to centralize their management while maintaining some degree of autonomy and data separation between these entities.
1