| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/17.0/sale_product_configurator |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Hidden |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | Yes |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Aaron Bohy, Yannick Tivisse, Odoo Online, Victor Feyens, Adrien Dieudonné, Samuel Degueldre, Tiffany Chang (tic), Gorash, MerlinGuillaume, Antoine Vandevenne (anv), Demesmaeker, Mathieu Walravens, Valentin Chevalier, Iván Todorovich, Thomas Lefebvre (thle), Louis Wicket (wil), Julien (jula), Mahamadasif Ansari, Tom De Caluwé, Andrew Gavgavian, Valentin Vallaeys (vava), Bruno Boi, Antoine (ande), FrancoisGe, Michael (mcm), Valeriya(vchu), Leloup Loïc (lole), stcc-odoo, Renilkumar Kajavadra, Mahdi Cheikh Rouhou (macr), Eteil Djoumatchoua (etdj), Lina (liew), Louis (wil), Pierre Pulinckx (pipu), Pulinckx Pierre (PIPU), aksi-odoo, shrm-odoo |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 01:02:11 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - account_payment - account - onboarding - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - payment - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
Technical module:
The main purpose is to override the sale_order view to allow configuring products in the SO form.
It also enables the "optional products" feature.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
product_template_view_form |
product.template.form.inherit.sale.product.configurator | product.template | group | Inherits product.product_template_form_view |
sale_order_view_form |
sale.order.form.inherit.sale.product.configurator | sale.order | xpath | Inherits sale.view_order_form |
optional_product_ids
Many2many → product.template
check_company=True
column1='src_id'
column2='dest_id'
comodel_name='product.template'
help='Optional Products are suggested whenever the customer hits *Add to Cart* (cross-sell strategy, e.g. for computers: warranty, software, etc.).'
relation='product_optional_rel'
string='Optional Products'
get_single_product_variant(self)
is_configurable_product
Boolean
depends=['product_id']
related='product_template_id.has_configurable_attributes'
string='Is the product configurable?'
product_template_attribute_value_ids
Many2many
depends=['product_id']
related='product_id.product_template_attribute_value_ids'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/16.0/sale_product_configurator |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Hidden |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | Yes |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Yannick Tivisse, Laurent Smet, Romeo Fragomeli, Victor Feyens, Adrien Dieudonné, Samuel Degueldre, Touati Djamel (otd), Pierre Paridans, Merlin (megu), MerlinGuillaume, Thibault Libioulle, Demesmaeker, Thomas Lefebvre (thle), Mylyna Hy, Tom De Caluwé, Valentin Vallaeys (vava), Levi Siuzdak (sile), Louis (loti), Eteil Djoumatchoua (etdj), Julien Carion (juca), Martin Trigaux (mat) |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:40:55 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - account_payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - payment - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
Technical module:
The main purpose is to override the sale_order view to allow configuring products in the SO form.
It also enables the "optional products" feature.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
configure |
Configure | ir.ui.view | qweb | New |
configure_optional_products |
configure_optional_products | ir.ui.view | qweb | New |
optional_product_items |
optional_product_items | ir.ui.view | qweb | New |
optional_products_modal |
Optional Products | ir.ui.view | qweb | New |
product_quantity_config |
product_quantity_config | ir.ui.view | qweb | New |
product_template_view_form |
product.template.form.inherit.sale.product.configurator | product.template | group | Inherits product.product_template_form_view |
sale_order_view_form |
sale.order.form.inherit.sale.product.configurator | sale.order | xpath | Inherits sale.view_order_form |
optional_product_ids
Many2many → product.template
check_company=True
column1='src_id'
column2='dest_id'
comodel_name='product.template'
help='Optional Products are suggested whenever the customer hits *Add to Cart* (cross-sell strategy, e.g. for computers: warranty, software, etc.).'
relation='product_optional_rel'
string='Optional Products'
get_single_product_variant(self)
is_configurable_product
Boolean
depends=['product_id']
related='product_template_id.has_configurable_attributes'
string='Is the product configurable?'
product_template_attribute_value_ids
Many2many
depends=['product_id']
related='product_id.product_template_attribute_value_ids'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/15.0/sale_product_configurator |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Hidden |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Raphael Collet, Odoo Translation Bot, Martin Trigaux, Goffin Simon, Nicolas Lempereur, Jeremy Kersten, Yannick Tivisse, qsm-odoo, Aurélien Warnon, Xavier-Do, Victor Feyens, Adrien Dieudonné, oco-odoo, Florent de Labarre, Julien Mougenot, Touati Djamel (otd), Pierre Paridans, Kamen Zhekov, Arnaud Joset, Kevin Baptiste, william-andre, MerlinGuillaume, yhu-odoo, Michael Mattiello (mcm), Thomas Lefebvre (thle), Tom De Caluwé, Valeriya(vchu), SilvioC2C, vava-odoo |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:25:30 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
Technical module installed when the user checks the "module_sale_product_configurator" setting.
The main purpose is to override the sale_order view to allow configuring products in the SO form.
It also enables the "optional products" feature.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
configure |
Configure | ir.ui.view | qweb | New |
configure_optional_products |
configure_optional_products | ir.ui.view | qweb | New |
optional_product_items |
optional_product_items | ir.ui.view | qweb | New |
optional_products_modal |
Optional Products | ir.ui.view | qweb | New |
product_quantity_config |
product_quantity_config | ir.ui.view | qweb | New |
product_template_view_form |
product.template.form.inherit.sale.product.configurator | product.template | group | Inherits product.product_template_form_view |
sale_order_view_form |
sale.order.form.inherit.sale.product.configurator | sale.order | xpath | Inherits sale.view_order_form |
sale_product_configurator_view_form |
sale_product_configurator.product.configurator.view.form | sale.product.configurator | form | New |
optional_product_ids
Many2many → product.template
check_company=True
help='Optional Products are suggested whenever the customer hits *Add to Cart* (cross-sell strategy, e.g. for computers: warranty, software, etc.).'
string='Optional Products'
args: 'product.template', 'product_optional_rel', 'src_id', 'dest_id'
get_single_product_variant(self)
is_configurable_product
Boolean
related='product_template_id.has_configurable_attributes'
args: 'Is the product configurable?'
product_template_attribute_value_ids
Many2many
readonly=True
related='product_id.product_template_attribute_value_ids'
No public methods.
pricelist_id
Many2one → product.pricelist
readonly=True
args: 'product.pricelist', 'Pricelist'
product_custom_attribute_value_ids
Many2many → product.attribute.custom.value
string='Custom Values'
args: 'product.attribute.custom.value', 'product_configurator_custom_attribute_value_rel'
product_no_variant_attribute_value_ids
Many2many → product.template.attribute.value
string='Extra Values'
args: 'product.template.attribute.value', 'product_configurator_no_variant_attribute_value_rel'
product_template_attribute_value_ids
Many2many → product.template.attribute.value
readonly=True
string='Attribute Values'
args: 'product.template.attribute.value', 'product_configurator_template_attribute_value_rel'
product_template_id
Many2one → product.template
domain=[('sale_ok', '=', True), ('attribute_line_ids.value_ids', '!=', False)]
required=True
string='Product'
args: 'product.template'
quantity
Integer
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/14.0/sale_product_configurator |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Hidden |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Olivier Dony, Christophe Simonis, Goffin Simon, Nicolas Lempereur, Aaron Bohy, Yannick Tivisse, Adrien Dieudonne, Aurélien Warnon, Xavier-Do, jvm-odoo, Victor Feyens, Julien Mougenot, Pierre Paridans, Hiral Bhavsar, Arnaud Joset, Jinal Patel, Kevin Baptiste, MerlinGuillaume, yhu-odoo, SilvioC2C |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:14:31 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
Technical module installed when the user checks the "module_sale_product_configurator" setting.
The main purpose is to override the sale_order view to allow configuring products in the SO form.
It also enables the "optional products" feature.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
sale_product_configurator assets backend | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
Sale Product Configurator Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
configure |
Configure | ir.ui.view | qweb | New |
configure_optional_products |
configure_optional_products | ir.ui.view | qweb | New |
optional_product_items |
optional_product_items | ir.ui.view | qweb | New |
optional_products_modal |
Optional Products | ir.ui.view | qweb | New |
product_template_view_form |
product.template.form.inherit.sale.product.configurator | product.template | xpath | Inherits product.product_template_form_view |
qunit_suite |
sale_product_configurator_tests | ir.ui.view | qweb | Inherits web.qunit_suite_tests |
sale_order_view_form |
sale.order.form.inherit.sale.product.configurator | sale.order | xpath | Inherits sale.view_order_form |
sale_product_configurator_view_form |
sale_product_configurator.product.configurator.view.form | sale.product.configurator | form | New |
optional_product_ids
Many2many → product.template
check_company=True
help='Optional Products are suggested whenever the customer hits *Add to Cart* (cross-sell strategy, e.g. for computers: warranty, software, etc.).'
string='Optional Products'
args: 'product.template', 'product_optional_rel', 'src_id', 'dest_id'
get_single_product_variant(self)
is_configurable_product
Boolean
related='product_template_id.has_configurable_attributes'
args: 'Is the product configurable?'
product_template_attribute_value_ids
Many2many
readonly=True
related='product_id.product_template_attribute_value_ids'
No public methods.
pricelist_id
Many2one → product.pricelist
readonly=True
args: 'product.pricelist', 'Pricelist'
product_custom_attribute_value_ids
Many2many → product.attribute.custom.value
string='Custom Values'
args: 'product.attribute.custom.value', 'product_configurator_custom_attribute_value_rel'
product_no_variant_attribute_value_ids
Many2many → product.template.attribute.value
string='Extra Values'
args: 'product.template.attribute.value', 'product_configurator_no_variant_attribute_value_rel'
product_template_attribute_value_ids
Many2many → product.template.attribute.value
readonly=True
string='Attribute Values'
args: 'product.template.attribute.value', 'product_configurator_template_attribute_value_rel'
product_template_id
Many2one → product.template
domain=[('sale_ok', '=', True), ('attribute_line_ids.value_ids', '!=', False)]
required=True
string='Product'
args: 'product.template'
quantity
Integer
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | odoo/odoo |
| GIT | |
| GIT | https://github.com/odoo/odoo.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/odoo/odoo/tree/13.0/sale_product_configurator |
| VERSION | |
| VERSION | 1.0 |
| CATEGORY | |
| CATEGORY | Hidden |
| LICENSE | |
| LICENSE | LGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | |
| MAINTAINERS | |
| MAINTAINERS | |
| COMMITTERS | |
| COMMITTERS | Odoo Translation Bot, Martin Trigaux, Christophe Simonis, Goffin Simon, Nicolas Lempereur, Géry Debongnie, Jeremy Kersten, Damien Bouvy, qsm-odoo, Alexandre Kühn, Adrian Torres, Aurélien Warnon, Xavier-Do, jvm-odoo, Victor Feyens, Sébastien Theys, Hiral Bhavsar, Arnaud Joset, MerlinGuillaume, Antoine Vandevenne (anv) |
| WEBSITE | |
| WEBSITE | |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:06:44 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - sale - sales_team - base - base_setup - web - bus - web_tour - payment - account - product - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION |
Technical module installed when the user checks the "module_sale_product_configurator" setting.
The main purpose is to override the sale_order view to allow configuring products in the SO form.
It also enables the "optional products" feature.
|
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
assets_backend |
sale_product_configurator assets backend | ir.ui.view | qweb | Inherits web.assets_backend |
assets_tests |
Sale Product Configurator Assets Tests | ir.ui.view | qweb | Inherits web.assets_tests |
configure |
Configure | ir.ui.view | qweb | New |
configure_optional_products |
configure_optional_products | ir.ui.view | qweb | New |
optional_product_items |
optional_product_items | ir.ui.view | qweb | New |
optional_products_modal |
Optional Products | ir.ui.view | qweb | New |
product_template_view_form |
product.template.form.inherit.sale.product.configurator | product.template | xpath | Inherits product.product_template_form_view |
qunit_suite |
sale_product_configurator_tests | ir.ui.view | qweb | Inherits web.qunit_suite |
sale_order_view_form |
sale.order.form.inherit.sale.product.configurator | sale.order | xpath | Inherits sale.view_order_form |
sale_product_configurator_view_form |
sale_product_configurator.product.configurator.view.form | sale.product.configurator | form | New |
optional_product_ids
Many2many → product.template
check_company=True
help='Optional Products are suggested whenever the customer hits *Add to Cart* (cross-sell strategy, e.g. for computers: warranty, software, etc.).'
string='Optional Products'
args: 'product.template', 'product_optional_rel', 'src_id', 'dest_id'
get_single_product_variant(self)
is_configurable_product
Boolean
related='product_template_id.has_configurable_attributes'
args: 'Is the product configurable?'
product_template_attribute_value_ids
Many2many
readonly=True
related='product_id.product_template_attribute_value_ids'
No public methods.
pricelist_id
Many2one → product.pricelist
readonly=True
args: 'product.pricelist', 'Pricelist'
product_custom_attribute_value_ids
Many2many → product.attribute.custom.value
string='Custom Values'
args: 'product.attribute.custom.value', 'product_configurator_custom_attribute_value_rel'
product_no_variant_attribute_value_ids
Many2many → product.template.attribute.value
string='Extra Values'
args: 'product.template.attribute.value', 'product_configurator_no_variant_attribute_value_rel'
product_template_attribute_value_ids
Many2many → product.template.attribute.value
readonly=True
string='Attribute Values'
args: 'product.template.attribute.value', 'product_configurator_template_attribute_value_rel'
product_template_id
Many2one → product.template
domain=[('sale_ok', '=', True), ('attribute_line_ids.value_ids', '!=', False)]
required=True
string='Product'
args: 'product.template'
quantity
Integer
No public methods.