POS Restrict Zero Quantity | POS Restriction For Zero Quantity
by Numan Abdullah https://www.linkedin.com/in/numan-abdullah/| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Point of Sale (point_of_sale) • Discuss (mail) • Invoicing (account) |
| Lines of code | 124 |
| Technical Name |
nab_pos_restrict_zero_qty |
| License | LGPL-3 |
| Website | https://www.linkedin.com/in/numan-abdullah/ |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Point of Sale (point_of_sale) • Discuss (mail) • Invoicing (account) |
| Lines of code | 124 |
| Technical Name |
nab_pos_restrict_zero_qty |
| License | LGPL-3 |
| Website | https://www.linkedin.com/in/numan-abdullah/ |
Stop Overselling from Your POS
Automatically block payment when a customer's order contains out-of-stock products. Real-time warehouse stock check â no more inventory surprises.
Features at a Glance
Block Out-of-Stock Sales
Payment is blocked when any product in the order has zero or negative available stock.
Real-Time Stock Check
Fetches live warehouse data at the moment of payment â not stale cached values.
Per-POS Configuration
Enable or disable stock restriction independently for each POS shop.
Flexible Warning Modes
Choose between a single combined dialog or individual per-product warnings.
Smart Product Detection
Only validates storable products. Services and non-inventory items pass through.
Multi-Line Aggregation
Same product on multiple order lines? Quantities are summed before validation.
Step 1: Enable from POS Configuration
Go to Point of Sale → Configuration → Settings → Enable the restriction
Zero Quantity Product Validation
Check this option to prevent sales of products with zero or negative stock levels. When enabled, the POS will block payment if any product in the order has insufficient stock.
Show Warning Per Product
When checked, a separate warning dialog is displayed for each out-of-stock product individually. When unchecked, all restricted products are shown in one combined dialog.
Step 2: Product with Zero Stock On Hand
The module detects storable products with 0.00 available quantity in real time
On Hand: 0.00 Units
The product "Large Desk" has 0.00 Units on hand in the warehouse. When a cashier tries to sell this product, the module will block the payment.
Smart Detection
Only storable products (Product Type: Goods, Track Inventory: By Quantity) are validated. Services and non-inventory items are never restricted.
Step 3: Payment Blocked with Warning
Cashier sees a clear warning when trying to pay for out-of-stock items
Restricted Products
The following products are out of stock:
Large Desk (available: 0, required: 1)
The warning clearly shows the product name, available quantity and required quantity so the cashier knows exactly what to do. Payment is completely blocked until the restricted products are removed from the order.
Why Choose This Module?
100% Free
No hidden costs. LGPL-3 licensed. Free forever.
Odoo 18 Ready
Works with both Community and Enterprise editions.
Lightweight
Only 2 boolean fields. Zero performance impact.
Email Support
Direct developer support via email.
Need Help or Have Suggestions?
Email: numanabdullah758@gmail.com
LinkedIn: linkedin.com/in/numan-abdullah
If you find this module useful, please leave a star rating on the Odoo App Store â it helps a lot!
Please log in to comment on this module
that's module i have download and used its really very helpful for currently for modern shopping malls and warehouses especially when you don't know how many product you have left before it you can check
It will more helpfull if on every transaction it will let you know how many products you have left in your warehouse
There are no comments yet!