Skip to Content
Menu
This question has been flagged
2 Replies
1169 Views

We have some customers who operate on a consignment basis. We create delivery orders that transfers stock from our warehouse to a consignment location specific to the partner (eg; "Consignment/Customer 1", so we always know what stock they have. The consignment location is of type "internal", as we still own the stock.

The issue arises when they make sale and we generate a sale order where we want the delivery order to transfer stock from the customers consignment location ("Consignment/Customer 1") to "Partner/Customer Orders".

On the sale order you can only specify a warehouse as the source, which does match the reality of a business model that may fulfil as sale order from a location other than a warehouse; eg; from samples, or consigned stock.

I've tried creating a new stock picking that is from the consignment stock and duplicating the delivery order, but this make no difference; it insists on using a warehouse as the stock location.

I can cancel the delivery order generated when the sale order is confirmed, and manually create a new delivery order, but then it doesn't relate to the sale order.

This is all the more frustrating, because I'm sure all the fields to make this happen are there, but are not on the forms used to create delivery orders. More than once we've been frustrated at not being able to change a warehouse that we fulfil from simply because the forms hide the fields that we need.

How can we create a sale order with the delivery order being from a consignment locations that doesn't relate to a warehouse?


Avatar
Discard

Hello,

For moving stock to a Consignment/Customer 1 or before delivering it to the customer, you have to create a new location type Transit location to move stock from your inventory to another location so the stock will be deducted from your inventory and will move to another location so configure it like below
warehouse location -> Transit Location -> Customer Location. Hopes it will help you but it is a little bit complicated to create pull and push roles to move stock from one location to another.

Author

Thanks Ahmad, but I can't see how this can work. We could only progress an entire or partial delivery order from the Transit location to Customer location. In reality, the products advised as sold at the end of any given month won't necessarily come from the previous delivery order, and we'd have to maintain multiple delivery orders until such time as each delivery order is sold on full. It's a poor fit for the way the business is actually conducted.

Author Best Answer

Here are my notes from troubleshooting this issue and coming up with a workflow that works for us;

Requirements
  • We need to be able to perform inventory valuation by consignment Partner
  • We need to be able to transfer from the Partner's consignment Location to a customer Location when sales are made.
Challenges
  • Odoo doesn't like transfers that don't involve a warehouse.
  • When creating a new Sale Order, a warehouse is required, though no warehouse applies to the Stock Picking that we want to create.
  • If we create a Warehouse for Consignment with Picking Types for the warehouse for each consignment Partner, we still have a default source location that does not change for the Stock Picking even when we edit the Picking Type. Removing the Default Source Location for the "Delivery Orders" Picking Type does make any difference, the Partner's consignment Location is still not used.
Solution
  • We can create a generic Picking Type with type = 'internal' and destination as the customer Location. Type = 'internal' is important because visibility of location and destination are dependant on it.
  • When creating a sale order, the Stock Picking (delivery order) will be incorrect.
  • Cancel the Stock Picking.
  • Duplicate the Stock Picking.
  • Set the Picking Type as the generic and the Partner's consignment location as the source.

I wish there were a better way to do this, but with Odoo insisting on a Warehouse for a Sale Order, and the source set based on that and not being able to change it after creation of the Stock Picking, I see no alternative but to do the cancel and duplicate.

This might just help someone in the same situation. We're in the process of migrating to Odoo 16, so we'll see if there's a better way to do this for Odoo 16.

Avatar
Discard
Best Answer

It is possible to modify the delivery order rule to pull from Consignment to Partner location/ customer. That is assuming all your sales are from consignment to customer.

Or as you mention create new route -- consignment to customer, apply this route on the sale order line, only for the sales where delivery is from consignment to customer. For all other sales (where route is not specified on sale order line) the stock to customer route would apply.

Another option could be to create a WH for consignment products only, select this WH on sales order which would have delivery rule consignment to customer. 

A WH is essential to ascertain the applicable route. Don't believe it indicates the source location, which is defined by the route.

PS - am not familiar with V9, the above is based on recent versions. 

Avatar
Discard
Related Posts Replies Views Activity
1
May 25
1108
1
Jul 25
2875
1
Dec 22
1109
0
Apr 22
1533
4
Dec 18
4874