Sale Commission Product Criteria Domain
This module allows to limit applied commission items for specific groups.
This module allows to manage the following commission structure use case:
Agent A receives commission 50 when selling product 1 to customer X
Agent A receives commission 20 when selling product 1 to customer Y
This implementation is based on pricelist-like Commission Type structure provided by sale_commission_product_criteria.
auto_awesome What this module does
AI-generated from the code · Odoo 16.0Lets you restrict which commission rules apply to each agent per customer, so the same agent can earn different commissions depending on the customer and product.
This module adds a new commission type called "Product criteria (with restrictions)" on commission records. When a commission uses this type, each commission rule (item) can be attached to a "Commission Items Group".
- A new menu "Commission Type Items Groups" (under Commission Management) lets you create groups such as "Spain" or "Italy", see the commissions and items linked to them, and open the list of agents using each group.
- On an agent's contact form you can tick "Apply Restrictions" and choose the allowed groups. On a customer's contact form, the agents section shows, for each agent, which groups are allowed for that customer.
- When you add an agent to a customer, the allowed groups are filled in automatically from the agent's own settings, and removed when the agent is removed.
- Commission amounts on sales order lines and invoice lines are recalculated using only the rules whose group is allowed for that agent and customer; otherwise the standard calculation is used.
- A group cannot be deleted while commission items still reference it, and the same agent cannot be added twice for the same customer.
It touches commission, commission.item, res.partner, sale.order.line.agent and account.invoice.line.agent.
Depends on
Required by other modules
Menus it adds
Models and fields (8)
- commission · extends an existing modelcommission_type
- res.partner · extends an existing modelcommission_type (Commission Type), commission_item_agent_ids (Commission Items Groups), allowed_commission_group_ids, apply_commission_restrictions (Apply Restrictions), allowed_commission_group_ids_domain
- commission.item · extends an existing modelgroup_id, commission_id (Commission), sale_commission_type
- commission.item.agent · new modelagent_id, group_ids (Commission Items Groups Restrictions), partner_id, agent_group_ids, partner_agent_ids
- commission.line.mixin · extends an existing model
- sale.order.line.agent · extends an existing model
- commission.items.group · new modelname, item_ids (Items), agents_count, commission_ids
- account.invoice.line.agent · extends an existing model
Text generated by AI (DeepSeek) from reading the Odoo 16.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-03Confirmation status: 2 confirmed, 7 with no information of 9 versions.
Sources · Odoo 16.0
Confirmed on 2026-11-03 in branch 16.0 of OCA/commission.
terminal Installation and usage
OCA documentation · Odoo 16.0Usage
Source · Odoo 16.0Go to Commissions > Configuration > Commission Type Items Groups
Create one or more new Groups, eg. “Italy” and “Spain”
Create new Commission type, select type “Product Criteria (with restrictions)”, eg: “Southern Europe”
Add lines to Commission type; for each line one Group must be set, eg.
Product: Conference Chair, value: $20, group: Italy
Product: Conference Chair, value: $10, group: Spain
Go to Agent A, assign Commission type: “Southern Europe” > add “Allowed Commission Groups”: “Italy”, “Spain”
In this way, we are allowing Commission type lines for both “Spain” and “Italy” to be applied to this agent.
Go to customer X, set agent: “Agent A” > in table “Commission items group” set group “Spain”
Go to customer Y, set agent: “Agent A” > in table “Commission items group” set group “Italy”
On sales for customer X, only Commission type lines with group “Spain” will be applied to agent; on sales for customer Y, only Commission type lines with group “Italy” will be applied to agent.
No verified information in OCA: Installation, Configuration.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
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.