| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Purchase (purchase) • Discuss (mail) • Invoicing (account) |
| Lines of code | 437 |
| Technical Name |
warehouse_access_control |
| License | LGPL-3 |
| Website | https://www.securelogic.pk |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Inventory (stock)
• Purchase (purchase) • Discuss (mail) • Invoicing (account) |
| Lines of code | 437 |
| Technical Name |
warehouse_access_control |
| License | LGPL-3 |
| Website | https://www.securelogic.pk |
Warehouse Access
Control
Restrict every warehouse head to their own assigned data — stock, transfers, receipts, deliveries, locations, purchase orders, and replenishment. Zero overlap. Zero manual SQL.
|
1→∞
Users per Warehouse
|
10+
Protected Models
|
0
Data Overlap
|
100%
Record Rule Based
|
|
â Problem
Default Odoo access is too broadStandard Odoo lets inventory users browse data across all warehouses. Stock levels, internal transfers, vendor orders, and operational details between branches become visible to everyone — creating security and compliance risks. |
â Solution
Strict warehouse-level data isolationThis module assigns a specific warehouse to a specific user. The user sees only records connected to their assigned warehouse and cannot access, view, or modify any other warehouse's data. |
Everything needed for warehouse user restriction
A complete access control layer built natively on Odoo's record rule engine — no hacks, no custom SQL, no workarounds.
|
🔐
User-Specific Warehouse RightsAssign warehouse access directly to users so each warehouse head operates strictly within their own area. |
🏭
Multiple Warehouse SupportManage unlimited warehouses while keeping each branch's data fully separated from others. |
📦
Stock & Inventory ProtectionRestricts stock quantities, inventory operations, locations, moves, move lines, and internal transfers. |
||
|
🚚
Receipt & Delivery ControlIncoming receipts, outgoing deliveries, and operation types are filtered automatically by assigned warehouse. |
🧾
Purchase Order VisibilityPurchase records are limited according to the destination warehouse or warehouse operation type. |
📊
Clean Filtered ReportsInventory screens and operational reports remain focused on the logged-in user's assigned warehouse only. |
Simple access flow — 4 steps
Warehouse restrictions activate automatically once setup is complete. No ongoing maintenance required.
|
1
|
Create warehouses in OdooCreate Warehouse A, Warehouse B, or any number of warehouses from Inventory → Configuration → Warehouses. |
|
2
|
Assign a warehouse to each userOpen the user or warehouse access configuration and select which user is responsible for which warehouse. |
|
3
|
Record rules filter data automaticallyWhen the user opens inventory, Odoo automatically applies warehouse-based domains and hides unrelated records — no manual steps needed. |
|
4
|
Each head sees only their own warehouseWarehouse A head cannot view or modify Warehouse B records. Complete data isolation is enforced at the database record level. |
Two warehouses, two heads, zero interference
Each warehouse head logs in to a clean, focused view — containing only the data relevant to their operation.
🏢 Warehouse A Head
|
🏢 Warehouse B Head
|
Models protected by warehouse access rules
All core inventory and purchasing models covered with precise record-rule based restriction logic.
| Area | Odoo Model | Restriction Logic |
|---|---|---|
| Warehouses | stock.warehouse | Only assigned warehouses |
| Transfers | stock.picking | Picking type → assigned warehouse |
| Stock Quantity | stock.quant | Location under warehouse stock |
| Locations | stock.location | Related internal locations only |
| Stock Moves | stock.move | Moves linked to allowed pickings |
| Move Lines | stock.move.line | Filtered by assigned warehouse |
| Operation Types | stock.picking.type | Warehouse-specific operations |
| Replenishment | stock.warehouse.orderpoint | Reordering rules of warehouse |
| Purchase Orders | purchase.order | Warehouse/destination visibility |
| Scrap | stock.scrap | Scrap records of warehouse only |
Quick setup in Odoo 16
|
STEP 01
Copy Module
Place warehouse_access_control in your custom addons path.
|
STEP 02
Restart Odoo
Restart the server and update the Apps list in developer mode.
|
STEP 03
Install App
Search and install Warehouse Access Control from the Apps menu.
|
STEP 04
Assign Access
Settings → Users → select user → assign warehouse in Access Rights tab.
|
Inventory → Configuration → Warehouses → Assign Warehouse Head
Better control for multi-warehouse businesses
Built for operations that need real accountability between branches, without technical complexity.
|
|
|||||
|
|
Keep in mind before going live
â Important Security NoteAlways test restrictions with a normal non-admin user account. Odoo administrators can bypass record rules by design — this is standard Odoo behavior, not a module limitation. |
â Recommended Business RuleFor strict isolation, assign one warehouse head to one warehouse only. This keeps accountability clear and avoids cross-warehouse access confusion within your organization. |
Visual walkthrough of the workflow
Replace the placeholders below with your real Odoo screenshots showing the module in action.
SCREEN 01
Warehouse Access TabThe warehouse form where specific users are assigned as warehouse heads. |
SCREEN 02
User Access RightsUser profile showing the assigned warehouse restriction group or role. |
|
SCREEN 03
Filtered TransfersWarehouse head sees only their own receipts, deliveries, and transfers. |
SCREEN 04
Stock Report RestrictionInventory quantities and reports filtered to the assigned warehouse only. |
screenshots beside this file, then place images named: warehouse-access-tab.png, user-access-rights.png, filtered-transfers.png, stock-report-restriction.png.
Watch the Warehouse Access Control Demo
A complete walkthrough: installation, warehouse creation, user assignment, record restriction, and live testing with warehouse head users.
|
Step-by-step demo
Full setup and access assignment walkthrough.
|
Real restriction test
Login as Warehouse A and B heads to verify isolation.
|
Client-ready explanation
Useful for proposals, app pages, and documentation.
|
SecureLogic Consulting
We help businesses implement, customize, support, and grow with Odoo. From ERP implementation to custom modules, functional consultancy, user training, and digital marketing — SecureLogic Consulting provides complete business technology support.
|
🚀
Odoo ImplementationComplete setup, module configuration, workflow mapping, data migration guidance, and go-live support. |
💻
Custom DevelopmentCustom modules, reports, dashboards, automation, access control, integrations, and business-specific features. |
📋
Functional ConsultancyBusiness process analysis, Odoo best-practice guidance, user roles, approval flows, and functional documentation. |
||
|
🛠
Support & MaintenanceBug fixing, performance support, module updates, issue troubleshooting, and continuous improvement. |
🎓
Training & OnboardingRole-based training for users, managers, and warehouse teams with practical workflows and clear instructions. |
📣
Digital MarketingBrand visibility, social media creatives, campaign support, content planning, and digital growth services. |
Ready to secure your warehouses?Get in touch and we'll set up Warehouse Access Control for your Odoo instance. |
📧 Get in Touch |
SecureLogic ConsultingOdoo Implementation · Custom Development · Functional Consultancy · Support & Maintenance · Training & Onboarding · Digital Marketing |
📧 consulting@securelogic.pk |
| © 2024 SecureLogic Consulting · All rights reserved | Warehouse Access Control · Odoo 16 |
Please log in to comment on this module