Block & Hide Out-of-Stock for Sales & POS
by Nawah for Technical Solutions and Software W.L.L https://nawah.qa$ 19.81
In-App Purchases| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Point of Sale (point_of_sale)
• Discuss (mail) • Inventory (stock) • Invoicing (account) |
| Lines of code | 700 |
| Technical Name |
nawah_block_hide_no_stock |
| License | OPL-1 |
| Website | https://nawah.qa |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Point of Sale (point_of_sale)
• Discuss (mail) • Inventory (stock) • Invoicing (account) |
| Lines of code | 700 |
| Technical Name |
nawah_block_hide_no_stock |
| License | OPL-1 |
| Website | https://nawah.qa |
Block & Hide Out-of-Stock for Sales & POS
Stop selling what you do not have. Block Sales Orders and Point of Sale tickets, and optionally hide out-of-stock products, when the requested quantity is higher than your real available stock.
Odoo 19.0 Sales Point of Sale Community & Enterprise 5 languages OPL-1
See the highlights How it worksSell only what you can deliver
Overselling creates back-orders, late deliveries, refunds and unhappy customers. This module adds a stock guard at the exact moment a commitment is made, so your teams cannot promise quantities that are not really available.
In the back office, confirming a Sales Order with insufficient stock opens a guided wizard instead of silently confirming. On the shop floor, the Point of Sale warns the cashier, prevents the ticket from being paid when a line exceeds the available quantity, and can hide products that are out of stock. You decide which stock figure to compare against, and which user groups (if any) may override the block on Sales.
What this module solves
- Prevents promising stock you do not have.
- Reduces back-orders and broken delivery promises.
- Gives cashiers instant, clear stock feedback.
- Keeps the rule configurable, not hard-coded.
Highlights
One consistent stock rule, enforced across Sales and Point of Sale.
Sales Order block
Confirming a quotation checks every storable line against your chosen stock field and opens a resolution wizard when the demand is too high.
Configurable stock field
On Sales, compare against quantity available today, free-to-use today, or the forecasted quantity at the delivery date. Set it per company.
Guided resolution wizard
Blocked lines are listed with their maximum allowed quantity, so the user can fix the order in one screen instead of guessing.
Adjust or split the order
Reduce a line to the maximum available quantity, or move the unavailable lines to a new order so the rest can be shipped now.
Group-based override
Optionally allow selected user groups to confirm a Sales Order anyway. Leave it empty to make the block strict for everyone.
Chatter audit notes
Internal notes are posted in the order chatter when quantities are adjusted, when lines are moved to a new order, or when an order is confirmed with an override.
Point of Sale block
Enable the block per Point of Sale. The cashier is stopped both when adding a product and when validating the payment, including fast payment validation.
Hide out-of-stock products
Optionally remove storable products with no available stock from the Point of Sale product list, in both the category view and the search results.
Available quantity on the card
Each storable product shows a badge with its available quantity on the Point of Sale product card, so cashiers see the limit before reaching it.
Warehouse aware
In the Point of Sale, the available quantity is scoped to the warehouse of the till and accounts for the other open orders in the session.
Sales workflow
Configure
Pick the stock field to compare against and, optionally, the groups allowed to bypass the block.
Confirm an order
When a quotation is confirmed, every storable line is checked against the available quantity.
Review the wizard
Blocked lines are shown with their maximum allowed quantity for a clear, one-screen decision.
Resolve
Adjust the quantity, move the pending lines to a new order, or confirm anyway if you belong to an allowed group.
Point of Sale
The same protection where speed matters most.
Enforced at two moments
- When a product is added or its quantity is increased, the line is clamped to the maximum available and the cashier is warned.
- When the order is validated, including fast payment validation, the quantities are re-checked against live stock.
Clear and accurate
- Choose Free to Use, On Hand, or Forecasted quantity per Point of Sale.
- Show the available quantity as a badge on each storable product card.
- Optionally hide products that are out of stock from the product list.
- Quantities are scoped to the warehouse of the operation type and re-read from the server at payment time.
Who benefits
Retail and shops
Counter staff cannot sell beyond what is on the shelf, and out-of-stock items can be hidden from the till.
Wholesale and distribution
Sales reps commit only to quantities you can actually deliver.
Make-to-stock businesses
Compare against forecasted stock at the delivery date, not just today.
Screenshots
The main screens you and your team will use.
Configuration
Point of Sale settings: enable the stock block, choose the stock quantity to check, and turn on hiding of out-of-stock products.
Point of Sale in action
Product cards showing the available quantity badge, with out-of-stock products hidden when the option is enabled.
Sales resolution wizard
The wizard lists blocked lines with their maximum allowed quantity, and offers Adjust, Move to New Order, or Confirm anyway.
Technical information
| Odoo version | 19.0 |
|---|---|
| Editions | Community and Enterprise (no Enterprise-only dependency) |
| Languages | English, Arabic, Spanish, Italian, Portuguese |
| Depends on | sale_stock, point_of_sale |
| Extra Python libraries | None required |
| License | OPL-1 (Odoo Proprietary License v1.0) |
| Category | Sales / Point of Sale |
| Type | Extension module (adds settings, a Point of Sale guard, and a confirmation wizard) |
Access rights
The module does not create new security groups. It uses your existing Odoo access rules and lets administrators decide who may bypass the block.
- The confirmation wizard is available to internal users.
- The Sales bypass is granted by selecting one or more existing Odoo groups in the settings.
- The Point of Sale block and the hide option are configured per Point of Sale by a Point of Sale manager.
Frequently asked questions
Does it work on both Community and Enterprise?
Yes. It depends only on standard Sales, Inventory and Point of Sale modules, which are available in both editions.
Which products are checked?
Only storable products are checked and hidden, because they are the ones tracked in inventory. Services and non-storable products are always available.
Which stock quantity is used?
You choose. On Sales: quantity available today, free-to-use today, or forecasted at the delivery date. On the Point of Sale: Free to Use, On Hand, or Forecasted.
Can managers still confirm when needed?
On Sales, yes, if you list their group as allowed to bypass. On the Point of Sale, the block is enforced for everyone when enabled.
Does hiding a product delete or archive it?
No. Hiding only removes out-of-stock storable products from the Point of Sale product list. The products stay unchanged and reappear once stock is available again.
Does it apply to the Self-Order or kiosk app?
No. The Point of Sale features apply to the cashier app. The customer Self-Order and kiosk apps use a separate front end and are not covered.
Does it need any external library?
No. The module does not require additional Python packages or external services.
Is each feature optional?
Yes. The Sales block, the Point of Sale block, the available-quantity badge, and the hide option are independent settings you can enable as needed.
Which languages are available?
The module interface is translated into English, Arabic, Spanish, Italian, and Portuguese. It also follows your users' own Odoo language settings.
Support
Questions before installing, or help configuring the block and hide options for your stock policy? Reach out and we will be glad to help.
Contact supportDeveloped and maintained by Nawah for Technical Solutions and Software W.L.L — Software & ERP Solutions, Qatar (nawah.qa).
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