Skip to content

Commit c5091f0

Browse files
committed
[IMP] inventory: mto feedback
closes #14572 Signed-off-by: Felicia Kuan (feku) <[email protected]>
1 parent 80782b0 commit c5091f0

File tree

1 file changed

+35
-13
lines changed
  • content/applications/inventory_and_mrp/inventory/warehouses_storage/replenishment

1 file changed

+35
-13
lines changed

content/applications/inventory_and_mrp/inventory/warehouses_storage/replenishment/mto.rst

Lines changed: 35 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,18 +11,27 @@ Replenish on order (MTO)
1111
.. |BOM| replace:: :abbr:`BOM (bill of materials)`
1212

1313
*Replenish on order*, also known as *MTO* (make to order), is a replenishment strategy that creates
14-
a draft order for a product every time it is required to fulfill a sales order (SO), or when it is
15-
needed as a component in a manufacturing order (MO).
14+
a draft order every time a product is needed to fulfill a sales order (SO) or as a component in a
15+
manufacturing order (MO).
1616

17-
For products that are purchased from a vendor, a request for quotation (RFQ) is created to replenish
18-
the product, while an |MO| is created for products that are manufactured. The creation of an |RFQ|
19-
or |MO| occurs every time an |SO| or |MO| that requires the product is confirmed, regardless of the
20-
current stock level of the product being ordered.
17+
- For :doc:`purchased products <../../../purchase/manage_deals/rfq>`, Odoo creates a |RFQ|
18+
- For :doc:`manufactured products
19+
<../../../manufacturing/basic_setup/configure_manufacturing_product>`, it creates a |MO|
20+
21+
If stock is available, no |RFQ| or |MO| is generated and the sale proceeds normally. Otherwise, the
22+
|RFQ| or |MO| is generated and directly linked to the originating |SO| through a smart button.
23+
24+
This approach offers clear traceability, since each |RFQ| or |MO| is tied back to its demand.
2125

2226
.. important::
23-
In order to use the |MTO| route, the :guilabel:`Multi-Step Routes` feature must be enabled. To do
24-
so, navigate to :menuselection:`Inventory app --> Configuration --> Settings`, and tick the
25-
checkbox next to :guilabel:`Multi-Step Routes`, under the :guilabel:`Warehouse` heading.
27+
The |RFQ| or |MO| generated by |MTO| is designed to fulfill the originating |SO|. These documents
28+
should normally be confirmed or adjusted rather than cancelled. If the demand changes, update the
29+
document instead of cancelling it.
30+
31+
.. note::
32+
If an |RFQ| or |MO| is cancelled, Odoo does not automatically generate a replacement. A new
33+
replenishment document must be created manually, but it **cannot** be linked back to the original
34+
|SO| through the smart button.
2635

2736
Finally, click :guilabel:`Save` to save the change.
2837

@@ -31,6 +40,10 @@ current stock level of the product being ordered.
3140
Unarchive MTO route
3241
===================
3342

43+
In order to use the |MTO| route, the :guilabel:`Multi-Step Routes` feature must be enabled. To do
44+
so, navigate to :menuselection:`Inventory app --> Configuration --> Settings`, and tick the checkbox
45+
next to :guilabel:`Multi-Step Routes`, under the :guilabel:`Warehouse` heading.
46+
3447
By default, Odoo sets the |MTO| route as *archived*. This is because |MTO| is a somewhat niche
3548
workflow that is only used by certain companies. However, it is easy to unarchive the route in just
3649
a few simple steps.
@@ -121,10 +134,11 @@ Click :guilabel:`Confirm`, and the quotation is turned into an |SO|.
121134
A :guilabel:`Purchase` smart button now appears at the top of the page. Clicking it opens the |RFQ|
122135
associated with the |SO|.
123136

124-
Click :guilabel:`Confirm Order` to confirm the |RFQ|, and turn it into a |PO|. A purple
125-
:guilabel:`Receive Products` button now appears above the |PO|. Once the products are received,
126-
click :guilabel:`Receive Products` to open the receipt order, and click :guilabel:`Validate` to
127-
enter the products into inventory.
137+
After receiving approval from the vendor that they can meet the demand by the :guilabel:`Expected
138+
Arrival` date, click :guilabel:`Confirm Order` to turn it into a |PO|. A purple :guilabel:`Receive
139+
Products` button now appears above the |PO|. Once the products are received, click
140+
:guilabel:`Receive Products` to open the receipt order, and click :guilabel:`Validate` to enter the
141+
products into inventory.
128142

129143
Return to the |SO| by clicking the :guilabel:`SO` breadcrumb, or by navigating to
130144
:menuselection:`Sales app --> Orders --> Orders`, and selecting the|SO|.
@@ -133,6 +147,14 @@ Finally, click the :guilabel:`Delivery` smart button at the top of the order to
133147
order. Once the products have been shipped to the customer, click :guilabel:`Validate` to confirm
134148
the delivery.
135149

150+
Cancelling an SO with an MTO product
151+
------------------------------------
152+
153+
When a |SO| is cancelled, and it had created an |RFQ| or |MO|, the related delivery order is
154+
cancelled automatically. However, the |RFQ| or |MO| themselves are **not** cancelled. Instead, a
155+
warning appears in their chatter noting the |SO| cancellation. These documents remain active, so the
156+
user can either cancel them manually or repurpose the replenishment for another order.
157+
136158
.. seealso::
137159
For information on workflows that include the |MTO| route, see the following documentation:
138160

0 commit comments

Comments
 (0)