Multi Warehouse Sale Order
by Steven Marp https://apps.odoo.com/apps/modules/browse?author=Steven Marp$ 22.00
Multi Warehouse Sale Order
Flexible Warehouse Allocation
Choose warehouse directly on Sales Order lines or split quantity across multiple warehouses.
Live Free Stock Validation
See live available stock for each warehouse inside the order lines and allocation popups.
Odoo Stock Integration
Seamless integration with standard Odoo inventory routes, reservation, and delivery transfers.
System Configuration
To enable multi-warehouse delivery operations in Odoo 18, configure the inventory settings first.
Enable Inventory Storage Locations & Multi-Step Routes
Go to Inventory > Configuration > Settings. In the Warehouse section, check the options for Storage Locations and Multi-Step Routes (highlighted in red) to allow management of multiple warehouses and custom source locations on transfers.
Scenario 1: Warehouse per Order
Delivery using standard Odoo method, where the entire order is delivered from one main warehouse defined on the sales order.
Step 1: Configuration of Mode & Main Warehouse
Select the Other Info tab, set the Warehouse Mode field to Sale Order Warehouse. Choose the main warehouse in the Warehouse field (e.g. YourCompany).
Step 2: Add Products in Order Lines
On the Order Lines tab, add the products to sell. The Warehouse column is automatically filled and is readonly (since the warehouse mode is set for the whole order, not per line).
Step 3: Confirm Order & Smart Delivery Button
Once the Sales Order is confirmed, the system displays the Delivery smart button on the top-right of the sheet containing exactly 1 delivery transfer.
Step 4: Single Delivery Details
When the delivery document is opened, you can see the delivery operation type from the main warehouse (YourCompany: Delivery Orders) with the source location WH/Stock for all ordered product quantities.
Scenario 2: Warehouse per Line
Select different warehouses directly on each Sales Order line. The system automatically groups the items and generates separate delivery transfers.
Step 2: Choose Different Warehouses on Each Line
On the Order Lines tab, add products. Choose a different warehouse for each line. The red box highlights the Warehouse column with different warehouse selections (YourCompany and WH San Francisco). After confirming the order, the Delivery smart button shows 2.
Step 3: Automatic Delivery Split
Click the Delivery smart button. The system automatically generates 2 separate delivery transfers based on their source warehouses: one from sf/Stock (San Francisco) and the other from WH/Stock (YourCompany).
Step 4: San Francisco Warehouse Delivery Details
Open transfer sf/OUT/00004. The red box shows the Source Location (sf/Stock) corresponding to the source warehouse WH San Francisco for the first product line.
Step 5: Main Warehouse (YourCompany) Delivery Details
Open transfer WH/OUT/00058. The red box shows the Source Location (WH/Stock) corresponding to the main warehouse YourCompany for the second product line.
Scenario 3: Multi Warehouse per Line (Allocations Dialog)
Click the list icon on any product line to split the ordered quantity across multiple warehouses based on stock availability in each warehouse.
Step 1: Configure Multi Warehouse per Line Mode
On the Other Info tab, set the Warehouse Mode to Multi Warehouse per Line. The red box highlights this configuration.
Step 2: Open Allocation Dialog on Order Line
On the Order Lines tab, add a product. The red box highlights the list/allocation icon (horizontal bars) next to the product quantity column.
Step 3: First Product Quantity Allocation (Incomplete)
On the allocation dialog of the first product, the red box highlights the allocated quantity (currently 2.00 out of 5.00 ordered) and the remaining unallocated quantity indicator on the top-right.
Step 4: Quantity Allocation Validation Security Feature
The red box highlights the validation error message shown if you confirm the order with incomplete allocations. The system prevents order confirmation if the total allocated quantity does not equal the ordered quantity.
Step 5: Second Product Quantity Allocation (Incomplete)
On the allocation dialog of the second product (6.00 ordered), the red box highlights the allocation of 3.00 to WH San Francisco which has no stock (Free Stock: 0.00), showing the remaining unallocated quantity.
Step 6: Complete Correct Allocation
The red box highlights the completed allocation for the second product: 3.00 to WH San Francisco and 3.00 to WH Los Angeles (totaling exactly 6.00), which resolves the unallocated quantity indicator.
Step 7: Order Confirmed & Delivery Smart Button Shows 3
The red box highlights the Delivery smart button showing 3, indicating the system successfully split the product allocations into 3 separate shipments.
Step 8: Three Separate Delivery Orders Generated
Displays the list of 3 separate delivery documents (transfers): la/OUT/00002 (from Los Angeles warehouse), sf/OUT/00005 (from San Francisco warehouse), and WH/OUT/00059 (from the main YourCompany warehouse).
Step 9: Los Angeles Warehouse Delivery Details
Detail of transfer la/OUT/00002 showing the Source Location pointing to la/Stock corresponding to the Los Angeles warehouse allocation.
Step 10: San Francisco Warehouse Delivery Details
Detail of transfer sf/OUT/00005 showing the Source Location pointing to sf/Stock corresponding to the San Francisco warehouse allocation.
Step 11: Main Warehouse (YourCompany) Delivery Details
Detail of transfer WH/OUT/00059 showing the Source Location pointing to WH/Stock corresponding to the main YourCompany warehouse allocation.
1. Navigate to Sales, then create a new Sales Order.
2. In the Other Info tab, select the Warehouse Mode based on your business needs.
3. Add products in Order Lines and adjust the warehouses accordingly (if using Mode 2 or 3).
4. Confirm the Sales Order.
5. Odoo will automatically split and generate separate Delivery Orders based on the allocated warehouses.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Invoicing (account)
• Discuss (mail) • Inventory (stock) |
| Lines of code | 237 |
| Technical Name |
sm_multi_warehouse_sale_order |
| License | OPL-1 |
| Website | https://apps.odoo.com/apps/modules/browse?author=Steven Marp |
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