What Are Inter-Company Transactions?
When you operate multiple companies in a single Odoo database, inter-company transactions automate the paperwork between them. When Company A sells to Company B, Odoo can automatically create the corresponding purchase order in Company B, matching invoices to bills and keeping both sets of books synchronized.
Prerequisites
- Multi-company setup in Odoo (Settings → Companies)
- Users with access to multiple companies
- Inter-company rules enabled in Settings
Inter-Company Rules
Go to Settings → General Settings → Inter-Company Transactions to enable and configure rules.
Available Rules
| Rule | When Triggered | What It Creates |
|---|---|---|
| Sales Order → Purchase Order | SO confirmed in Company A to partner Company B | PO in Company B from Company A |
| Purchase Order → Sales Order | PO confirmed in Company B from Company A | SO in Company A for Company B |
| Invoice → Bill | Invoice posted in Company A for Company B | Vendor bill in Company B from Company A |
| Bill → Invoice | Bill posted in Company B from Company A | Invoice in Company A for Company B |
Rule Configuration
# Inter-company rule setup:
# Company A (Parent):
# Rule: Synchronized Sales/Purchase
# Warehouse: Company A Warehouse
# When SO confirmed → Create PO in counterpart company
# Company B (Subsidiary):
# Rule: Synchronized Sales/Purchase
# Warehouse: Company B Warehouse
# When PO confirmed → Create SO in counterpart companySales Order to Purchase Order Flow
Step-by-Step
- User creates a Sales Order in Company A with Company B as the customer
- SO is confirmed in Company A
- Odoo automatically creates a Purchase Order in Company B with Company A as the vendor
- The PO is auto-confirmed (configurable)
- When Company A delivers, Company B receives
- Invoicing follows the same inter-company pattern
# Example flow:
# Company A: Holding Company (sells services to subsidiaries)
# Company B: Operating Company
# Step 1: Company A creates SO for Company B
# Product: Management Services
# Amount: $10,000/month
# Step 2: Auto-created in Company B
# PO from Company A
# Product: Management Services
# Amount: $10,000/month
# Step 3: Company A invoices Company B
# Invoice in A: $10,000 (Revenue)
# Bill in B: $10,000 (Expense) — auto-createdInvoice to Bill Synchronization
When invoice-to-bill rules are active:
- Posting an invoice in Company A for Company B automatically creates a vendor bill in Company B
- The bill references the original invoice number
- Amounts, tax, and line details are copied
- Both documents are linked for reconciliation
Warehouse Transfers
Inter-Company Stock Transfers
For physical goods moving between companies:
- Company A creates an internal transfer to Company B's warehouse
- Odoo creates corresponding receipt in Company B
- Goods leave Company A's inventory
- Goods enter Company B's inventory
- Optional: Inter-company pricing for transfer pricing compliance
Transit Location
# Inter-company transfer routing:
# Company A Stock → Inter-Company Transit → Company B Stock
# The transit location ensures:
# - Goods are tracked during transfer
# - Both companies have accurate inventory counts
# - Transfer pricing is applied at the transit pointCentralized Procurement
A central purchasing company buys for all subsidiaries:
- Company B (operating) creates a purchase need
- Company A (central purchasing) creates the vendor PO
- Goods are received at Company B (direct delivery from vendor)
- Company A invoices Company B for the goods plus markup
Transfer Pricing
Inter-company pricing must comply with transfer pricing regulations:
- Set specific inter-company pricelists
- Apply arm's-length pricing between entities
- Document pricing methodology for tax compliance
- Different markup rates by product category or service type
Accounting Impact
# Inter-company journal entries:
# Company A (seller):
# Debit: Inter-company Receivable $10,000
# Credit: Revenue $10,000
# Company B (buyer):
# Debit: Expense $10,000
# Credit: Inter-company Payable $10,000
# Consolidation:
# Both entries eliminate during consolidation
# Net impact on group P&L: $0Multi-Currency Inter-Company
When companies operate in different currencies:
- SO/PO created in the currency of the target company
- Exchange rates applied at transaction date
- Currency differences handled through standard Odoo exchange rate mechanics
Reporting
- Inter-company Balances — Receivables and payables between companies
- Transaction Volume — Inter-company sales and purchases by period
- Reconciliation — Matching status of inter-company invoices/bills
- Transfer Pricing — Markup and margin on inter-company sales
Best Practices
- Use dedicated inter-company accounts — Separate AR/AP accounts for inter-company balances
- Reconcile monthly — Verify inter-company balances net to zero
- Document transfer pricing — Maintain a transfer pricing policy document
- Auto-confirm POs — Reduce manual steps in the inter-company flow
- Test both directions — Verify rules work from both company perspectives
DeployMonkey + Inter-Company
DeployMonkey's AI agent configures inter-company rules, transfer pricing, and inter-company accounts for seamless multi-entity operations.