Base Products Merge

base_product_merge
REPOSITORY
REPOSITORYOCA/stock-logistics-warehouse
GIT
GIThttps://github.com/OCA/stock-logistics-warehouse.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-warehouse/tree/17.0/base_product_merge
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYSales/Sales
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, FernandoRomera
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-warehouse
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:00
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES openupgradelib
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
We can merge duplicates products into single product

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_base_product_merge_form base.product.merge.form base.product.merge form New
Models touched (1)

New fields (6)
  • dst_product_id Many2one → product.product
    string='Destination product' args: 'product.product'
  • dst_product_tmpl_id Many2one → product.template
    string='Destination product' args: 'product.template'
  • merge_method Selection
    default='sql' args: [('sql', 'SQL'), ('orm', 'ORM')]
  • product_ids Many2many → product.product
    string='Products to merge' args: 'product.product', 'product_rel', 'product_merge_id', 'product_id'
  • product_tmpl_ids Many2many → product.template
    string='Products to merge' args: 'product.template', 'product_tmpl_rel', 'product_tmpl_merge_id', 'product_tmpl_id'
  • ptype Selection
    args: [('product.product', 'Product'), ('product.template', 'Template')]
Public methods (3)
  • action_merge(self)
  • default_get(self, fields)
    @api.model
  • merge_products(self, model, products_to_merge, dst_product)
REPOSITORY
REPOSITORYOCA/stock-logistics-warehouse
GIT
GIThttps://github.com/OCA/stock-logistics-warehouse.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-warehouse/tree/16.0/base_product_merge
VERSION
VERSION 1.0.3
CATEGORY
CATEGORYSales/Sales
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow
COMMITTERS
COMMITTERSDenis Roussel, Weblate, OCA-git-bot, oca-ci, Guillaume MASSON, CristianoMafraJunior, emiliesoutiras
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-warehouse
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:45
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES openupgradelib
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_base_product_merge_form base.product.merge.form base.product.merge form New
Models touched (1)

New fields (6)
  • dst_product_id Many2one → product.product
    string='Destination product' args: 'product.product'
  • dst_product_tmpl_id Many2one → product.template
    string='Destination product template' args: 'product.template'
  • merge_method Selection
    default='orm' args: [('sql', 'SQL'), ('orm', 'ORM')]
  • product_ids Many2many → product.product
    string='Products to merge' args: 'product.product', 'product_rel', 'product_merge_id', 'product_id'
  • product_tmpl_ids Many2many → product.template
    string='Products Template to merge' args: 'product.template', 'product_tmpl_rel', 'product_tmpl_merge_id', 'product_tmpl_id'
  • ptype Selection
    args: [('product.product', 'Product'), ('product.template', 'Template')]
Public methods (3)
  • action_merge(self)
  • default_get(self, fields)
    @api.model
  • merge_products(self, model, products_to_merge, dst_product)
REPOSITORY
REPOSITORYOCA/stock-logistics-warehouse
GIT
GIThttps://github.com/OCA/stock-logistics-warehouse.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-warehouse/tree/15.0/base_product_merge
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYSales/Sales
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), ForgeFlow
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), ForgeFlow
COMMITTERS
COMMITTERSOCA-git-bot, oca-ci, JasminSForgeFlow
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-warehouse
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:33
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES openupgradelib
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_base_product_merge_form base.product.merge.form base.product.merge form New
Models touched (1)

New fields (6)
  • dst_product_id Many2one → product.product
    string='Destination product' args: 'product.product'
  • dst_product_tmpl_id Many2one → product.template
    string='Destination product' args: 'product.template'
  • merge_method Selection
    default='sql' args: [('sql', 'SQL'), ('orm', 'ORM')]
  • product_ids Many2many → product.product
    string='Products to merge' args: 'product.product', 'product_rel', 'product_merge_id', 'product_id'
  • product_tmpl_ids Many2many → product.template
    string='Products to merge' args: 'product.template', 'product_tmpl_rel', 'product_tmpl_merge_id', 'product_tmpl_id'
  • ptype Selection
    args: [('product.product', 'Product'), ('product.template', 'Template')]
Public methods (3)
  • action_merge(self)
  • default_get(self, fields)
    @api.model
  • merge_products(self, model, products_to_merge, dst_product)
