Sell what you have — and protect every order that ships
A configurable rule engine that blocks overselling, guards against unsafe cancellations, and stops negative-stock deliveries — with graduated warn-then-block rules, accountable overrides, and a full audit log.
The problem
Odoo lets a salesperson confirm an order for more units than the warehouse can deliver, and lets anyone cancel an order after it has shipped or been invoiced — silently corrupting stock and financial records. Existing fixes are single-purpose: one app blocks confirmation, another blocks cancellation, a third blocks negative stock, and none offers a controlled way through a shortfall or explains how to resolve a block.
The solution
One configurable rule engine unifies overselling prevention, cancellation protection, and negative-stock delivery blocking behind a single settings area. Graduated warn-then-block thresholds, allow-partial remediation, and guided wizards turn every block into a clear next step, while accountable overrides keep a full audit trail of who bypassed what, and why.
Everything you need to stop stock and cancellation risk
Every capability below is implemented in the module.
Graduated Stock Rules
Configure warn and block thresholds per rule, evaluated against on-hand, forecasted, or free-to-use quantity — so strict and flexible teams both get the behavior they need.
Shortfall Remediation
When a shortfall blocks confirmation, a wizard lists the exact products and quantity gaps, with a one-click option to reduce each line to what is actually available.
Cancellation Guardrails
Block cancellation of orders with delivered pickings or open invoices, and optionally restrict cancellation to a configurable window of days after the order date.
Guided Cancellation Wizard
A blocked cancellation opens a wizard listing every blocking picking and invoice, with buttons to jump to those documents, create a return, or issue a credit note.
Negative-Stock Delivery Block
Outbound delivery validation is blocked when the ordered quantity exceeds what is actually available, catching shortfalls that slip past confirmation.
Per-Product & Category Scope
Apply rules to all storable products, specific products, or entire categories, with dedicated exception lists so selected SKUs or categories are always exempt.
Accountable Overrides
Dedicated force groups let authorized users bypass a block with a reason. Every forced confirmation, forced delivery, and reduced-quantity action is written to a full audit log.
Line-Item Availability Indicators
Each order line shows its availability state and missing quantity directly on the sale order, so shortfalls are visible while editing — not only at confirmation.
Central Settings & Audit Trail
Enable and tune every restriction type from one Sales Settings area, and review a searchable, exportable log of every blocked, forced, and reduced action.
How it works
Define your rules
Set up restriction rules by confirmation or delivery, choose the check basis, and set warn and block thresholds.
Sell as usual
Salespeople build orders normally; availability indicators show fulfillable and short lines right on the order.
Resolve or override
A blocked confirmation, cancellation, or delivery opens a wizard with the exact gap and a guided path to resolve or force it.
Review the audit trail
Every forced action and blocked attempt is logged with user, reason, and timestamp for later review.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
Restrictions apply only to storable products. Services and consumables are never blocked, so your workflow for non-stock items is unaffected.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
Sale Stock Restriction
Graduated overselling rules, cancellation guardrails and a negative-stock delivery block in one configurable engine — scoped per product or category, with a remediation path through a shortfall and accountable overrides.
Buy on Odoo App Store