OdooWiki OCA HUB

Sale Commission Product Criteria Discount

sale_commission_product_criteria_discount folder_open OCA/commission open_in_new
Sales Management License: AGPL-3

This module extends sale_commission_product_criteria to allow user to restrict the commission granted to agent on a Sale Order Line according to the discount applied on the same line.

This is useful to implement a common commission structure for agents which provides a higher commission to agents granting a lower discount to customer, decreasing the commission proportionally as discount increases.

auto_awesome What this module does

AI-generated from the code · Odoo 16.0

Lets you set sales agent commission rules that depend on the discount given on a sale order line, so agents earn more when they discount less and less when they discount more.

This module adds a new way to decide how much commission a sales agent earns: based on the discount applied on the sale order line.

  • In the commission configuration screens, each commission rule (a commission.item) can now be set to be "based on" Discount. When you choose that, two extra fields appear: "Discount From, %" and "Discount To, %". You define a discount range, and the rule only applies when the line's discount falls inside that range.
  • The system checks that the starting discount is not higher than the ending discount; if it is, Odoo shows an error and refuses to save.
  • When a sale order line is processed, Odoo looks through the applicable commission rules in order and picks the first one whose discount range matches the line's discount. If no rule matches, no commission is granted for that line.
  • The chosen rule and its commission are stored on the sale order line agent record, and the discount range is shown there for reference.
  • In Settings, under Sales, a new "Commissions" section lets you choose the default basis for commission rules: either "Any Sale Order Line" or "Discount".
  • The module also makes sure the discount field is available on sale order lines by enabling the discount-per-line setting group.

It works together with the product criteria commission module and affects commission rules, sale order line agents and sales settings.

Models and fields (3)
  • commission.item · extends an existing modelbased_on, discount_to, discount_from
  • res.config.settings · extends an existing modeldefault_based_on
  • sale.order.line.agent · extends an existing modeldiscount_to, discount_from

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-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation 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.0

Make sure "Discounts" are enabled in General Settings > Sale

Go to Commissions > Configuration > Commission Type

In a record of type "Product criteria", create or select a line > set field "Based on" = "Discount"

Two new fields will be displayed to set the range of discount applied on Sale Order Line for which this Commission Type Item will be applicable.

Note that if in a Commission Type are present two Items applied to the same object (eg: the same product or same category), the one "Based on: Discount" is applied.

No verified information in OCA: Installation, Configuration.

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.