REPOSITORY
REPOSITORYOCA/stock-logistics-warehouse
GIT
GIThttps://github.com/OCA/stock-logistics-warehouse.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-warehouse/tree/10.0/base_product_merge
VERSION
VERSION 1.0
CATEGORY
CATEGORYGeneric Modules/Base
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERSPedro M. Baeza, Denis Roussel
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-warehouse
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:19:55
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - decimal_precision
    - mail
    - base_setup
    - web_kanban
    - web
    - bus
    - web_tour
    - report
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
To merge 2 products, select them in the list view and execute the Action "Merge Products".

The selected products are deactivated and a new one is created with :
- When a value is the same on each resources : the value
- When a value is different between the resources : you can choose the value to keep in a selection list
- When a value is set on a resource and is empty on the second one : the value is set on the resource
- All many2many relations of the 2 resources are created on the new resource.
- All the one2many relations (invoices, sale_orders, ...) are updated in order to link to the new resource.

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_base_product_merge_form base.product.merge.form base.product.merge form New
Models touched (0)

No models found for this module.

REPOSITORY
REPOSITORYOCA/stock-logistics-warehouse
GIT
GIThttps://github.com/OCA/stock-logistics-warehouse.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-warehouse/tree/9.0/base_product_merge
VERSION
VERSION 1.0
CATEGORY
CATEGORYGeneric Modules/Base
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERS
WEBSITE
WEBSITEhttp://camptocamp.com
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:15:20
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - decimal_precision
    - mail
    - base_setup
    - web_kanban
    - web
    - bus
    - report
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
To merge 2 products, select them in the list view and execute the Action "Merge Products".

The selected products are deactivated and a new one is created with :
- When a value is the same on each resources : the value
- When a value is different between the resources : you can choose the value to keep in a selection list
- When a value is set on a resource and is empty on the second one : the value is set on the resource
- All many2many relations of the 2 resources are created on the new resource.
- All the one2many relations (invoices, sale_orders, ...) are updated in order to link to the new resource.

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_base_product_merge_form base.product.merge.form base.product.merge form New
Models touched (0)

No models found for this module.

REPOSITORY
REPOSITORYOCA/stock-logistics-warehouse
GIT
GIThttps://github.com/OCA/stock-logistics-warehouse.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-warehouse/tree/8.0/base_product_merge
VERSION
VERSION 1.0
CATEGORY
CATEGORYGeneric Modules/Base
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERSStéphane Bidoul, Alexandre Fayolle
WEBSITE
WEBSITEhttp://camptocamp.com
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:11:21
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - decimal_precision
    - mail
    - base_setup
    - web_kanban
    - web
    - report
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
To merge 2 products, select them in the list view and execute the Action "Merge Products".

The selected products are deactivated and a new one is created with :
- When a value is the same on each resources : the value
- When a value is different between the resources : you can choose the value to keep in a selection list
- When a value is set on a resource and is empty on the second one : the value is set on the resource
- All many2many relations of the 2 resources are created on the new resource.
- All the one2many relations (invoices, sale_orders, ...) are updated in order to link to the new resource.

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_base_product_merge_form base.product.merge.form base.product.merge form New
Models touched (0)

No models found for this module.

REPOSITORY
REPOSITORYOCA/stock-logistics-warehouse
GIT
GIThttps://github.com/OCA/stock-logistics-warehouse.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-warehouse/tree/6.1/base_product_merge
VERSION
VERSION 1.0
CATEGORY
CATEGORYGeneric Modules/Base
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERSAlexandre Fayolle, Joël Grand-Guillaume, unknown
WEBSITE
WEBSITEhttp://camptocamp.com
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:04:05
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - product
    - base
    - process
    - decimal_precision
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
To merge 2 products, select them in the list view and execute the Action "Merge Products".

The selected products are deactivated and a new one is created with :
- When a value is the same on each resources : the value
- When a value is different between the resources : you can choose the value to keep in a selection list
- When a value is set on a resource and is empty on the second one : the value is set on the resource
- All many2many relations of the 2 resources are created on the new resource.
- All the one2many relations (invoices, sale_orders, ...) are updated in order to link to the new resource.

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_base_product_merge_form base.product.merge.form base.product.merge form New
Models touched (0)

No models found for this module.