Prevent negative stock in Odoo 19, or require approval
Odoo allows on-hand quantity to go below zero and has no setting to stop it. This module blocks the transfer, or routes it to an approver you nominate, with per-location and per-category exceptions and no self-approval. Off until you switch it on. Community and Enterprise, $29 on the Odoo Apps Store.
From $29 on the Odoo Apps Store · $179 with setup & support
- Store name
- Prevent Negative Stock
- Store price
- $29, one-time purchase
- Setup package
- $179, incl. setup and 30 days of support
- Edition
- Odoo 19 Community and Enterprise
- Licence
- OPL-1
- Technical name
eh_stock_negative_control- Publisher
- EHC, Saudi Arabia
- Support
- ebraheem@hashem.sa
The problem
One mistyped quantity can leave a product at minus fourteen for months while replenishment and costing work from a number that was never real.
By the time someone notices, valuation entries are posted and nobody can tell which transfer made the hole.
Who it is for
- Warehouses that want stock to stay real
- Kitchens and branches that sometimes consume before goods are received
- Auditors and finance teams who need an approval trail
What it does
Block or require approval
Choose per company: stop the validation with a clear message, or allow it only after an approval.
Location and category overrides
Each location and product category can be Allow, Block or Require Approval.
Approvals cannot go stale
An approval covers exactly what was approved; increase a quantity and it must be approved again.
No self-approval
The person who requested the approval cannot approve it. The check runs on the server.
Fail-open
An unexpected error inside the check is logged and the move is allowed; only a real shortage stops a transfer.
Requirements
- Odoo 19 Community and Enterprise.
- Depends on:
stock - Approver groups chosen in Inventory settings (a Negative Stock Approver group is included).
- Hosting: Odoo.sh or your own server. Odoo Online does not accept third-party modules.
Screenshots, the full feature list and the change log are on the Odoo Apps Store listing.
Two ways to buy
$29
The module licence from the official Odoo Apps Store. You install it yourself or with your Odoo partner. Bug fixes from the developer are included.
- Licence bought and downloaded through Odoo
- Updates for the Odoo 19.0 series
- Bug fixes from EHC by email
$179
Module licence at the store price, plus EHC installs it, configures it with your data and supports your team for 30 days. EHC sends you an invoice; nothing is charged online.
- Installed on a staging copy first, then on your live database
- Configured with your settings and tested with your own records
- A handover session for the people who will use it
- 30 days of email support after go-live
Setup fee $150: one working session. Install, settings, a test with your data, handover.
Same module, same code on both routes. The Odoo Apps Store price is never higher than the price on this site; the package adds services only.
Questions buyers ask
What is the difference between the store and the setup package?
The store sells the licence only and you install it. The package is the same licence at the same price plus installation, configuration and 30 days of support by EHC, invoiced by EHC.
Does it stop sales orders or reservations?
No. The check runs when a transfer is validated, not at order confirmation or reservation.
Are incoming receipts restricted?
No. A receipt from a vendor cannot make an internal location negative, so it is never checked.
Can I still correct stock with an inventory adjustment?
Yes. Adjustments remain the way to correct stock; counting to a negative quantity is still caught.
Does it change valuation?
No. It only prevents the movement that would have produced a negative quantity.
Free modules exist. Why pay?
The free ones block. This one adds the approval workflow, location and category overrides, no self-approval and an audit trail.