跳至内容
菜单
此问题已终结
1 回复
135 查看

Dear All,

My small business allows people to pre-order/buy items that are transferred to another location. All these goodies are still virtual.

I am trying to create a Sales Order that does an internal transfer instead of a delivery order. 
To transfer stock from a virtual warehouse location to another virtual warehouse location. 
While assigning ownership of orders products.

For the Sales Order, even if I select the specific route in line items, it will always default back to a delivery order. How to a get it to be a internal transfer?

形象
丢弃
最佳答案

Hi,


By default, Odoo Sales Orders always create a Delivery Order to the customer, since the sales flow assumes goods move from the warehouse to a customer location. To make a Sales Order trigger an internal transfer instead, you need to change the logistics route. The goal is to move stock between two internal or virtual locations rather than delivering to a customer.


To achieve this, you first create a custom route in Inventory → Configuration → Routes with an operation type set to Internal Transfer. Define a rule that pulls or pushes goods from one virtual location to another and make sure it applies to Sales Order Lines. Then, enable Multi-Step Routes and Advanced Routes on Sales Order Lines in Inventory settings so that routes can be selected directly in a sale order. Assign this new internal transfer route to your product or choose it manually when creating a Sales Order.


Once configured, confirming the Sales Order will generate an Internal Transfer picking instead of a Delivery Order. If you need to track stock ownership, you can customize the stock move creation to assign ownership (using the restrict_partner_id field). The reason Odoo defaults back to delivery orders is that the system’s standard sale routes always prioritize customer deliveries unless explicitly overridden.


For automation, you can extend the Sale Order Line model with a small customization that automatically sets the warehouse or route when the picking type is internal. This setup allows you to seamlessly handle internal or virtual stock movements triggered directly from Sales Orders, while still maintaining flexibility and full control over routing logic.



Hope it helps

形象
丢弃
相关帖文 回复 查看 活动
0
11月 23
2303
3
5月 23
6755
1
5月 25
1578
1
5月 25
1409
2
11月 24
2516