Environment
- Odoo 19 Enterprise
- Apps: Sales, Inventory, MRP
Use case
Repair business. We sell “iPhone 12 Screen Replacement”. Confirmation should create an MO that consumes a stocked screen and repair labor.
Configuration
Product: “iPhone 12 Screen Replacement”
- Product Type: Storable
- Routes: Manufacture (built on demand; since we do not keep finished stock for repairs)
BoM:
- Component: “iPhone 12 Screen” (Storable, stocked)
- Line: Labor/Service for repair work
Goal
On a quotation/SO line, availability for “Screen Replacement” should reflect the available quantity of the screen component. We never pre-build the finished item.
Current behavior
- SO line shows 0 available for the parent product.
- Component “iPhone 12 Screen” has ample stock.
- Confirming the SO auto-creates an MO that works correctly.
- Sales needs “can we deliver?” based on component stock, not finished stock.
Considered
Switch BoM Type to Kit (phantom) so Sales availability derives from components. Downside: no MO and weaker repair/work-center traceability.
Questions
1. Is there a native setting in Odoo 19 to compute SO availability for a Manufacture BoM from its components?
2. If not, what is best practice for this pattern?
- Keep Manufacture and add a computed availability on SO lines based on BoM components.
- Switch to Kit (phantom) and model labor as a service line, accepting the loss of MO traceability.
- Another standard approach for repair bundles built on demand?
Constraints
- The same screen component is shared across multiple SKUs. We want to avoid over-commitment during quoting.
- Prefer minimal customization if a standard configuration exists.