OdooWiki OCA HUB

Sale Product Pack

sale_product_pack folder_open OCA/product-pack open_in_new
Sales License: AGPL-3

This module adds Product Pack functionality to sales orders. You can choose a Pack in sales order lines and see different behaviors depending on "Pack type" and "Pack component price" fields options selected on this Pack.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Sell product packs on sales orders: when you add a pack product, its components are automatically added as separate lines, with prices and discounts handled according to the pack configuration.

This module brings product packs into the Sales app. When a user adds a product that is configured as a pack to a sales order, the pack's components are automatically added as separate order lines underneath it, so the order shows what is really being sold.

  • Pack lines are indented in the description to show they belong to the pack.
  • Depending on the pack type and component price option, component prices may be shown individually, totalized on the pack line, or ignored.
  • A discount percentage can be set on each pack component; it is applied to the component price and combined with any line discount.
  • If the pack is not marked as modifiable, users cannot change or delete its component lines; Odoo raises an error explaining they must delete the pack itself.
  • A lock button appears on pack lines and opens the parent pack product.
  • When updating prices or pricelists, pack lines are handled correctly.
  • Copying a sales order does not copy pack component lines from another order.

The module touches sale.order, sale.order.line and product.pack.line, and adds the sale discount field to pack line forms and lists for users with the discount permission.

Depends on

Models and fields (3)
  • sale.order · extends an existing model
  • sale.order.line · extends an existing modelpack_type, pack_depth (Depth), pack_modifiable, pack_child_line_ids, pack_parent_line_id, pack_component_price, do_no_expand_pack_lines
  • product.pack.line · extends an existing modelsale_discount (Sale discount (%))

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 18.0

Confirmed on 2026-11-03 in branch 18.0 of OCA/product-pack.

terminal Installation and usage

OCA documentation · Odoo 19.0

To use this module, you need to:

  • Go to Sales \> Products \> Products, create or select a product and check Is Pack?
  • Set "Product type" and "Pack component price" fields in the Pack page.
  • Add the products to be included in it.
  • Go to Sales \> Orders \> Quotations and create a Quotation.
  • Add a product that has checked "Is Pack?"
  • Save data and you will see an specific behavior depending on "Pack type" and "Pack component price" fields options selected on this Pack. For example, for products that has Detailed option selected in "Pack type" field you will see one sale order line per component that belong to this Pack. (See Product pack module README.rst file)

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.