How to create multiple production outsourcings

Suposing a one production simple schema like:

**Production Inputs:**
Product A
Product B
**Production Outputs:**
Product C
**Route: None**
**Works:**
Welding
Clean
Paint

And I want to outsource Cleaning with Supplier X and Painting with Supplier Y.
I know I can create a route with supplier X, and service Cleaning creating a purchase line for that supplier.
But how can I create the painting in the same production with a different supplier?
Thanks in advance.

For me you must use three productions with their own routing and some routing are outsourced.

That way we need to be creating extra C products to manage it.

**Production Inputs:**
Product A
Product B
**Production Outputs:**
Product C Welded
**Route: None**
**Works:**
Welding
**Production Inputs:**
Product C Welded
**Production Outputs:**
Product C Welded Cleaned
**Route: Clean**
**Production Inputs:**
Product C Welded Cleaned
**Production Outputs:**
Product C Welded Cleaned Painted
**Route: Paint**

We have some customers facing the same issue and it’s time consuming setting a product only to support this workflow you mention.

But at some point the intermediary product exists in the stock between the intervention of the suppliers.
Also the quantity transferred from one supplier to the other may be different because one supplier may create lost.

True, but for me it has more sense and it’s simplier to have something like a
supplier for each step of a route, and not beeing able to do next step without the previous.
Once you do each step a purchase line is created for the supplier.
Does this make sense for core modules?

I guess there could be a production_work_outsourcing module which add supplier on routing step and then on work.
The main difficulty is when create the purchase because steps have no workflow but are based on cycle.

I do not think it makes sense to have a cycle for outsourced production. So I think we should hide the cycles and add some buttons to manage the outsourcing process on the work and create the purchase there.