| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/commission |
| GIT | |
| GIT | https://github.com/OCA/commission.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/commission/tree/16.0/sale_commission_product_criteria |
| VERSION | |
| VERSION | 2.0.0 |
| CATEGORY | |
| CATEGORY | Sales Management |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Ilyas, Ooops404 |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Ilyas, Ooops404 |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, Simone Rubino, oca-ci, Eduard Brahas, sygel |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/commission |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:53:44 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/commission: - sale_commission - account_commission - commission 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 | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
commission_item_form_view |
commission.item.form | commission.item | form | New |
commission_item_search |
commission.item.search.view | commission.item | search | New |
commission_item_tree_view |
commission.item.tree | commission.item | tree | New |
sale_commission_form_lines_mod |
commission.form.view.inherit | commission | xpath | Inherits commission.commission_form |
view_order_agent_form_inherit_sale_commission_product_criteria_mod |
sale.agent.order.inherit.form.sale_commission_product_criteria.mod | sale.order | button | Inherits sale_commission.view_order_agent_form_inherit |
view_sale_order_line_tree_mod |
sale.order.line.agent.mod | sale.order.line.agent | field | Inherits sale_commission.view_sale_order_line_tree |
applied_commission_item_id
Many2one → commission.item
No public methods.
commission_type
Selection
ondelete={'product': 'set default'}
selection_add=[('product', 'Product criteria')]
item_ids
One2many → commission.item
copy=True
args: 'commission.item', 'commission_id'
action_unarchive(self)
check_type_change_allowed_moves(self)
check_type_change_allowed_sale(self)
onchange_commission_type(self)
active
Boolean
default=True
applied_on
Selection
default='3_global'
help='Commission Item applicable on selected option'
required=True
args: [('3_global', 'All Products'), ('2_product_category', 'Product Category'), ('1_product', 'Product'), ('0_product_variant', 'Product Variant')], 'Apply On'
based_on
Selection
default='sol'
required=True
args: [('sol', 'Any Sale Order Line')]
categ_id
Many2one → product.category
help='Specify a product category if this rule only applies to products belonging to this category or its children categories. Keep empty otherwise.'
ondelete='cascade'
args: 'product.category', 'Product Category'
commission_id
Many2one → commission
domain=[('commission_type', '=', 'product')]
required=True
string='Commission'
args: 'commission'
commission_type
Selection
default='fixed'
index=True
required=True
args: [('fixed', 'Fixed'), ('percentage', 'Percentage')]
commission_value
Char
compute='_compute_commission_item_name_value'
args: 'Value'
company_id
Many2one → res.company
default=<expr>
readonly=True
args: 'res.company', 'Company'
currency_id
Many2one → res.currency
readonly=True
related='company_id.currency_id'
args: 'res.currency'
fixed_amount
Float
digits='Product Price'
name
Char
compute='_compute_commission_item_name_value'
help='Explicit rule name for this commission line.'
percent_amount
Float
product_id
Many2one → product.product
check_company=True
help='Specify a product if this rule only applies to one product. Keep empty otherwise.'
ondelete='cascade'
args: 'product.product', 'Product Variant'
product_tmpl_id
Many2one → product.template
check_company=True
help='Specify a template if this rule only applies to one product template. Keep empty otherwise.'
ondelete='cascade'
args: 'product.template', 'Product'
sequence
Integer
default=10
create(self, values_list)
validate_values(self, values)
write(self, values)
applied_commission_id
Many2one → commission
readonly=True
args: 'commission'
commission_id
Many2one → commission
comodel_name='commission'
compute='_compute_commission_id'
copy=True
ondelete='restrict'
readonly=False
required=False
store=True
No public methods.
No new fields.
Public methods (0)No public methods.
No new fields.
Public methods (0)No public methods.
applied_commission_item_id
Many2one → commission.item
applied_on_name
Char
related='applied_commission_item_id.name'
based_on
Selection
related='applied_commission_item_id.based_on'
commission_type
Selection
related='applied_commission_item_id.commission_type'
discount
Float
related='object_id.discount'
fixed_amount
Float
related='applied_commission_item_id.fixed_amount'
percent_amount
Float
related='applied_commission_item_id.percent_amount'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/commission |
| GIT | |
| GIT | https://github.com/OCA/commission.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/commission/tree/15.0/sale_commission_product_criteria |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Sales Management |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Ilyas, Ooops404 |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Ilyas, Ooops404 |
| COMMITTERS | |
| COMMITTERS | OCA-git-bot, oca-ci, CarlosRoca13 |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/commission |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:46:33 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/commission: - sale_commission - account_commission - commission OCA/web: - web_domain_field 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 | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
commission_item_form_view |
commission.item.form | commission.item | form | New |
commission_item_search |
commission.item.search.view | commission.item | search | New |
commission_item_tree_view |
commission.item.tree | commission.item | tree | New |
report_settlement_add_value_column |
report_settlement_add_value_column | ir.ui.view | qweb | Inherits commission.report_settlement_document |
sale_commission_form_lines_mod |
commission.form.view.inherit | commission | xpath | Inherits commission.commission_form |
view_order_agent_form_inherit_sale_commission_product_criteria_mod |
sale.agent.order.inherit.form.sale_commission_product_criteria.mod | sale.order | button | Inherits sale_commission.view_order_agent_form_inherit |
view_sale_order_line_tree_mod |
sale.order.line.agent.mod | sale.order.line.agent | xpath | Inherits sale_commission.view_sale_order_line_tree |
applied_commission_item_id
Many2one → commission.item
No public methods.
commission_type
Selection
ondelete={'product': 'set default'}
selection_add=[('product', 'Product criteria')]
item_ids
One2many → commission.item
copy=True
args: 'commission.item', 'commission_id'
action_unarchive(self)
check_type_change_allowed_moves(self)
check_type_change_allowed_sale(self)
onchange_commission_type(self)
active
Boolean
default=True
applied_on
Selection
default='3_global'
help='Commission Item applicable on selected option'
required=True
args: [('3_global', 'All Products'), ('2_product_category', 'Product Category'), ('1_product', 'Product'), ('0_product_variant', 'Product Variant')], 'Apply On'
based_on
Selection
default='sol'
required=True
args: [('sol', 'Any Sale Order Line')]
categ_id
Many2one → product.category
help='Specify a product category if this rule only applies to products belonging to this category or its children categories. Keep empty otherwise.'
ondelete='cascade'
args: 'product.category', 'Product Category'
commission_id
Many2one → commission
domain=[('commission_type', '=', 'product')]
required=True
string='Commission Type'
args: 'commission'
commission_type
Selection
default='fixed'
index=True
required=True
args: [('fixed', 'Fixed'), ('percentage', 'Percentage')]
commission_value
Char
compute='_compute_commission_item_name_value'
args: 'Value'
company_id
Many2one → res.company
default=<expr>
readonly=True
args: 'res.company', 'Company'
currency_id
Many2one → res.currency
readonly=True
related='company_id.currency_id'
args: 'res.currency'
fixed_amount
Float
digits='Product Price'
name
Char
compute='_compute_commission_item_name_value'
help='Explicit rule name for this commission line.'
percent_amount
Float
product_id
Many2one → product.product
check_company=True
help='Specify a product if this rule only applies to one product. Keep empty otherwise.'
ondelete='cascade'
args: 'product.product', 'Product Variant'
product_tmpl_id
Many2one → product.template
check_company=True
help='Specify a template if this rule only applies to one product template. Keep empty otherwise.'
ondelete='cascade'
args: 'product.template', 'Product'
sequence
Integer
default=10
create(self, values)
validate_values(self, values)
write(self, values)
applied_commission_id
Many2one → commission
readonly=True
args: 'commission'
commission_id
Many2one → commission
comodel_name='commission'
compute='_compute_commission_id'
copy=True
ondelete='restrict'
readonly=False
required=False
store=True
No public methods.
No new fields.
Public methods (0)No public methods.
applied_commission_item_id
Many2one → commission.item
applied_on_name
Char
related='applied_commission_item_id.name'
based_on
Selection
related='applied_commission_item_id.based_on'
commission_type
Selection
related='applied_commission_item_id.commission_type'
discount
Float
related='object_id.discount'
fixed_amount
Float
related='applied_commission_item_id.fixed_amount'
percent_amount
Float
related='applied_commission_item_id.percent_amount'
No public methods.
| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/commission |
| GIT | |
| GIT | https://github.com/OCA/commission.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/commission/tree/14.0/sale_commission_product_criteria |
| VERSION | |
| VERSION | 1.1.7 |
| CATEGORY | |
| CATEGORY | Sales Management |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Ilyas, Ooops404 |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Ilyas, Ooops404 |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, Simone Rubino, oca-ci, Alessandro Uffreduzzi, Ilyas, PicchiSeba |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/commission |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 00:40:56 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
OCA/commission: - sale_commission OCA/web: - web_domain_field odoo/odoo: - account - base_setup - base - web - product - bus - web_tour - uom - analytic - portal - web_editor - http_routing - auth_signup - digest - resource - sale_management - sale - sales_team - payment - utm |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
commission_item_form_view |
commission.item.form | commission.item | form | New |
commission_item_search |
commission.item.search.view | commission.item | search | New |
commission_item_tree_view |
commission.item.tree | commission.item | tree | New |
report_settlement |
report_settlement | ir.ui.view | qweb | Inherits sale_commission.report_settlement |
sale_commission_form_lines_mod |
sale.commission.form.view.inherit | sale.commission | xpath | Inherits sale_commission.sale_commission_form |
view_order_agent_form_inherit_sale_commission_product_criteria_mod |
sale.agent.order.inherit.form.sale_commission_product_criteria.mod | sale.order | button | Inherits sale_commission.view_order_agent_form_inherit |
view_sale_order_line_tree_mod |
sale.order.line.agent.mod | sale.order.line.agent | field | Inherits sale_commission.view_sale_order_line_tree |
applied_commission_item_id
Many2one → commission.item
No public methods.
active
Boolean
default=True
applied_on
Selection
default='3_global'
help='Commission Item applicable on selected option'
required=True
args: [('3_global', 'All Products'), ('2_product_category', 'Product Category'), ('1_product', 'Product'), ('0_product_variant', 'Product Variant')], 'Apply On'
based_on
Selection
default='sol'
required=True
string='Based On'
args: [('sol', 'Any Sale Order Line')]
categ_id
Many2one → product.category
help='Specify a product category if this rule only applies to products belonging to this category or its children categories. Keep empty otherwise.'
ondelete='cascade'
args: 'product.category', 'Product Category'
commission_id
Many2one → sale.commission
domain=[('commission_type', '=', 'product')]
required=True
args: 'sale.commission'
commission_type
Selection
default='fixed'
index=True
required=True
args: [('fixed', 'Fixed'), ('percentage', 'Percentage')]
commission_value
Char
compute='_compute_commission_item_name_value'
args: 'Value'
company_id
Many2one → res.company
default=<expr>
readonly=True
args: 'res.company', 'Company'
currency_id
Many2one → res.currency
readonly=True
related='company_id.currency_id'
args: 'res.currency'
fixed_amount
Float
digits='Product Price'
args: 'Fixed Amount'
name
Char
compute='_compute_commission_item_name_value'
help='Explicit rule name for this commission line.'
args: 'Name'
percent_amount
Float
product_id
Many2one → product.product
check_company=True
help='Specify a product if this rule only applies to one product. Keep empty otherwise.'
ondelete='cascade'
args: 'product.product', 'Product Variant'
product_tmpl_id
Many2one → product.template
check_company=True
help='Specify a template if this rule only applies to one product template. Keep empty otherwise.'
ondelete='cascade'
args: 'product.template', 'Product'
sequence
Integer
default=10
create(self, values)
validate_values(self, values)
write(self, values)
commission_type
Selection
ondelete={'product': 'set default'}
selection_add=[('product', 'Product criteria')]
item_ids
One2many → commission.item
copy=True
args: 'commission.item', 'commission_id'
action_unarchive(self)
check_type_change_allowed_moves(self)
check_type_change_allowed_sale(self)
onchange_commission_type(self)
applied_commission_id
Many2one → sale.commission
readonly=True
args: 'sale.commission'
commission_id
Many2one → sale.commission
comodel_name='sale.commission'
compute='_compute_commission_id'
copy=True
ondelete='restrict'
readonly=False
required=False
store=True
No public methods.
No new fields.
Public methods (0)No public methods.
applied_commission_item_id
Many2one → commission.item
applied_on_name
Char
related='applied_commission_item_id.name'
based_on
Selection
related='applied_commission_item_id.based_on'
commission_type
Selection
related='applied_commission_item_id.commission_type'
discount
Float
related='object_id.discount'
fixed_amount
Float
related='applied_commission_item_id.fixed_amount'
percent_amount
Float
related='applied_commission_item_id.percent_amount'
No public methods.
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/commission |
| PULL REQUEST | |
| PULL REQUEST | [18.0][MIG] sale_commission_product_criteria_oca: Migration to 18.0 (#653) |
| STATUS | |
|---|---|
| STATUS | Open migration PR - not merged yet for this version |
| REPOSITORY | |
| REPOSITORY | OCA/commission |
| PULL REQUEST | |
| PULL REQUEST | [19.0][MIG] sale_commission_product_criteria_oca (#664) |