OdooWiki OCA HUB

Inter Company Module for Purchase to Sale Order

purchase_sale_inter_company folder_open OCA/multi-company open_in_new
Purchase Management License: AGPL-3

This module is useful if there are multiple companies in the same Odoo database and those companies sell goods or services among themselves. It allows to create a sale order in company A from a purchase order in company B.

Imagine you have company A and company B in the same Odoo database:

  • Company A purchase goods from company B.
  • Company A will create a purchase order with company B as supplier.
  • This module automate the creation of the sale order in company B with company A as customer.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

When a company buys from another company in the same database, this module automatically creates the matching sales order in the supplier company, keeping both sides linked and in sync.

If your database contains several companies that trade with each other, this module removes the double entry work. When a purchase order is approved and the supplier is another company of the database, a sales order is created automatically in that supplier company, with the buyer company as customer.

  • The link between the two documents is visible: the purchase order shows its intercompany sales order and each purchase line shows its sales line, and vice versa.
  • A message is posted on both documents to record the link.
  • The supplier company can decide, in the intercompany settings, whether sales orders should be created from purchases, which user is used to create them, and whether they are confirmed automatically.
  • If the sales order is confirmed, the price agreed on the sale side is written back on the purchase line.
  • Changing quantities on a confirmed purchase order updates the linked sales order, but only while that sales order is still open; otherwise an error is raised.
  • Cancelling a purchase order cancels its sales order, unless the sales order is already confirmed, done or cancelled.
  • Products and currencies are checked: a product must be shared with the supplier company, and the price list currencies must match.
  • When the intercompany vendor bill is created, it is linked back to the original purchase orders.

Depends on

Models and fields (6)
  • sale.order · extends an existing modelauto_purchase_order_id (Source Purchase Order)
  • res.company · extends an existing modelso_from_po (Create Sale Orders when buying to this company), sale_auto_validation (Sale Orders Auto Validation), intercompany_sale_user_id (Intercompany Sale User)
  • purchase.order · extends an existing modelintercompany_sale_order_id
  • sale.order.line · extends an existing modelauto_purchase_line_id (Source Purchase Order Line)
  • purchase.order.line · extends an existing modelintercompany_sale_line_id
  • res.config.settings · extends an existing modelso_from_po (Create Sale Orders when buying to this company), sale_auto_validation (Sale Orders Auto Validation), intercompany_sale_user_id (Intercompany Sale User)

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 8 confirmed, 1 with no information of 9 versions.

Sources · Odoo 12.0

Confirmed on 2026-11-03 in branch 12.0 of OCA/multi-company.

terminal Installation and usage

OCA documentation · Odoo 19.0

If you want also to have different warehouses for your sales orders you can install stock and then purchase_sale_stock_inter_company will be auto installed.

To configure this module, you need to: #. go to the menu General Settings \> Companies \> Companies. #. Select one of the companies.

  • Go to the tab Inter-Company then the group Purchase To Sale. #.

If you check the option Sale Auto Validation in the configuration of company B, then when you validate a Purchase Order in company A with company B as supplier, the Sale Order will be automatically validated in company B with company A as customer.

No verified information in OCA: Usage.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.