OdooWiki OCA HUB

Purchase Vendor Bill Breakdown

purchase_vendor_bill_breakdown folder_open OCA/purchase-workflow open_in_new
Purchase Management License: AGPL-3

This module offers a solution for the following scenario:

  • We purchase a Toolbox product from a supplier
  • Supplier delivers us the Toolbox but issues an invoice with 1x Box, 2x Wrench, 5x Screwdriver and 1x Hammer products in line

This module allows to replace a product in PO Line with a predefined set of components in the vendor bill line and also allows to calculate vendors product price by product components price.

Please note: this module is not compatible with stock. To use these features with stock components, you need to install module purchase_stock_vendor_bill_breakdown .

auto_awesome What this module does

AI-generated from the code · Odoo 14.0

Lets you replace a purchased product with a predefined set of component products on the vendor bill, and compute the vendor price from those components. Useful when a supplier invoices a kit as separate items.

When a vendor is flagged to use product components, purchase orders can be switched to 'Use Product Components'. On each order line a list button opens a 'Product Components' popup where you define the components that make up the purchased product, with quantity per unit, unit of measure and unit price.

  • Components are copied automatically from the vendor's product information when the order line is created or its product changes.
  • The vendor price of the product can be computed as the sum of its component prices; the price field becomes read-only when both the vendor and the product use components.
  • Component unit prices are taken from the component's vendor price list, falling back to its cost.
  • Received quantities update the component quantities, and the 'Billed' and 'To Invoice Quantity' columns follow the invoices.
  • When the vendor bill is created, the original order line is skipped and replaced by one bill line per component, keeping taxes and analytic information.
  • Checks prevent components from containing the parent product or being duplicated, and you cannot activate components on an order that already has an invoice.

It touches purchase.order, purchase.order.line, product.supplierinfo, account.move and account.move.line. A new model purchase.order.line.component stores the component lines.

Required by other modules

Models and fields (7)
  • account.move · extends an existing model
  • purchase.order · extends an existing modeluse_product_components
  • account.move.line · extends an existing modelcomponent_qty
  • purchase.order.line · extends an existing modelsupplier_id, component_ids, show_breakdown, last_qty_invoiced (Billed Qty), use_product_components
  • product.supplierinfo · extends an existing modelprice, price_manual (Price)
  • purchase.order.line.component · new modeltotal (Quantity), line_id (Purchase Order Line), total_qty (Received), partner_id, price_unit (Unit Price), currency_id (Currency), supplier_id, component_id (Component), qty_invoiced (Billed), price_subtotal (Subtotal), product_uom_id (Unit of Measure), qty_to_invoice (To Invoice Quantity), product_uom_qty (Quantity per Unit), component_uom_category_id
  • product.supplierinfo.component · extends an existing modelprice_total, current_price (Current price)

Text generated by AI (DeepSeek) from reading the Odoo 14.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: 1 confirmed, 8 with no information of 9 versions.

Sources · Odoo 14.0

Confirmed on 2026-11-03 in branch 14.0 of OCA/purchase-workflow.

terminal Installation and usage

OCA documentation · Odoo 14.0
  • In vendor, enable Use Product Components option in the Sales & Purchases tab.
  • In product, enable Use Product Components option in the Purchase tab.
  • If both product and vendor have the flag activated, in the Purchase tab of the Product, table Vendor there will be a button at the end of the supplierinfo line.
  • Click the button and add components and quantities to display in vendor bill for the product > save
  • Supplierinfo price is now readonly and calculated as sum of the first applicable supplierinfo price * their quantities.
  • Create a new RQF from this Vendor, add product with breakdown components.
  • Confirm the RFQ. Note there will be a button for the product component breakdown in the PO Lines, tracking qty received and billed.
  • When a vendor bill is created, only received components are billed and not the product in the PO Line.

No verified information in OCA: Installation, Configuration.

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.