By default, Odoo allows negative stock. The advantage of negative stock is that, if some stock levels are wrong in the ERP, you will not be blocked when validating the picking for a customer... so you will still be able to ship the products on time (it's an example !). The problem is that, after you forced the stock level to negative, you are supposed to fix the stock level later via an inventory ; but this action is often forgotten by users, so you end up with negative stock levels in your ERP and it can stay like this forever (or at least until the next full inventory).
If you disallow negative stock in Odoo with this module, you will be blocked when trying to validate a stock operation that will set the stock level of a product and/or location as negative. So you will have to fix the wrong stock level of that product without delay, in order to validate the stock operation in Odoo...you can't forget it anymore !
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Blocks stock operations that would make a product's stock level negative, unless negative stock is explicitly allowed on the product, its category or the location.
By default Odoo lets you validate a stock move even when it drives the quantity below zero. This module adds a control that stops that.
- On each product (stockable products only) you get a new "Allow Negative Stock" checkbox, shown next to the product category field.
- The same checkbox is available on product categories and on internal/transit stock locations.
- When a stock operation is validated, the system checks the resulting quantity in each location. If the quantity would be negative and the product is storable, the location is internal or transit, and neither the product, its category, nor the location allows negative stock, a validation error is raised and the operation is blocked.
- The error message names the product, the lot (if any), the resulting negative quantity and the location, so users know exactly what to fix.
- If negative stock is allowed on the product, its category or the location, the operation goes through as before.
It touches product.template, product.category, stock.location and stock.quant. No new menus are added; the options appear directly in the existing product, product category and location forms.
Depends on
Required by other modules
Models and fields (4)
- stock.quant · extends an existing model
- stock.location · extends an existing modelallow_negative_stock
- product.category · extends an existing modelallow_negative_stock
- product.template · extends an existing modelallow_negative_stock
Text generated by AI (DeepSeek) from reading the Odoo 19.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: 8 confirmed, 1 with no information of 9 versions.
Sources · Odoo 19.0
Confirmed on 2026-11-03 in branch 19.0 of OCA/stock-logistics-workflow.
terminal Installation and usage
OCA documentation · Odoo 19.0Configuration
Source · Odoo 19.0By default, the stockable products will not be allowed to have a negative stock. If you want to make some exceptions for some products, product categories or locations, you can activate the option Allow Negative Stock:
For products:
- Go to Inventory / Master Data / Products and in the tab General Information activate this option.
For product categories:
- Go to Inventory / Configuration / Products / Product Categories and activate this option.
For individual locations:
- Go to Inventory / Configuration / Settings and activate the option Storage Locations.
- Go to Inventory / Configuration / Warehouse Management / Locations and activate the option the option Allow Negative Stock for the locations you choose.
Usage
Source · Odoo 19.0When you validate a stock operation (a stock move, a picking, a manufacturing order, etc.) that will set the stock level of a stockable product as negative, you will be blocked by an error message. The consumable products can still have a negative stock level.
No verified information in OCA: Installation.
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.