Managing Subcontracted Production
Outsourcing a portion or all of your company’s manufacturing needs can be complex. To make it work efficiently, businesses must:
- Manage the inventory of raw materials at subcontractor locations.
- Ship materials based on forecasted demand.
- Track manufacturing operations handled by subcontractors.
- Ensure quality control of received goods.
- Monitor and manage subcontractor billing.
For example, consider a scenario where you subcontract the manufacturing of Product “C,” which is made using raw materials “A” and “B.”

With Odoo’s subcontracting feature, businesses can streamline this flow, ensuring better control over outsourced production.
Configuring Subcontracting in Odoo
To enable subcontracting, navigate to Manufacturing ➔ Configuration ➔ Settings and activate Subcontracting.

Setting Up a Subcontracted BoM
- Go to Manufacturing ➔ Master Data ➔ Bill of Materials.
- Create a new BoM and select Subcontracting as the BoM type.
- List the components required by the subcontractor.
- Assign one or multiple subcontractors to the BoM.

Tip: If your subcontractor provides some raw materials directly, include them in the BoM for accurate cost tracking.
Subcontracting Workflow in Odoo
1. Sending Purchase Orders to Subcontractors
To request subcontracted products:
- Open the Purchase app and create a new purchase order.
- Select a vendor that is listed as a subcontractor on the BoM.
- Once validated, Odoo generates a pending receipt for the subcontracted products.

2. Receiving Finished Goods from Subcontractors
When the products are delivered, validate the receipt to update inventory. Odoo automatically performs the following actions:
- Consumes components from the subcontractor’s stock.
- Produces the finished goods at the subcontractor’s location.
- Transfers the finished goods to your company’s stock.
Note: If the subcontractor does not charge a fixed price per item, you can manually create a receipt instead of a purchase order.
Inventory Valuation for Subcontracted Manufacturing
The cost of a subcontracted product (C) is calculated as:
C = A + B + S
Where:
- A = Cost of raw materials provided by your company
- B = Cost of raw materials sourced by the subcontractor
- S = Subcontractor’s service cost
Odoo tracks raw materials sent to subcontractors under an internal location, ensuring accurate valuation without affecting stock levels.
Tracking Components in Subcontracted Products
If the subcontracted product contains traceable components (serial/lot numbers), they must be recorded during receipt.
- On the receipt page, click Record Components to enter lot/serial numbers.
- If the finished product is also traceable, its lot/serial number is recorded here as well.

For audit purposes, past recorded lot numbers can be reviewed in the receipt history.

Automating Subcontractor Replenishment
To efficiently resupply subcontractors, activate Multi-locations in Inventory ‣ Configuration ‣ Configuration.
Replenishment from Warehouse
Manual Method
Create a delivery order with the subcontractor as the delivery address.
Automated Methods
- Reordering Rules: Set a minimum/maximum inventory level on the subcontractor’s location. When stock drops below the minimum, a delivery order is generated.

- Replenish on Order: When there’s demand for a finished product (real or forecasted through the Master Production Schedule), Odoo automatically triggers component replenishment for the subcontractor. To set this up, select the Resupply Subcontractor on Order route for the required components.

Replenishment from Another Supplier
If raw materials need to be purchased from another supplier and delivered directly to the subcontractor, Odoo allows you to automate this process using the Drop Shipping feature.
- Activate Drop Shipping in Purchase ‣ Configuration ‣ Configuration.
- In the purchase order, set Dropship in the Deliver To field under Other Information.
- Provide the subcontractor’s address for direct shipping.

With this setup, the supplier ships the materials directly to the subcontractor, and you only need to validate the receipt. However, manual confirmation of received goods is still required.

Quality Control for Subcontracted Products
Odoo’s Quality app enables businesses to ensure subcontracted products meet required standards. Instead of setting quality checks at the manufacturing stage (since it happens externally), define checks upon product reception.

To enforce quality checks on subcontracted products:
- Open the Quality app and create a Control Point.
- Set the control point on the reception process instead of manufacturing.

Now, each time a subcontracted product is received, a quality check is automatically generated.
Learn More About Odoo Manufacturing
Check out our Complete Odoo Manufacturing Guide for an in-depth walkthrough of all key features.
Wrap-Up
Odoo’s subcontracting feature streamlines manufacturing operations by automating inventory tracking, cost management, and quality control. With proper configuration, businesses can efficiently manage subcontracted production without losing visibility over materials and processes.
Need Help with Odoo Manufacturing?
Optimise your manufacturing flows with Numla’s Odoo expertise.