Odoo Help


How to "make to order" with stock management?

Nicolas Rousseau
on 7/2/13, 6:48 PM 15,959 views

Hi, Is there any module / configuration which give the possibility to check the stock when the procurement method is "make to order"?

Details: REAL Current process of my customer working with make to order (what they do in real life): 1) Record customer order. 2) Check the stock in case there is some stock. 3) Make a purchase order with the required quantity (sales order quantity - available stock quantity).

"Make to order" means that only sales order will launch purchase order. However, customer can have some stock due to different reasons (MOQ. return products, canceled customer order). For all these reasons, the purchasers need to double check the stock before issuing the purchase order.

OPENERP Process: Make to order: do not check the stock at all. Make to stock: some configuration could be done with stock orderpoint = 0... However, it's not make to order and so you loose the important info related to the sales order (source document). Moreover, it's not intuitive for customer because they are working on make to order.

Another process should be a 3rd solution: make to order with stock checking. 1) Record a sales order. 2) Check the stock for related product. 3) Make a draft purchase order with the quantity = sales order quantity - stock available quantity. 4) Get a message on the purchase order that one part of the order come from the stock (customized view with order level).

Is anyone who worked / developed module / configuration for such a process?

You will need to modify mrp schedule (search for this function in scheduler technical data) and for to check stock before execute auto procurement. Our developer is doing this patch for us now. Will ask them to show the code when it's done.

on 8/29/13, 11:35 AM

Greetings Trung, any development on the module so far?

Paul Catinean
on 10/22/13, 9:20 AM

I am looking for this solution as well and find it to be very problematic. This is a common method for fulfillment that OpenERP should handle. Anyone have any updates?

Josh Stover
on 10/30/13, 5:30 PM

Hi Nicolas, I have the same need as you. I've been testing a product with the following configuration: buy make to stock Reordering rule: min: 0 max: 0 multiple: 1 When I create a sales order with X units, the scheduler creates a purchase order for X units if no units on stock. If I have 4 units (quantity available) in stock and the sales order is 10 units, then a purchase order of 6 units missing is created. I think this is what you were asking. No? Please note, I have not tested on a production system. I do not know if this setting min = 0 and max = 0 may cause a problem in another section. If someone with more experience can confirm that this works, I'd appreciate it.

A4 Moto Group S.L., Josep Xifra
on 8/26/14, 1:02 PM

I would like to have this option too. I manufacture products sometimes for stock sometimes for orders, some products i am buying for future use, some not. Possibility to check stock is the best workflow! Purchase only what is needed if stock has too few raw products.

on 7/18/13, 9:22 AM

waiting for solution too

开阖软件 Jeff Wang
on 8/27/13, 1:00 AM

I am looking for this solution too. This is 8 months after the issue was raised initially. Trung, any luck with your developers and if so can you please share with us? As a suggestion, perhaps add a setting under Warehouse configuration such as "Always fulfill orders from stock first" which is when ticked will make the system check for stock level first before generating a purchase order.

Compusoft Systems Pty Ltd, Charles Chaaya
on 3/19/14, 3:52 AM

I find it hard to believe this hasn't yet been addressed. There must be someone who's solved this issue. We just need to find them.

Will Stott
on 11/11/14, 11:33 AM
Josh Stover
On 10/31/13, 1:27 PM

I believe I have figured out how the workflow is set up to solve this issue without having to make a customization. When you have a product that you stock, but you dropship it when your stock levels run out, do the following.

Product Set Up: Stockable product Make to stock Supply method: buy

  1. Enter and confirm the sales order.
  2. Click Check Availability on the delivery order.
  3. Run the scheduler At this point if it was a MtO product a PO quote would be created. Since this is a MtS product, there will be a procurement exception created indicating: "Not enough stock and no minimum orderpoint rule defined"
  4. Within the procurement exception, click the retry button.
  5. Click edit, and change the procurement method to Make to Order.
  6. Save the procurement exception and click Run Procurement again

At this point the OpenERP workflow processes this backorder as a MtO product and a purchase order quote will automatically be generated and tied to this sales order.

I do believe that another product type such as "Make to Stock First, Make to Order Second" would be better and I hope that OpenERP adds this functionality so that this is done automatically. But in the meantime, this is how it can be done without making major changes to your installation.

On 9/19/14, 7:34 AM

We have this function developed for openerp7 (ecommerce operation) by Trobz. We did not control the source code so you should contact http://trobz.com/ for the code. Basically we alter the mrp_scheduler to check for existing stock before rasing purchase order of Make to order product type. 

On 5/9/16, 6:56 AM


Does anyone know whether this problem is solved in v8?



About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

10 follower(s)


Asked: 7/2/13, 6:48 PM
Seen: 15959 times
Last updated: 5/9/16, 6:56 AM