| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 446 |
| Technical Name |
mjb_approve_discount_limit |
| License | OPL-1 |
| Website | https://www.majorbird.com |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 446 |
| Technical Name |
mjb_approve_discount_limit |
| License | OPL-1 |
| Website | https://www.majorbird.com |
Satellite Module › Approval Gate Engine › Sales
Approve: Discount Limit
Blocks sale order confirmation when any order line has a discount exceeding your configured limit - the sales manager approves inline before the order can proceed.
by Majorbird — Odoo Silver Partner
The Problem
Excessive discounts slip through without management approval
Salespeople can apply any discount and confirm the order immediately. Margin-destroying discounts, one-off exceptions, and unauthorized promotions get committed before anyone reviews them. By the time the manager notices, the customer already has the confirmation.
What You Get
3 things that work from day one
01
Per-line discount check
The gate triggers if ANY order line has a discount exceeding the configured percentage threshold - even a single offending line blocks the confirmation.
02
Configurable discount ceiling
Set the maximum allowed discount percentage in Settings > Approval Gate Rules. Adjust at any time without module changes.
03
Inline Approve or Reject
The manager reviews the order in full context and clicks Approve or Reject directly on the sale order form.
Powered By
Approval Gate Engine
mjb_approval_rule — Configurable engine that blocks document state transitions until a designated approver explicitly approves inline.
Up and Running
Install once — works automatically
Step 1 - Install
Install Approve: Discount Limit. The Approval Gate Engine installs automatically.
Step 2 - Set discount ceiling
Go to Settings > Technical > Approval Gate Rules, open 'Discount Limit Approval', set the maximum discount % and approver, then enable.
Done - gate is active
Any SO with a line discount above the limit will require manager approval before it can be confirmed.
Good to Know
Scope & limitations
Requires mjb_approval_rule (Approval Gate Engine)
Checks all order lines - partial-line exemptions require customizing the condition expression
Single global threshold - different ceilings per product category require multiple rules
Built by Majorbird
Odoo specialists helping businesses automate what standard Odoo doesn’t cover.
Odoo Silver Partner — Vietnam, China, Mexico & Middle East — Manufacturing, Inventory & Accounting automation.
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module