OdooWiki OCA HUB

Product Variant Configurator

product_variant_configurator folder_open OCA/product-variant open_in_new
Product Variant License: AGPL-3

Provides an abstract model for product variant configuration. It provides the basic functionality for presenting a table with the attributes of a template and the possibility to select one of the valid values. You can try this functionality creating a product variant directly selecting a product template that has attributes.

This module also prevents in a configurable way the creation of the product variants when defining the attributes and attribute values of the product template.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Lets you build product variants by picking attribute values in a table instead of letting Odoo create every combination automatically. You can also switch off automatic variant creation per product or per product category.

This module changes how variants are created and selected in Odoo.

  • On a product template's Variants tab you get a new "Variant creation" setting with three choices: don't create variants automatically, use Odoo's default behaviour, or use the value set on the product category. A similar "Don't create variants automatically" checkbox is added on product categories.
  • When you change these settings Odoo shows a warning that automatic variant creation may be triggered, and turning the option off can immediately generate the missing variants for the products concerned.
  • On a product form you can select a product template and then fill in a small table of attributes and values; Odoo shows the possible values, the extra price of each choice, and automatically finds an existing variant matching your selection or offers to create it.
  • Attribute lines on a template gain a "required" flag; a product cannot be saved if a required attribute has no value, and the same attribute cannot be added twice to one template.
  • The module also adds a user group that makes the generated variant description list each attribute on its own line instead of on one line.

It touches product templates, products, product categories, attributes and values, and price lists.

Depends on

product
Models and fields (8)
  • product.product · new model
  • product.category · extends an existing modelno_create_variants (Don't create variants automatically)
  • product.template · extends an existing modelno_create_variants (Variant creation)
  • product.pricelist · extends an existing model
  • product.configurator · new modelproduct_id (Product Variant), price_extra, product_tmpl_id (Product Template), can_create_product, product_attribute_ids (Product attributes), create_product_variant (Create product now!), product_id_configurator_domain
  • product.attribute.value · extends an existing model
  • product.configurator.attribute · new modelowner_id (Owner), value_id (Value), owner_model, price_extra (Attribute Price Extra), attribute_id (Attribute), product_tmpl_id (Product Template), possible_value_ids
  • product.template.attribute.line · extends an existing modelrequired

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 12.0

Confirmed on 2026-11-03 in branch 12.0 of OCA/product-variant.

terminal Installation and usage

OCA documentation · Odoo 19.0

(after installing sale_management application)

To configure the creation of the variants behaviour, you need to:

  • Go to Sales > Configuration > Settings, and select "Attributes and Variants (Set product attributes (e.g. color, size) to sell variants)" on "Product Catalog" section.
  • Go to Sales > Catalog > Products, and select a product.
  • On the Variants tab edit the value of the field Variant Creation.
  • If you want to stop the automatic creation of the variant, and have the same behaviour for all the products in the same category, go to Inventory > Configuration > Product Categories, select the category and check the checkbox Don't create variants automatically.

(after installing sale_management application)

  • Go to Sales > Catalog > Product Variants.
  • Click on "Create" button for creating a new one.
  • On the field "Product Template", select a product template that has several attributes.
  • A table with the attributes of the template will appear below.
  • Select all the attribute values and click on "Save" button.
  • A new product variant will be created for that attributes.
  • An error will raise if there's another variant with the same attribute values or if you haven't filled all the required values.

Developers

To use product configurator in your model, you need to:

  • The product.configurator is an abstract model, hence, to be used it must be inherited in your model:
  • If the model you're inheriting has name attribute, and it uses the related parameter you must override it.

 

class AModel(models.Model): _inherit = ['module.model', 'product.configurator'] name = fields.Char(related="delegated_field.related_field")

No verified information in OCA: Installation.

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.