Lead times

# Lead times

Accurately forecasting delivery dates is vital for fulfilling customer expectations. In Odoo, the Inventory app allows for comprehensive lead time configuration, allowing coordination and
planning of manufacturing orders, deliveries, and receipts.

## Lead time types

Different lead times for different operations can impact various stages of the order fulfillment
process. Hereâs a summary of the types of lead times in Odoo:
- Customer lead time : default time frame for
fulfilling customer orders. The customer lead time is the number of days from the date the sales
order (SO) is confirmed to the date the products are shipped from the warehouse. This is also
known as delivery lead time .
Customer lead time : default time frame for
fulfilling customer orders. The customer lead time is the number of days from the date the sales
order (SO) is confirmed to the date the products are shipped from the warehouse. This is also
known as delivery lead time .
- Sales security lead time : moves the scheduled delivery date forward by a specified number of days. This serves as a buffer to allow
ample time to prepare the outgoing shipment earlier, considering the possibility of delays in the
fulfillment process.
Sales security lead time : moves the scheduled delivery date forward by a specified number of days. This serves as a buffer to allow
ample time to prepare the outgoing shipment earlier, considering the possibility of delays in the
fulfillment process.
- Purchase lead time : number of days from the
confirmation of a purchase order (PO) to the receipt of products. It provides insight on the time
it takes for products to arrive at the warehouse, facilitating effective scheduling and planning
of supplier deliveries.
Purchase lead time : number of days from the
confirmation of a purchase order (PO) to the receipt of products. It provides insight on the time
it takes for products to arrive at the warehouse, facilitating effective scheduling and planning
of supplier deliveries.
- Purchase security lead time : advances
the order deadline on a PO by a specified number of days. This proactive
approach of placing orders earlier mitigates the risk of vendor or shipping delays. Thus, for
products that are set to replenish to order, the need appears on the Replenishment report earlier, according to the specified number of days.
Purchase security lead time : advances
the order deadline on a PO by a specified number of days. This proactive
approach of placing orders earlier mitigates the risk of vendor or shipping delays. Thus, for
products that are set to replenish to order, the need appears on the Replenishment report earlier, according to the specified number of days.
- Days to Purchase : days needed for the
vendor to receive a request for quotation (RFQ) and confirm it. It advances the deadline to
schedule a RFQ by a specified number of days.
Days to Purchase : days needed for the
vendor to receive a request for quotation (RFQ) and confirm it. It advances the deadline to
schedule a RFQ by a specified number of days.
- Manufacturing lead time : number of days needed to
complete a manufacturing order (MO) from the date of confirmation. This lead time includes
weekends (non-working hours in Odoo), and is used to forecast an approximate production date for a
finished good.
Manufacturing lead time : number of days needed to
complete a manufacturing order (MO) from the date of confirmation. This lead time includes
weekends (non-working hours in Odoo), and is used to forecast an approximate production date for a
finished good.
- Days to prepare manufacturing order : number of days needed to replenish
components, or manufacture sub-assemblies of the product. Either set one directly on the bill of
materials (BoM), or click Compute to sum up purchase and manufacturing lead times of components
in the BoM .
Days to prepare manufacturing order : number of days needed to replenish
components, or manufacture sub-assemblies of the product. Either set one directly on the bill of
materials (BoM), or click Compute to sum up purchase and manufacturing lead times of components
in the BoM .
- Manufacturing security lead time : moves
the scheduled date of the MO forward by a specified number of days. When used in conjunction
with replenish to order , the security lead time
makes the need appear earlier on the replenishment report.
Manufacturing security lead time : moves
the scheduled date of the MO forward by a specified number of days. When used in conjunction
with replenish to order , the security lead time
makes the need appear earlier on the replenishment report.

## Sales lead times

Customer lead times and sales security lead times can be configured to automatically compute an expected delivery date on a SO . The expected delivery date ensures a
realistic delivery dates setting for shipments from the warehouse.
Odoo issues a warning message if the set delivery date is earlier than the expected date, as it may
not be feasible to fulfill the order by that time, which would impact other warehouse operations.
A SO containing a Coconut-scented candle is confirmed on July 11th. The
product has a customer lead time of 14 days, and the business uses a sales security lead time of
1 day. Based on the lead time inputs, Odoo suggests a delivery date in 15 days, on July 26th.
`Coconut-scentedcandle`
The following sections demonstrate how to automatically compute expected delivery dates.

### Customer lead time

Set the customer lead time on each product form, by navigating to the products page. To do so, go to Sales app â£ Products â£ Products . From there, select the desired product, and
switch to the Inventory tab. Then, under the Customer Lead Time field, fill
in the number of calendar days required to fulfill the delivery order from start to finish.
Set a 14-day customer lead time for the Coconut-scented candle by navigating to its product
form. Then, in the Inventory tab, type 14.00 days into the Customer Lead
Time field.
`Coconut-scentedcandle`
`14.00`

### Sales security lead time

Sales security lead time is set globally for the business in Inventory app â£
Configuration â£ Settings .
On the configuration page, under the Advanced Scheduling heading, locate the box for Security Lead Time for Sales , and click the checkbox to enable the feature.
Next, enter the desired number of calendar days. This security lead time is a buffer notifying the
team to prepare for outgoing shipments earlier than the scheduled date.
Setting the Security Lead Time for Sales to 1.00 day, pushes the Scheduled Date of a delivery order (DO) forward by one day. In that case, if a
product is initially scheduled for delivery on April 6th, but with a one-day security lead time,
the new scheduled date for the delivery order would be April 5th.
`1.00`

### Deliver several products

For orders that include multiple products with different lead times, the lead times can be
configured directly from the quotation itself. On a quotation, click the Other Info tab,
and set the Shipping Policy to:
- As soon as possible to deliver products as soon as they are ready. The Scheduled Date of the DO is determined by adding todayâs
date to the shortest lead time among the products in the order.
As soon as possible to deliver products as soon as they are ready. The Scheduled Date of the DO is determined by adding todayâs
date to the shortest lead time among the products in the order.
- When all products are ready to wait to fulfill the entire order at once. The Scheduled Date of the DO is determined by adding todayâs
date to the longest lead time among the products in the order.
When all products are ready to wait to fulfill the entire order at once. The Scheduled Date of the DO is determined by adding todayâs
date to the longest lead time among the products in the order.
In a quotation containing 2 products, Yoga mat and Resistance band, the products have a lead
time of 8 days and 5 days, respectively. Todayâs date is April 2nd.
`Yogamat`
`Resistanceband,`
When the Shipping Policy is set to As soon as possible , the scheduled
delivery date is 5 days from today: April 7th. On the other hand, selecting When all
products are ready configures the scheduled date to be 8 days from today: April 10th.

## Purchase lead times

Automatically scheduling supplier orders streamlines procurement by showing users exactly when to
confirm a request for quotation (RFQ) and when to expect the goods.
Last calendar day to confirm the RFQ and convert it to a PO
Arrival date of the products. Calculated by Order Deadline + Vendor Lead Time
In addition, Odoo has global security lead times, which are buffers that widen the just-in-time (JIT) forecast window. The security
lead times affect only replenishment methods that use pull rules âfor example reordering rules or make to order (MTO) . They do not change the interval between Order Deadline and Expected Arrival .
PO scheduling with reordering rules
Purchase Security Lead Time
Extra calendar days to account for delays. Typically used to account for weekends or
holidays.
None on the RFQ / PO ; adds buffer days in the JIT forecast window .
Days the vendor needs to review an RFQ after it is sent.
None on the RFQ / PO ; adds buffer days in the JIT forecast window .
To tie all the purchase lead times together, consider this:
- Today: April 21
- Vendor Lead Time : 1 day
Vendor Lead Time : 1 day
- Purchase Security Lead Time : 4 days
Purchase Security Lead Time : 4 days
- Days to Purchase : 2 days
Days to Purchase : 2 days
Days from today = 1 + 4 + 2 = 7
Forecasted date = April 28
Example of the JIT forecast window, which is April 21-28.
If an RFQ is created today, the following fields show:
- Order Deadline : April 23 ( \(\text{Today} + 2\) )
Order Deadline : April 23 ( \(\text{Today} + 2\) )
- Expected Arrival : April 24 ( \(\text{Order Deadline} + 1\) )
Expected Arrival : April 24 ( \(\text{Order Deadline} + 1\) )

### Vendor lead time

To set a vendor lead time for orders arriving in the warehouse from a vendor location, begin by
navigating to a product form through Purchase app â£ Products â£ Products .
Next, select the desired product, and switch to the Purchase tab. In the editable vendor
pricelist, click the Add a line button to add vendor details, such as the Vendor name, Price offered for the product, and lastly, the Delivery Lead Time .
Multiple vendors and lead times can be added to the vendor pricelist. The default vendor and lead
time selected is the entry at the top of the list.
A PO is marked late if the Expected Arrival date has passed, and appears in the Late box on
the Purchase appâs dashboard.
On the vendor pricelist of the product form, the Delivery Lead Time for the selected
vendor is set to 10 days.
`10days.`

### Purchase security lead time

Purchase security lead time is a global buffer to account for delays, applied to all vendors.
To set it, go to Inventory app â£ Configuration â£ Settings .
Under Advanced Scheduling , tick the Security Lead Time for Purchase checkbox.
Next, enter the desired number of calendar days. By configuring the security lead time, a buffer is
set to account for potential delays in supplier deliveries. Then, click Save .

### Days to purchase lead time

To set it up, go to Inventory app â£ Configuration â£ Settings . Under the Advanced Scheduling section, in the Days to Purchase field, specify the
number of days required for the vendor to confirm a RFQ after receiving it from the company.

## Manufacturing lead times

Lead times can help simplify the procurement process for consumable materials and components used in
manufactured products with bills of materials (BoMs).
The MO deadline, which is the deadline to begin the manufacturing process to complete the product
by the scheduled delivery date, can be determined by configuring the manufacturing lead times and
manufacturing security lead times.

### Manufacturing lead time

Manufacturing lead times for products are configured from a productâs bill of materials (BoM) form.
To add a lead time to a BoM , navigate to Manufacturing app â£ Products â£ Bills
of Materials , and select the desired BoM to edit.
On the BoM form, click the Miscellaneous tab. Change the value (in days) in the Manuf. Lead Time field to specify the calendar days needed to manufacture the product.
If the selected BoM is a multi-level BoM , the manufacturing lead times of the components are
added.
If the BoM product is subcontracted, the Manuf. Lead Time can be used to determine
the date at which components should be sent to the subcontractor.
Establish a MO deadline, based on the expected delivery date , indicated in the Scheduled Date field of the DO .
The MO deadline, which is the Scheduled Date field on the MO , is calculated as the expected delivery date subtracted by the manufacturing lead time.
This ensures the manufacturing process begins on time, in order to meet the delivery date.
However, it is important to note that lead times are based on calendar days. Lead times do not consider weekends, holidays, or work center capacity ( the number of operations that can be
performed at the work center simultaneously ).
- Manufacturing planning
Manufacturing planning
- Schedule MOs with reordering rules
Schedule MOs with reordering rules
A productâs scheduled shipment date on the DO is August 15th. The
product requires 14 days to manufacture. So, the latest date to start the MO to meet the commitment date is August 1st.

### Days to prepare manufacturing order

Configure the days required to gather components to manufacture a product by going to its BoM . To
do that, go to Manufacturing app â£ Products â£ Bills of Materials , and select
the desired BoM .
In the Miscellaneous tab of the BoM , specify the calendar days needed to obtain
components of the product in the Days to prepare Manufacturing Order field. Doing so
creates MOs in advance, and ensures there is enough time to either replenish components, or
manufacture semi-finished products.
Clicking Compute , located next to the Days to prepare Manufacturing Order field, calculates the longest lead time among all the components listed on the BoM .
Purchase security lead times that impact this specific BoM are also added to this value.
A BoM has two components, one has a manufacturing lead time of two days, and the other has a
purchase lead time of four days. The Days to prepare Manufacturing Order is four
days.

### Manufacturing security lead time

Manufacturing security lead time is set globally for the business in Manufacturing
app â£ Configuration â£ Settings . Under the Planning heading, tick the checkbox for Security Lead Time .
Next, enter the desired number of calendar days. By configuring the security lead time, a buffer is
set to account for potential delays in the manufacturing process. Then, click Save .
A product has a scheduled shipment date on the DO set for August 15th.
The manufacturing lead time is 7 days, and manufacturing security lead time is 3 days. So, the Scheduled Date on the MO reflects the latest date to begin the manufacturing order.
In this example, the planned date on the MO is August 5th.

## Global example

See the following example to understand how all the lead times work together to ensure timely order
fulfillment:
- Sales security lead time : 1 day
Sales security lead time : 1 day
- Manufacturing security lead time : 2 days
Manufacturing security lead time : 2 days
- Manufacturing lead time : 3 days
Manufacturing lead time : 3 days
- Purchase security lead time : 1 day
Purchase security lead time : 1 day
- Vendor lead time : 4 days
Vendor lead time : 4 days
The customer places an order for a manufactured product on September 1st, and the scheduled delivery
date from the warehouse is on September 20th. Odoo uses lead times and automated reordering rules to
schedule the necessary operations, based on the outgoing shipment delivery date, September 20th:
- September 1st : Sales order created, confirmed by salesperson.
September 1st : Sales order created, confirmed by salesperson.
- September 9th : Deadline to order components to ensure they arrive in time when manufacturing
begins (4-day supplier lead time).
September 9th : Deadline to order components to ensure they arrive in time when manufacturing
begins (4-day supplier lead time).
- September 13th : Scheduled date of receipt for components. Initially, it was set to 9/14, but
the 1-day purchase security lead time pushed the date earlier by 1 day.
September 13th : Scheduled date of receipt for components. Initially, it was set to 9/14, but
the 1-day purchase security lead time pushed the date earlier by 1 day.
- September 14th : Deadline to begin manufacturing. Calculated by subtracting the manufacturing
lead time of 3 days, and the manufacturing security lead time of 2 days, from the expected
delivery date of September 19th.
September 14th : Deadline to begin manufacturing. Calculated by subtracting the manufacturing
lead time of 3 days, and the manufacturing security lead time of 2 days, from the expected
delivery date of September 19th.
- September 19th : Scheduled Date on the delivery order form indicates the updated
expected delivery date, which was originally set as September 20th. But the sales security lead
time pushed the date forward by a day.
September 19th : Scheduled Date on the delivery order form indicates the updated
expected delivery date, which was originally set as September 20th. But the sales security lead
time pushed the date forward by a day.
Odooâs replenishment planning maps a businessâ order fulfillment process, setting pre-determined
deadlines and raw material order dates, including buffer days for potential delays. This ensures
products are delivered on time.

Lead time types
Sales lead times
Customer lead time
Sales security lead time
Deliver several products
Purchase lead times
Vendor lead time
Purchase security lead time
Days to purchase lead time
Manufacturing lead times
Manufacturing lead time
Days to prepare manufacturing order
Manufacturing security lead time
Global example


Replenish on order (MTO)

# Replenish on order (MTO)

Replenish on order , also known as MTO (make to order), is a replenishment strategy that creates
a draft order every time a product is needed to fulfill a sales order (SO) or as a component in a
manufacturing order (MO).
- For purchased products , Odoo creates an RFQ
For purchased products , Odoo creates an RFQ
- For manufactured products , it creates an MO
For manufactured products , it creates an MO
If stock is available, no RFQ or MO is generated and the sale proceeds normally. Otherwise, the RFQ or MO is generated and directly linked to the originating SO through a smart button.
This approach offers clear traceability, since each RFQ or MO is tied back to its demand.
The RFQ or MO generated by MTO is designed to fulfill the originating SO . These documents
should normally be confirmed or adjusted rather than cancelled. If the demand changes, update the
document instead of cancelling it.
If an RFQ or MO is cancelled, Odoo does not automatically generate a replacement. A new
replenishment document must be created manually, but it cannot be linked back to the original SO through the smart button.
Finally, click Save to save the change.

## Unarchive MTO route

In order to use the MTO route, the Multi-Step Routes feature must be enabled. To do
so, navigate to Inventory app â£ Configuration â£ Settings , and tick the checkbox
next to Multi-Step Routes , under the Warehouse heading.
By default, Odoo sets the MTO route as archived . This is because MTO is a somewhat niche
workflow that is only used by certain companies. However, it is easy to unarchive the route in just
a few simple steps.
To do so, begin by navigating to Inventory app â£ Configuration â£ Routes . On the Routes page, click the (down arrow) icon on the right
side of the search bar, and click the Archived filter to enable it.
After enabling the Archived filter, the Routes page shows all routes which
are currently archived. Tick the checkbox next to Replenish on Order (MTO) , then click
the Actions button to reveal a drop-down menu. From the drop-down menu,
select Unarchive .
Finally, remove the Archived filter from the search bar. The Routes page now
shows all unarchived routes, including Replenish on Order (MTO) , which is selectable on
the Inventory tab of each product page.

## Configure product for MTO

With the MTO route unarchived, products can now be properly configured to use replenish on order.
To do so, begin by going to Inventory app â£ Products â£ Products , then select an
existing product, or click New to configure a new one.
On the product page, select the Inventory tab and enable the Replenish on
Order (MTO) route in the Routes section, along with the Buy or Manufacture route.
The Replenish on Order (MTO) route does not work unless another route is selected
as well. This is because Odoo needs to know how to replenish the product when an order is placed
for it (buy or manufacture it).
If the product is purchased from a vendor to fulfill SOs , enable the Can be Purchased checkbox under the product name. Doing so makes the Purchase tab appear alongside the
other tabs below.
Click the Purchase tab and specify a Vendor and the Price they
sell the product for.
Specifying a vendor is essential for this workflow, because Odoo cannot generate an RFQ without
knowing who the product is purchased from.
If the product is manufactured, make sure it has a bill of materials (BOM) configured for it. To do
so, click the Bill of Materials smart button at the top of the screen, then click New on the Bill of Materials page to configure a new BoM for the product.
For a full overview of BoM creation, see the documentation on bills of materials .

## Replenish using MTO

After configuring a product to use the MTO route, a replenishment order is created for it every
time an SO or MO including the product is confirmed. The type of order created depends on the
second route selected in addition to MTO .
For example, if Buy was the second route selected, then a PO is created upon confirmation of an SO .
When the MTO route is enabled for a product, a replenishment order is always created upon
confirmation of an SO or MO . This is the case, even if there is enough stock of the product
on-hand to fulfill the SO , without buying or manufacturing additional units of it.
While the MTO route can be used in unison with the Buy or Manufacture routes, the Buy route
is used as the example for this workflow. Begin by navigating to the Sales app,
then click New , which opens a blank quotation form.
On the blank quotation form, add a Customer . Then, click Add a product under
the Order Lines tab, and enter a product configured to use the MTO and Buy routes.
Click Confirm , and the quotation is turned into an SO .
A Purchase smart button now appears at the top of the page. Clicking it opens the RFQ associated with the SO .
After receiving approval from the vendor that they can meet the demand by the Expected
Arrival date, click Confirm Order to turn it into a PO . A purple Receive
Products button now appears above the PO . Once the products are received, click Receive Products to open the receipt order, and click Validate to enter the
products into inventory.
Return to the SO by clicking the SO breadcrumb, or by navigating to Sales app â£ Orders â£ Orders , and selecting the SO .
Finally, click the Delivery smart button at the top of the order to open the delivery
order. Once the products have been shipped to the customer, click Validate to confirm
the delivery.

### Cancelling an SO with an MTO product

When a SO is cancelled, and it had created an RFQ or MO , the related delivery order is
cancelled automatically. However, the RFQ or MO themselves are not cancelled. Instead, a
warning appears in their chatter noting the SO cancellation. These documents remain active, so the
user can either cancel them manually or repurpose the replenishment for another order.
For information on workflows that include the MTO route, see the following documentation:
- Inter-warehouse replenishment
Inter-warehouse replenishment
- Basic subcontracting
- Multilevel BoMs

Unarchive MTO route
Configure product for MTO
Replenish using MTO
Cancelling an SO with an MTO product


Reordering rules

# Reordering rules

Reordering rules are used to keep forecasted stock levels above a certain threshold without
exceeding a specified upper limit. This is accomplished by specifying a minimum quantity that stock
should not fall below and a maximum quantity that stock should not exceed.
Reordering rules can be configured for each product based on the route used to replenish it. If a
product uses the Buy route, then a request for quotation (RFQ) is created when the reordering
rule is triggered. If a product uses the Manufacture route, then a manufacturing order (MO) is
created instead. This is the case regardless of the selected replenishment route.
- Odoo Tutorials: Automatic Reordering Rules
Odoo Tutorials: Automatic Reordering Rules
- Odoo Tutorials: Manual Reordering Rules
Odoo Tutorials: Manual Reordering Rules
To set up reordering rules for the first time, refer to:
- Reordering rules setup
Reordering rules setup
- Trigger
- Preferred route
To understand and optimize replenishment using advanced features, see:
- Just-in-time logic
- Visibility days
- Horizon days

## Reordering rules setup

To configure automatic and manual reordering rules, complete the following:
- Product type configuration
Product type configuration
- Replenishment method
- Create rule

### Product type configuration

A product must be configured correctly to use reordering rules. Begin by navigating to Inventory app â£ Products â£ Products , then select an existing product, or create
a new one by clicking New .
On the product form, under the General Information tab, set the Product Type to Goods , and make sure the Track Inventory checkbox is ticked. This is
necessary for Odoo to track the productâs stock levels and trigger reordering rules.

### Replenishment method

Next, configure the replenishment method (e.g. buy or manufacture).
If the product is purchased, install the Purchase app, and confirm that
the Purchase checkbox is enabled under the product name. In the Purchase tab, add at least one vendor to the vendor pricelist .
Odoo uses the vendor at the top of the list to generate RFQs when reordering rules are triggered.
In the Inventory tabâs Routes field, tick the Buy checkbox.
If the product is manufactured, install the Manufacturing app, and in
the Inventory tabâs Routes field, tick the Manufacture checkbox.
Next, ensure at least one bill of materials (BoM) is displayed in the Bill
of Materials smart button at the top of the product form. This is necessary because Odoo only
creates manufacturing orders (MOs) for products with a BoM .
If a BoM does not already exist for the product, click the Bill of Materials smart
button, then click New to configure a new BoM .

### Create new reordering rules

To create a new reordering rule, navigate to Inventory app â£ Operations â£
Replenishment , then click New , and fill out the following fields for the new reordering
rule line item:
- Product : The product that is replenished by the rule.
Product : The product that is replenished by the rule.
- Location : The location where the product is stored.
Location : The location where the product is stored.
- Min : The minimum quantity that can be forecasted without the rule being
triggered. When forecasted stock falls below this number, a replenishment order for the product is
created.
Min : The minimum quantity that can be forecasted without the rule being
triggered. When forecasted stock falls below this number, a replenishment order for the product is
created.
- Max : The maximum quantity at which the stock is replenished.
Max : The maximum quantity at which the stock is replenished.
- Multiple Quantity : If the product should be ordered in specific quantities, enter the
number that should be ordered. For example, if the Multiple Quantity is set to 5 ,
and only 3 are needed, 5 products are replenished.
Multiple Quantity : If the product should be ordered in specific quantities, enter the
number that should be ordered. For example, if the Multiple Quantity is set to 5 ,
and only 3 are needed, 5 products are replenished.
`5`
The form for creating a new reordering rule.
Reordering rules can also be created from the Reordering Rules smart button on the
product form.
To learn how the On Hand , Forecast , and To Order fields are
calculated using on-hand quantities and future demand, see the Just-in-time logic section.
For advanced usage, learn about the following reordering rule fields:
- Trigger
- Preferred route
- Vendor
- Bill of materials
- Procurement group
- Visibility days
The fields above are not available by default, and must be enabled by selecting the (adjust settings) icon in
the far-right corner and selecting the desired column from the drop-down menu.

### 0/0/1 reordering rule

The 0/0/1 reordering rule is a specialty rule used to replenish a product that is not kept
on-hand, each time a sales order (SO) is confirmed for that product.
The 0/0/1 reordering rule is similar to the Replenish on Order (MTO) route, in that both
workflows are used to replenish a product upon confirmation of an SO .
The main difference between the two methods is that the Replenish on Order route automatically
reserves the product for the SO that caused it to be replenished. This means the product cannot be used for a different SO .
The 0/0/1 reordering rule does not have this limitation. A product replenished using the rule is
not reserved for any specific SO , and can be used as needed.
Another key difference is that replenishment orders created by the Replenish on Order route are
linked to the original SO by a smart button at the top of the order. When using the 0/0/1
reordering rule, a replenishment order is created, but is not linked to the original SO .
See the Replenish on Order (MTO) documentation for a full overview of the MTO route.
To create a 0/0/1 reordering rule, navigate to Inventory app â£ Products â£
Products , and select a product.
At the top of the productâs page, click the Reordering Rules smart
button to open the Reordering Rules page for the product. On the resulting page, click New to begin configuring a new reordering rule.
In the Location field of the new reordering rule, select the location in which
replenished products should be stored. By default, this location is set to WH/Stock .
In the Route field, select the route the rule should use to replenish the item. For
example, if the product should be purchased from a vendor, select the Buy route.
In the Min field and Max field, leave the values set to 0.00 . In the To Order field, enter a value of 1.00 .
`0.00`
`1.00`
With the reordering rule configured using these values, each time an SO causes the forecasted
quantity of the product to fall below the Min of 0.00 , the selected Route is used to replenish the product in one-unit increments, back up to the Max of 0.00 .
`0.00`
`0.00`
An item is configured with a 0/0/1 reordering rule that uses the Buy route. Zero units are kept
on-hand at any given time.
A SO is confirmed for one unit, which causes the forecasted quantity to drop to -1.00 . This
triggers the reordering rule, which automatically creates a PO for one unit.
`-1.00`
Once the product is received from the vendor, the forecasted quantity returns to 0.00 . There is
now one unit on-hand, but it is not reserved for the SO which triggered its purchase. It can be
used to fulfill that SO , or reserved for a different order.
`0.00`

## Trigger

A reordering ruleâs trigger can be set to automatic or manual . While both function the same
way, the difference between the two types of reordering rules is how the rule is launched:
- Auto : A purchase or manufacturing order is
automatically created when the forecasted stock falls below the reordering ruleâs minimum
quantity. By default, the Auto trigger is selected.
Auto : A purchase or manufacturing order is
automatically created when the forecasted stock falls below the reordering ruleâs minimum
quantity. By default, the Auto trigger is selected.
- Manual : The Replenishment report lists products needing replenishment, showing current/forecasted stock, lead times, and arrival
dates. Users can review forecasts before clicking Order .
Manual : The Replenishment report lists products needing replenishment, showing current/forecasted stock, lead times, and arrival
dates. Users can review forecasts before clicking Order .
To enable the Trigger field, go to Inventory app â£ Operations â£
Replenishment . Then, click the (adjust settings) icon, located to the far-right of the column titles, and tick
the Trigger checkbox.
In the Trigger column, select Auto or Manual . Refer to the
sections below to learn about the different types of reordering rules.

### Auto

Automatic reordering rules , enabled by setting the reordering ruleâs Trigger field to Auto , generate purchase or manufacturing orders when either:
- The scheduler runs, and the Forecasted quantity is below the minimum, or
The scheduler runs, and the Forecasted quantity is below the minimum, or
- A SO is confirmed, and lowers the Forecasted quantity of the product below the minimum.
A SO is confirmed, and lowers the Forecasted quantity of the product below the minimum.
If the Buy route is selected, then an RFQ is generated. To view and manage RFQs ,
navigate to Purchase app â£ Orders â£ Requests for Quotation .
If the Manufacture route is selected, then an MO is generated. To view and manage MOs , navigate to Manufacturing app â£ Operations â£ Manufacturing Orders .
When no route is selected, Odoo selects the Route specified in the Inventory tab of the product form.
The scheduler is set to run once a day, by default.
To manually trigger a reordering rule before the scheduler runs, ensure developer mode is enabled, and select Inventory app â£ Operations â£ Run
Scheduler . Then, click the purple Run Scheduler button on the pop-up window that
appears.
Be aware that this also triggers any other scheduled actions.
The product, Office Lamp , has an automatic reordering rule set to trigger when the forecasted
quantity falls below the Min Quantity of 5.00 . Since the current Forecast is 55.00 , the reordering rule is not triggered.
`OfficeLamp`
`5.00`
`55.00`

### Manual

Manual reordering rules , configured by setting the reordering ruleâs Trigger field to Manual , list a product on the replenishment dashboard when the
forecasted quantity falls below a specified minimum. Products on this dashboard are called needs ,
because they are needed to fulfill upcoming SOs , for which the forecasted quantity is not enough.
The replenishment dashboard, accessible by navigating to Inventory app â£
Operations â£ Replenishment , considers order deadlines, forecasted stock levels, and lead times.
It displays needs only when it is time to reorder items, thanks to the To Reorder filter.
When a product appears on the replenishment dashboard, clicking the Order button
generates the purchase or manufacturing order with the specified amounts To Order .

## Route

Odoo allows for multiple routes to be selected as replenishment methods under the Inventory tab on each product form. For instance, it is possible to select both Buy and Manufacture , indicating to Odoo that the product can be bought or
manufactured.
Set route on product form
Odoo also enables users to set a preferred route for a productâs reordering rule. This is the
replenishment method (e.g., buying or manufacturing) that the rule defaults to, if multiple are
available.
To specify a preferred route, begin by navigating to Inventory app â£ Operations
â£ Replenishment .
By default, the Route column is hidden. To reveal it, select the (adjust settings) icon to the
far-right of the column titles, and ticking Route from the drop-down menu that appears.
Click inside of the column on the row of a reordering rule, and a drop-down menu shows all available
routes for that rule. Select one to set it as the preferred route.
If multiple routes are enabled for a product but no preferred route is set for its reordering
rule, the product is reordered using the Buy route, then Manufacture .

### Advanced uses

Pairing Route with one of the following fields on the replenishment report unlocks
advanced configurations of reordering rules. Consider the following:
- Vendor : When the selected Route is Buy , setting the Vendor field to one of the multiple vendors on the vendor pricelist indicates to Odoo
that the vendor is automatically populated on RFQs when a reordering rule triggers the creation
of a purchase order.
Vendor : When the selected Route is Buy , setting the Vendor field to one of the multiple vendors on the vendor pricelist indicates to Odoo
that the vendor is automatically populated on RFQs when a reordering rule triggers the creation
of a purchase order.
- Bill of Materials : When the Route is set to Manufacture , and
there are multiple BoMs in use, specifying the desired BoM in the replenishment report, draft
manufacturing orders are created with this BoM in use.
Bill of Materials : When the Route is set to Manufacture , and
there are multiple BoMs in use, specifying the desired BoM in the replenishment report, draft
manufacturing orders are created with this BoM in use.
- Procurement Group : This is a way to group related POs or MOs that are tied to
fulfilling a specific demand, like an SO or a project. It helps organize and track which orders
are linked to a particular demand. Note Procurement groups link replenishment methods to demand, making smart buttons to appear â
similar to how smart buttons appear when using the MTO route . Sales order (demand) with a smart button linking to the related purchase order
(replenishment method). In the context of reordering rules: Reordering rules do not automatically assign a procurement group, which is why there are no
smart buttons that link SOs to POs , unlike the MTO route. To enable smart buttons for products replenished by reordering rules (not MTO ), with specific quantities linked to specific demands (e.g. SOs ), assign a procurement
group. Without a procurement group, demands for the same product can be combined into a single RFQ ,
even if the reordering rule is executed multiple times for those demands. This allows for more
efficient procurement by consolidating demands into fewer orders. Selecting a procurement group in the Procurement Group field on the replenishment
report ensures that all linked orders are grouped under the same demand, based on the defined
route. Exercise How can you set the Procurement Group , Vendor , and Route fields on the replenishment
report to generate a single RFQ for five different products in sales order SO35, given they
share the same vendor, Azure Interior, and ensure other demands for these products are handled
separately? View the answer Set the Procurement Group to SO35 , in the reordering rule for all five
products. This groups the demands for SO35 in the same RFQ or MO . Set the Vendor to Azure Interior to ensure the RFQ is created for the
same supplier. Set the Route to Buy to generate an RFQ . Click the Order button to generate a single RFQ for the five products tied
to SO35 . After placing the order, remove SO35 from the Procurement Group field of the
five productsâ reordering rules. This ensures future demands for these products are
managed separately and assigned to different RFQs (the usual behavior).
Procurement Group : This is a way to group related POs or MOs that are tied to
fulfilling a specific demand, like an SO or a project. It helps organize and track which orders
are linked to a particular demand.
Procurement groups link replenishment methods to demand, making smart buttons to appear â
similar to how smart buttons appear when using the MTO route .
Sales order (demand) with a smart button linking to the related purchase order
(replenishment method).
In the context of reordering rules:
- Reordering rules do not automatically assign a procurement group, which is why there are no
smart buttons that link SOs to POs , unlike the MTO route.
Reordering rules do not automatically assign a procurement group, which is why there are no
smart buttons that link SOs to POs , unlike the MTO route.
- To enable smart buttons for products replenished by reordering rules (not MTO ), with specific quantities linked to specific demands (e.g. SOs ), assign a procurement
group.
To enable smart buttons for products replenished by reordering rules (not MTO ), with specific quantities linked to specific demands (e.g. SOs ), assign a procurement
group.
- Without a procurement group, demands for the same product can be combined into a single RFQ ,
even if the reordering rule is executed multiple times for those demands. This allows for more
efficient procurement by consolidating demands into fewer orders.
Without a procurement group, demands for the same product can be combined into a single RFQ ,
even if the reordering rule is executed multiple times for those demands. This allows for more
efficient procurement by consolidating demands into fewer orders.
Selecting a procurement group in the Procurement Group field on the replenishment
report ensures that all linked orders are grouped under the same demand, based on the defined
route.
How can you set the Procurement Group , Vendor , and Route fields on the replenishment
report to generate a single RFQ for five different products in sales order SO35, given they
share the same vendor, Azure Interior, and ensure other demands for these products are handled
separately?
- Set the Procurement Group to SO35 , in the reordering rule for all five
products. This groups the demands for SO35 in the same RFQ or MO .
Set the Procurement Group to SO35 , in the reordering rule for all five
products. This groups the demands for SO35 in the same RFQ or MO .
`SO35`
`SO35`
- Set the Vendor to Azure Interior to ensure the RFQ is created for the
same supplier.
Set the Vendor to Azure Interior to ensure the RFQ is created for the
same supplier.
`AzureInterior`
- Set the Route to Buy to generate an RFQ .
Set the Route to Buy to generate an RFQ .
- Click the Order button to generate a single RFQ for the five products tied
to SO35 .
Click the Order button to generate a single RFQ for the five products tied
to SO35 .
`SO35`
`SO35`

## Just-in-time logic

Just-in-time logic in Odoo minimizes storage costs by placing orders precisely to meet deadlines.
This is achieved using the forecasted date ,
which determines when replenishment is necessary to avoid overstocking.
The forecasted date is the earliest possible date to receive a product if the replenishment
process starts immediately. It is calculated by summing the lead times linked to the replenishment
process, such as vendor lead times and purchasing delays for purchases, or manufacturing lead times for production. Both
automatic and manual reordering rules work this way.
For a product with a 5-day total lead time and a sales order delivery date in 10 days, Odoo waits
5 days to place the order, ensuring it arrives just in time for delivery.
Important considerations:
- If this feels risky , consider adding buffer time or adjusting lead times for more flexibility.
If this feels risky , consider adding buffer time or adjusting lead times for more flexibility.
- While lead times and just-in-time logic provide additional control, reordering rules work
perfectly fine without them . Keeping delivery dates on sales orders as their creation date ensures purchases are immediately triggered when needed
While lead times and just-in-time logic provide additional control, reordering rules work
perfectly fine without them . Keeping delivery dates on sales orders as their creation date ensures purchases are immediately triggered when needed

### Forecasted date and To Order quantity

The forecasted date is the earliest receipt date for a product, if it is ordered right now. It is
calculated by summing the lead times linked to the productâs replenishment process. The total of
these lead times, added to the current date, determines when Odoo checks for demanded stock.
To view the forecasted date go to the replenishment report and click the (info) icon for the desired reordering rule. The Replenishment Information pop-up window displays the Forecasted Date and various lead times.
A manual reordering rule is set up with no minimum or maximum quantities.
- Vendor lead time is 4 days, the purchase security lead time is 1 day, and the days to purchase
is 2 days.
Vendor lead time is 4 days, the purchase security lead time is 1 day, and the days to purchase
is 2 days.
- Todayâs date is November 26.
Todayâs date is November 26.
- These add up to 7 days, making the forecasted date, December 3rd.
These add up to 7 days, making the forecasted date, December 3rd.
A confirmed SO for 5 units has a delivery date of December 3rd (7 days from today). This demand
will appear on the replenishment report today, in the To Order field.
However, if the delivery date were later than December 3rd, it would not yet appear on the
report. Odoo only displays quantities to replenish when they fall within the forecasted date
window, ensuring orders are placed precisely when needed.
The just-in-time logic ensures replenishment happens only when itâs necessary for the forecasted
dateâs demand, helping avoid overstocking.
- If the forecasted quantity drops below the minimum on the forecasted date, replenishment must
begin immediately to avoid shortages.
If the forecasted quantity drops below the minimum on the forecasted date, replenishment must
begin immediately to avoid shortages.
- If the quantity drops below the minimum after the forecasted date, replenishment can wait.
If the quantity drops below the minimum after the forecasted date, replenishment can wait.
The To Order quantity is the total demand on the forecasted date.
By timing purchase orders based on the combined lead times, Odoo optimizes stock levels, keeping
inventory minimal while ensuring future requirements are ordered at the last possible
momentâstrategic procrastination without the stress!

### Common confusion about forecasted quantities

SOs due after the Forecasted Date are not accounted for in the Forecast quantities of the reordering rule.
They are, however, accounted for on the forecasted report that is opened by clicking the (graph) icon on the replenishment report, as this one represents
the long-term forecasted quantity .
Continuing the above example, when the sales orderâs deadline is adjusted to December 4th, the Forecast and To Order quantities are zero.
Opening the Forecasted Report shows the Forecasted units is 5.00 .
`5.00`

## Visibility days

Visibility days enable the ability to determine if additional quantities should be added to the
planned replenishment. Odoo checks if forecasted stock on the forecasted date will drop below the
minimum in the reordering rule. Only if it is time to reorder, visibility days check additional
future demand by the specified number of days.
This feature helps consolidate orders by grouping immediate and near-future needs, reducing
transport costs and enabling supplier discounts for larger orders.
To set visibility days to incorporate orders for a specified number of days in the future, navigate
to Inventory app â£ Operations â£ Replenishment , or by clicking the Reordering
Rules smart button from the product form.
Next, enable the Visibility Days field by clicking the (adjust settings) icon to the far right and
choosing the feature from the drop-down menu. Then, enter the desired visibility days.
The forecasted date is never pushed forward or extended; Odoo only checks the extra visibility
days if the stock falls below the minimum threshold on the forecasted date.

### Example where visibility days is triggered

A product shipped from Asia has a combined vendor lead time of 30 days and a shipping cost of $100
(including landed costs and
tariffs).
- November 4: Current date. The forecasted date is December 4 (30 days later).
November 4: Current date. The forecasted date is December 4 (30 days later).
- SO 1: Requires the product by Dec 4. Odoo places the order today, costing $100.
SO 1: Requires the product by Dec 4. Odoo places the order today, costing $100.
- SO 2: Requires the product by Dec 19. Normally, Odoo would order on Nov 19, costing an
additional $100.
SO 2: Requires the product by Dec 19. Normally, Odoo would order on Nov 19, costing an
additional $100.
- SO 3: Requires the product by Dec 25. Normally, Odoo would order on Nov 25, costing another
$100.
SO 3: Requires the product by Dec 25. Normally, Odoo would order on Nov 25, costing another
$100.
Ordering separately for these sales orders totals $300 in shipping costs.
Setting Visibility Days to 20.0 allows Odoo to âlook aheadâ 20 days from December 4
( SO 1âs forecasted date) to December 24.
`20.0`
- It groups SO 2âs order with SO 1, reducing shipping costs by consolidating orders.
It groups SO 2âs order with SO 1, reducing shipping costs by consolidating orders.
- SO 3, which is due on Dec 25, is one day late and is not grouped with the other two orders.
SO 3, which is due on Dec 25, is one day late and is not grouped with the other two orders.

### Counterexample where visibility days is not triggered

Considering the example above, if SO 1 does not exist, then:
- November 4 : Current date. The forecasted date is December 4 (30 days later).
November 4 : Current date. The forecasted date is December 4 (30 days later).
- November 5 : The forecasted date shifts to December 5.
November 5 : The forecasted date shifts to December 5.
- SO 2: Requires the product by December 19. Odoo will only trigger the order on November 19,
meaning the user will not see a replenishment notification until then.
SO 2: Requires the product by December 19. Odoo will only trigger the order on November 19,
meaning the user will not see a replenishment notification until then.
This shows that visibility days complement just-in-time logic by optimizing it to balance
replenishment costs more effectively.

## Horizon days

Horizon days determine how many days ahead Odoo checks if the forecasted quantity will drop below
reordering ruleâs minimum. The feature is meant to help users plan replenishment in advance, by
increasing the forecasted date .
Since horizon days are only meant to be used with manual reordering rules, find details about the
feature in the Replenishment report article .


Replenishment report

# Replenishment report

The replenishment report is an interactive dashboard that uses manual reordering rules , lead times, and upcoming demands to forecast quantities of products that need
restocking.
Reordering rules used on this dashboard are normal reordering rules, but the user benefits from a
monitoring menu with extra options to manage suggestions for replenishment.
This enables users to anticipate future needs, keep less products on hand without the risk of
running out, plan and consolidate orders.

## Navigate the replenishment report

To access the replenishment report, go to Inventory app â£ Operations â£
Replenishment.
Automatic reordering rules are available on this menu as well, but are hidden by default.
The fields and features unique to the replenishment dashboard are displayed below. For definitions
of the other fields, go to the Create reordering rules section .
By default, the quantity in the To Order field is the quantity required to reach the set Max Quantity . However, the To Order quantity can be adjusted by clicking on
the field and changing the value. To replenish a product manually, click Order .
Click Snooze to temporarily deactivate the reordering rule for
the set period, hiding the entry from the replenishment dashboard, when it is supposed to appear.
Defining a Vendor allows filtering or grouping demands by the vendor. This simplifies
the process of identifying products to order and can reduce shipment costs. Click the (adjust settings) icon and select Vendor from
the drop-down list to view the field on the report.

### Order to max

If a reordering rule does not forecast the product to arrive below the minimum, the replenishment
cannot be triggered, because it is seen as unnecessary . However, there can be instances where a
product needs to be replenished even if it is not deemed necessary , such as when an order needs to
be maximized to obtain better discounts, or to save on delivery costs.
First, select one or more products by ticking the appropriate checkbox. Then, click the Replenish button and select Order to Max . Doing so creates a request for
quotation (RFQ) for the first possible replenishment date for each product for the maximum specified
in the reordering rule.

### Horizon days

Horizon days determine how many days ahead Odoo checks if the forecasted quantity will drop below
reordering ruleâs minimum. The feature is meant to help users plan replenishment in advance, by
increasing the forecasted date on the replenishment report .
Setting horizon days to 7 ensures all manual reordering rules set to trigger within the next
seven days appear on the replenishment report, allowing users to review and decide which products
to order in advance.
`7`
To set horizon days, go to Inventory app â£ Operations â£ Replenishment , and
click Manual in the left sidebar. In the
menu that appears, set the number of Horizon days.
Both horizon days and visibility days allow
Odoo to anticipate future demand, but they work differently:
- Visibility days : only checks future demand if a replenishment would have been triggered today.
Visibility days : only checks future demand if a replenishment would have been triggered today.
- Horizon days : looks ahead a specified number of days and triggers reordering rules as soon as
the forecasted quantity falls below the minimum within that window â even if no replenishment is
needed today.
Horizon days : looks ahead a specified number of days and triggers reordering rules as soon as
the forecasted quantity falls below the minimum within that window â even if no replenishment is
needed today.
- Current date: Feb 18
- On hand quantity: 10
- Reordering rule: Min: 5, Max 10
Reordering rule: Min: 5, Max 10
- Vendor lead time: 1 day
Vendor lead time: 1 day
8 units are needed for an SO on Feb 23. That means, on Feb 23, there will only be 2 units in
stock.
- The demand appears on the replenishment report only on Feb 22, one day before the delivery
date.
The demand appears on the replenishment report only on Feb 22, one day before the delivery
date.
- Forecasted date: Feb 19 (current date + vendor lead time)
Forecasted date: Feb 19 (current date + vendor lead time)
With horizon days (4 or more days)
- Odoo considers demand up to Feb 23 as relevant today (Feb 18)
Odoo considers demand up to Feb 23 as relevant today (Feb 18)
- The need for 8 more units appears immediately in the replenishment report
The need for 8 more units appears immediately in the replenishment report
- Forecasted date: Feb 23 (current date + vendor lead time + horizon days)
Forecasted date: Feb 23 (current date + vendor lead time + horizon days)

## Replenishment information

In each line of the replenishment report, clicking the (info) icon opens the Replenishment Information pop-up window, which displays the lead times and forecasted date .
For detailed information on how to use this feature for replenishment, go to the Just in time
logic section.

### Select a warehouse

If a warehouseâs replenishment method is resupply from another warehouse , check for available product quantities in other warehouses by opening the Replenishment Information pop-up window. Warehouses that can replenish the stock are
listed under the Warehouses tab, and the Available Quantity shows the
on-hand stock in each warehouse.
After selecting a sourcing warehouse, click Select Route Order button is
clicked, the reordering rule will revert to its preferred route (Buy or Manufacture).
Temporary Reordering Rules

Navigate the replenishment report
Order to max
Horizon days
Replenishment information
Select a warehouse


Inter-warehouse replenishment

# Inter-warehouse replenishment

When a business operates multiple locations, such as warehouses, retail shops, or manufacturing
facilities, resupplying stock from a central warehouse is sometimes necessary. Odoo uses a Route configuration that enables locations to replenish from a central distribution center, automatically
generating inter-warehouse transfers . Odoo Inventory manages these transfers to keep
stores in stock.
This guide explains how to conduct inter-warehouse transfers using two replenishment strategies:
- Make to order (MTO)
- Reordering rule
Difference between MTO and reordering rules

## Configuration

The initial configuration for both replenishment strategies is the same. First go to Inventory app â£ Configuration â£ Settings . In the Warehouse section,
activate Storage Locations . Then, click Save to apply the setting.

### Warehouses

Configure the settings for the central warehouse and connecting storage locations by going to Inventory app â£ Configuration â£ Warehouses .
Each central warehouse and other locations must have its own warehouse. For example, each shop
is considered a local warehouse.
Select an existing warehouse, or create a new one to be resupplied from the central warehouse, by
clicking New . Then, give the warehouse a name and a Short Name , which will
appear on that warehouseâs transfers.
In the Warehouse Configuration tab, locate the Resupply From field. Check
the box next to the central warehouseâs name. If the warehouse can be resupplied by more than one
warehouse, make sure to check those warehousesâ boxes too. Now, Odoo knows which warehouses can
resupply this warehouse.
The central warehouse that will supply the shops is called Central warehouse . The Resupply From field is set to this warehouse on the shopâs warehouse configuration
page.
`Centralwarehouse`

### Set route on a product

Products must also be configured properly in order for them to be transferred between warehouses.
Go to Inventory app â£ Products â£ Products and select the desired product.
In the Inventory tab, the new route appears as X: Supply Product from Y in
the Routes section, where âXâ is the storeâs warehouse that receives products, and âYâ
is the warehouse that sends products.
Tick the X: Supply Product from Y checkbox, which is intended to be used with the MTO route or a reordering rule to replenish stock by moving the product from one warehouse to another.
Proceed to the dedicated sections below to continue the process.

#### MTO

To replenish products using the make-to-order method, go to the product form and ensure the MTO route is unarchived , so it appears in the Routes section of the Inventory tab.
With the resupply and MTO routes ticked, jump to the section titled: Replenish from another
warehouse .
The product, sold at the warehouse, Store , is resupplied from the central warehouse, named YourCompany . To replenish the product using MTO , the following routes are selected:
`Store`
`YourCompany`
- Store: Supply Product from YourCompany
Store: Supply Product from YourCompany
- Replenish on Order (MTO)
Replenish on Order (MTO)

#### Reordering rule

To replenish products using reordering rules, first ensure the X: Supply Product from Y route is selected in the Inventory tab of the product form.
Then, create a reordering rule to automate replenishment by clicking the Reordering
Rules smart button.
- Location : the stock location of the retail store. For example, SHOP/Stock .
Location : the stock location of the retail store. For example, SHOP/Stock .
`SHOP/Stock`
- Route : X: Supply Product from Y .
Route : X: Supply Product from Y .
- Min Quantity and Max Quantity to trigger automatic stock transfers when
inventory falls below the set threshold.
Min Quantity and Max Quantity to trigger automatic stock transfers when
inventory falls below the set threshold.
A 0/0 reordering rule to replenish the shopâs
warehouse is created, with the Location set to SHOP/Stock , and the Route set to Store: Resupply from YourCompany .
`SHOP/Stock`

## Replenish one warehouse from another

After completing the setup, trigger replenishment using one of several methods, such as:
- Navigate to the product form of the product that is resupplied from another warehouse. Click the Replenish button on the top-left of the product page. In the pop-up window,
set the warehouse to the retail shop, (e.g. Store ), and click Confirm .
Navigate to the product form of the product that is resupplied from another warehouse.
Click the Replenish button on the top-left of the product page. In the pop-up window,
set the warehouse to the retail shop, (e.g. Store ), and click Confirm .
`Store`
- Create a quotation, and in the Other Info tab, set the Warehouse to the
retail shop (e.g. Store ), when selling the product makes the on-hand quantity of the product go
below the minimum set on the reordering rule.
Create a quotation, and in the Other Info tab, set the Warehouse to the
retail shop (e.g. Store ), when selling the product makes the on-hand quantity of the product go
below the minimum set on the reordering rule.
`Store`
Once triggered, Odoo creates two transfers: One is a delivery order from the central, supplying
warehouse, which contains all the necessary products to the store, and the second is a receipt at
the shop, from the main warehouse.
While in transit, the product is located at Physical Locations/Inter-warehouse transit .
`PhysicalLocations/Inter-warehousetransit`
A sales order for the product at the shop is created. To replenish the product at the shop and
ship it from there, Odoo generates a delivery order from the central warehouseâs stock, WH/Stock to the shopâs warehouse SHOP/Stock . While the products are traveling between
warehouses, they are in Physical Locations/Inter-warehouse transit .
`WH/Stock`
`SHOP/Stock`
`PhysicalLocations/Inter-warehousetransit`
The final delivery order is from the shop to the customerâs delivery address, and is not
pertinent to the workflow in this guide.

Configuration
Warehouses
Set route on a product
Replenish one warehouse from another


Stock valuation dashboard

# Stock valuation dashboard

When a company has physical assets, such as inventory, they often want to know approximately how
much has been spent on these goods, or how much they are worth at the moment. This process of
assigning a monetary value to account for inventory is known as stock valuation .
This value is often reported for accounting purposes. For instance, an insurance company may want to
know the value of goods stored in a warehouse, in the event of a flood or fire.
Stock valuation typically utilizes one of two accounting systems:
- Perpetual : The inventory is constantly (perpetually) being updated, and the value is
constantly changing.
Perpetual : The inventory is constantly (perpetually) being updated, and the value is
constantly changing.
- Periodic : The inventory value is checked on an occasional (periodic) basis, and the value is
set at this occasional time.
Periodic : The inventory value is checked on an occasional (periodic) basis, and the value is
set at this occasional time.
Using tracked inventory in Odoo
necessitates a perpetual inventory accounting system because of the need to know when and where
inventory exists, and how much of it is available or forecasted. There are a few common stock
valuation methods used in Odoo: standard price , average cost (AVCO), and first in, first out (FIFO) accounting. It is important to know that the
valuation method chosen for a product impacts the calculation of several fields in the stock
valuation reports.

## Open the dashboard

Odooâs Stock Valuation dashboard displays the financial value of all tracked inventory, according
to each productâs stock valuation method. This report can provide insights into potential issues in
the supply chain, such as sunken purchase costs or delays in profitability. To access the dashboard,
go to Inventory app â£ Reporting â£ Valuation .
The Reporting menu in Inventory is only accessible to users with admin access .
This dashboard has three different views, or inventory reports â list view (i.e. the default stock valuation report), pivot view (i.e. the stock aging report), and graph view . Each view can be customized with
different fields to break down inventory valuation by product, operation type, date, or company.
All three views can be filtered by various fields. To apply filters, click into the search bar at
the top of the report, or click the drop-down arrow next to it. For example, selecting the filter Has Remaining Qty will show only products that are currently in stock.

## List view: stock valuation

By default, the Stock Valuation dashboard displays in list view , represented by the (list) icon. This report shows a detailed record of stock movements
and their valuations.

### Configure

The following columns are displayed by default:
- Date : the date and time when the stock move was created. The valuation report is sorted by this field by default, emphasizing the importance
of time when valuing inventory. To sort the report by a different column, simply click on the
column title.
Date : the date and time when the stock move was created. The valuation report is sorted by this field by default, emphasizing the importance
of time when valuing inventory. To sort the report by a different column, simply click on the
column title.
- Reference : the reference document associated with this stock move (e.g., a warehouse
receipt, a delivery order, or a manual inventory adjustment).
Reference : the reference document associated with this stock move (e.g., a warehouse
receipt, a delivery order, or a manual inventory adjustment).
- Product : the product that is being moved and valued.
Product : the product that is being moved and valued.
- Quantity : the number of units by which this productâs stock has increased or
decreased in this particular stock move.
Quantity : the number of units by which this productâs stock has increased or
decreased in this particular stock move.
- Total Value : the value of the productâs stock in this particular stock move,
calculated by multiplying the Quantity and Unit Value .
Total Value : the value of the productâs stock in this particular stock move,
calculated by multiplying the Quantity and Unit Value .
If a Reference document includes several goods, there will be a separate line item
generated on the report for each good.
There are additional fields that can be added to this view to provide more insight into the stockâs
valuation. To add fields, click the (adjust) icon, and select
the desired fields:
- Lot/Serial Number : the uniquely identifying lot or serial number for this product.
Lot/Serial Number : the uniquely identifying lot or serial number for this product.
- Company : for businesses that operate with multiple companies, this field displays the
company by which this stock move took place.
Company : for businesses that operate with multiple companies, this field displays the
company by which this stock move took place.
- Remaining Quantity : the number of units remaining for this valuation of the product,
after demand has been accounted for (even from other stock moves). This field can be especially
helpful for FIFO and AVCO accounting, as it
conveys which units of stock came into a warehouse first and the value of said stock.
Remaining Quantity : the number of units remaining for this valuation of the product,
after demand has been accounted for (even from other stock moves). This field can be especially
helpful for FIFO and AVCO accounting, as it
conveys which units of stock came into a warehouse first and the value of said stock.
- Unit Value : the cost of one unit of the product for the company ( not the price to
consumers).
Unit Value : the cost of one unit of the product for the company ( not the price to
consumers).
- Description : a description of the reason for this stock valuation (typically, a stock
move has occurred). By default, this field is set as the concatenation of the Reference and Product fields. However, the field may also display other
important messages for this line item, such as a note stating that the line item is an adjustment
due to a change in the productâs inventory valuation method.
Description : a description of the reason for this stock valuation (typically, a stock
move has occurred). By default, this field is set as the concatenation of the Reference and Product fields. However, the field may also display other
important messages for this line item, such as a note stating that the line item is an adjustment
due to a change in the productâs inventory valuation method.
- Remaining Value : the value of this productâs current stock levels for this particular
stock move, after demand has been accounted for. Along with Remaining Quantity , this
field can be especially helpful for FIFO and AVCO accounting, as they convey which stock came into a warehouse first and
the value of said stock.
Remaining Value : the value of this productâs current stock levels for this particular
stock move, after demand has been accounted for. Along with Remaining Quantity , this
field can be especially helpful for FIFO and AVCO accounting, as they convey which stock came into a warehouse first and
the value of said stock.
Some of these settings may not appear unless first enabled in Settings application.

### Stock valuation layers (SVLs)

Each line item in the Stock Valuation report represents a record in Odooâs system known
as a stock valuation layer (SVL) . SVLs are generated when products
move in a way that impacts their stock valuation. Specifically, the stock moves that generate SVLs are warehouse receipts, deliveries, dropshipping orders, and
dropshipping returns. These stock moves must first be validated (by clicking the Validate button) for the SVL to be created.
If a productâs inventory valuation method changes on the product form, new line items are generated
on the Stock Valuation report to reflect the resulting SVLs .
For example, if the valuation method changes from standard price to either AVCO or FIFO accounting, revaluation entries will be
automatically posted to reflect the change in pricing for goods that remain in stock. One entry will
be negative to âremoveâ the old pricing, and the second entry will be positive to record the new
pricing. These entries are connected to journal entries in Odooâs Accounting app.
Below is an example of what the Stock Valuation table shows when a few stock moves have
occurred for a product using standard price accounting.
Conversely, the following image depicts what the Stock Valuation Report table might look like
after a product has switched from standard price to FIFO accounting.
The Remaining Value and Remaining Quantity fields are derived from what
occurs at the SVL level in Odoo and, as such, are better understood
with an example.
Frankieâs Consignment Shop buys sweaters at the cost, or Unit Value , of 5.00 dollars. For the first time, Frankieâs purchases and receives a Quantity of 100.00 sweaters in one stock move, then re-sells and delivers -10.00 sweaters in a second stock move.
`5.00`
`100.00`
`-10.00`
In the first stock move line item, the Remaining Quantity will change from 100.00 to 90.00 , once the second stock move is recorded. This change reflects that, although 100
sweaters were originally purchased, only 90 of those sweaters remain in stock and should be
counted in the valuation. Similarly, the Remaining Value will drop from $500.00 to $450.00 . The Total Value will remain at $500.00 , regardless of subsequent
transactions.
`100.00`
`90.00`
`$500.00`
`$450.00`
`$500.00`
On the other hand, the Remaining Quantity of the second stock move line item will be
recorded and remain at 0.00 because the quantity of -10.00 was sold. In the system, because
the SVL was a sale, there is no stock left that needs to be valued
from that transaction.
`0.00`
`-10.00`

### Change the valuation date

To see the valuation of stock moves at a specific date and time, click the Valuation At
Date button, located in the top-left corner of the Stock Valuation page. The report
will show the Quantity and Total Value of each stock move.
The Remaining Quantity and Remaining Value of the stock moves will not be point-in-time for any dates chosen in the past. The stock moves shown when selecting a past
date will still display the current on-hand quantity and value of the products.
A business has 100 sofas in stock on January 1st and sells 20 of those sofas on February 1st. The Remaining Quantity of the SVL will drop from 100.00 to 80.00 on February 1st. If no other stock moves take place, and on February 1st, the Valuation at Date is selected as January 1st, the Remaining Quantity will still show as 80.00 .
`100.00`
`80.00`
`80.00`

## Pivot view: stock aging

From the Stock Valuation dashboard, access pivot view by clicking the (pivot) icon. This view is essentially a stock aging report , and
it shows the on-hand quantity and value of inventory by purchase date, which can help monitor
products with expiration dates.

### Configure

By default, the pivot view shows the value of all product categories by day and month . Clicking
the (plus) icon in each column or row will reveal a drop-down
list of options to create a more granular breakdown of the inventory valuation. The drop-down
options include: Product , Lot/Serial Number , Product Category , Date , Company , or Add Custom Group Clicking the (minus) icon collapses the field back to an empty state.
In the table, the Remaining Qty column displays the number of on-hand items, and Remaining Value displays the total cost of purchasing these items.

## Graph view

The stock value can be depicted graphically by clicking the (graph) icon. By default, the graph is displayed in line chart
view and filtered to show the cumulative total of all inventory value over time in Odoo.
At the top of the report, a bar chart or pie chart view
can be selected instead.
Odoo reporting essentials

Open the dashboard
List view: stock valuation
Configure
Stock valuation layers (SVLs)
Change the valuation date
Pivot view: stock aging
Configure
Graph view


Forecasted report

# Forecasted report

The Inventory forecasted report provides a real-time view of projected stock levels, helping
businesses manage their inventory efficiently. This report is beneficial for planning and decision
making, ensuring stock availability for upcoming sales, manufacturing, and replenishment activities.
The forecast report is only available on products where inventory is being tracked, commonly
referred to as a storable product .

## Navigating the forecast report

The forecast report can be accessed via the Inventory , Purchase , Manufacturing , and Sales apps.
To access the report, click the Forecasted smart button on a
product form. Alternatively, the report can be accessed from a sales order (SO) or purchase order
(PO) by clicking on the (Graph) icon next to the product, then
selecting View Forecast .
The forecasted report consists of a graph and a table. The graph visually represents stock movements
over time. The following information is displayed:
- On Hand : current stock physically available in the warehouse.
On Hand : current stock physically available in the warehouse.
- Incoming : quantities expected from confirmed purchase orders or manufacturing orders.
Incoming : quantities expected from confirmed purchase orders or manufacturing orders.
- Outgoing : quantities reserved for sales orders or other outgoing operations.
Outgoing : quantities reserved for sales orders or other outgoing operations.
- Forecasted : projected stock levels based on confirmed and planned operations.
Forecasted : projected stock levels based on confirmed and planned operations.
The table provides detailed metrics regarding operations, including:
- Replenishment : Shows reserved quantities, especially useful for multi-step operations.
Replenishment : Shows reserved quantities, especially useful for multi-step operations.
- Receipt : The date of receipt for the items.
Receipt : The date of receipt for the items.
- Units : The number of units involved in each operation.
Units : The number of units involved in each operation.
- Used by : The operation the stock is allocated for.
Used by : The operation the stock is allocated for.
- Delivery : The scheduled or expected date of stock movement.
Delivery : The scheduled or expected date of stock movement.
- Forecasted Inventory : The forecasted stock levels.
Forecasted Inventory : The forecasted stock levels.
- Forecasted with Pending : The updated stock levels with the pending stock movements
considered.
Forecasted with Pending : The updated stock levels with the pending stock movements
considered.

### Reserve and unreserve products

Users can reserve or unreserve products directly from the forecasted report, ensuring stock
allocation aligns with operational needs.

### Replenish products

Click the Replenish button at the top of the report to open the Product
Replenish pop-up. From here, products can be replenished through purchase orders from vendors, or
manufactured. Select the Quantity , Preferred Route and Vendor ,
before clicking Confirm .

### Manufacturing forecast

To view the availability of manufactured products, click the Manufacturing Forecast button. This displays the forecasted stock levels for raw materials, showing how much are expected
to be consumed for upcoming manufacturing orders.
The manufacturing forecast identifies component shortages before they can impact manufacturing
timelines, and helps to align manufacturing activities with sales demands.

### Update quantity

To manually update the quantity of a product, click Update Quantity . This opens the Change Product Quantity pop-up. Confirm the correct product variant is selected in the Product field, then enter the appropriate value in the New Quantity on Hand field. Click Apply when finished. The report then updates to reflect the new product
quantity.

## Multi-step reservation

Reserved quantities for multi-step incoming and outgoing shipments are indicated on in the Replenishment column on the table of the report.
Stock in Transit refers to products that have been received, but are in transit to their
input or quality control locations. Free Stock in Transit refers to available products
received in the input location, but not yet placed in stock.

## Operations affecting the forecast report

The forecast report is influenced by various operations, each impacting stock levels differently.
Scheduled delivery dates, planned manufacturing dates, and expected arrival dates all affect the
forecast of inventory.
Requests for Quotation (RFQs) do not immediately impact the forecast report, as the products are not
confirmed for replenishment. POs , however, do affect the report as the products are expected to
arrive after the PO has been confirmed.
Confirmed SOs decrease the forecasted stock, adjusting the report based on the scheduled delivery
date. Confirmed manufacturing orders (MOs) affect the forecasted stock for both raw materials and
finished goods.

## Use cases

### Negative quantity

A negative forecasted quantity indicates that the projected demand exceeds the available and
incoming stock at a given point in time. This could occur because the SOs or MOs require more
stock than is currently available or expected, or because of delays in the shipping or manufacturing
process.
Whatever the cause, when negative numbers are displayed on the forecast report, it serves as an
early warning, allowing business to take preventative action. This can include:
- Prioritizing specific sales or production orders.
Prioritizing specific sales or production orders.
- Adjusting procurement strategies to expedite purchase orders.
Adjusting procurement strategies to expedite purchase orders.
- Manage customer expectations by proactively communicating the possibility for delays.
Manage customer expectations by proactively communicating the possibility for delays.

### Split orders

In the example below, there is not currently enough stock of a product, Cabinet with Doors to
fulfill the multiple sales orders. The current stock has been reserved for a shipment, WH/OUT/00011 , and the remainder has been split between the two orders. The remaining stock is
expected with WH/IN/00004 . Once received, they are the separated out to cover the remaining
orders.
`CabinetwithDoors`
`WH/OUT/00011`
`WH/IN/00004`

### Late receipt

The replenishment table can be used to determine whether an incoming shipment arrives in time to
fulfill an order. For example, a SO is displayed with a Delivery Date for today for
five Cable Management Boxes . The current on hand quantity is zero. A PO has been confirmed, with
the expected arrival three days from today.
`CableManagementBoxes`
The forecasted quantity for today shows -5 , because the confirmed demand is five, but the current
stock on hand is zero. Since the Receipt date is after the Delivery Date ,
the shipment is late.
`-5`
This can be an indication to either expedite the current shipment, if possible, or reschedule the
delivery date for the SO .


Locations dashboard

# Locations dashboard

The Locations dashboard in the Inventory application provides an overview of on-hand storage
locations for company products. Use this report to see where stock is stored, identify misplaced items , or view past inventory to see product
locations on specific dates.
To access the locations report, the Storage Locations feature must be enabled. To do that, go to Inventory app â£ Configuration â£ Settings . In the Warehouse section,
tick the checkbox for Storage Locations , and click Save . Then, access the
locations dashboard by navigating to Inventory app â£ Reporting â£ Locations .
The Reporting menu in Inventory is only accessible to users with admin access .

## Navigate the locations dashboard

By default, the Locations dashboard lists all on-hand products in stock (in the Product column), along with the following information:
- Location : current storage location. If a product is stored at Shelf 1 and Shelf 2 ,
the product is listed twice, showing quantities at each location.
Location : current storage location. If a product is stored at Shelf 1 and Shelf 2 ,
the product is listed twice, showing quantities at each location.
`Shelf1`
`Shelf2`
- Package : the package that the product is stored in, if any.
Package : the package that the product is stored in, if any.
- Lot/Serial Number : if the product has a lot or serial number, it is specified here.
Lot/Serial Number : if the product has a lot or serial number, it is specified here.
- On Hand Quantity : current quantity of products. Click the (edit) icon to modify the on-hand quantity .
On Hand Quantity : current quantity of products. Click the (edit) icon to modify the on-hand quantity .
- Reserved Quantity : on-hand quantity reserved for operations, such as pickings,
delivery orders, or manufacturings.
Reserved Quantity : on-hand quantity reserved for operations, such as pickings,
delivery orders, or manufacturings.
- Unit : the unit of measure of the product.
Unit : the unit of measure of the product.
Click the buttons to the right of each row item to access additional information:
- History : access the stock move history of the product, displaying
information about the quantity and description of why the product was moved from one location to
another. Tip View what the product is reserved for, by clicking the History button on the far-right of the product line. On the Moves History page, remove the Done filter
from the search bar to reveal filter options, and select the To Do filter.
History : access the stock move history of the product, displaying
information about the quantity and description of why the product was moved from one location to
another.
View what the product is reserved for, by clicking the History button on the far-right of the product line.
On the Moves History page, remove the Done filter
from the search bar to reveal filter options, and select the To Do filter.
- Replenishment : access the reordering rules page to replenish products at the specific location.
Replenishment : access the reordering rules page to replenish products at the specific location.
In the upper-left corner of the page, click the New button to make an inventory
adjustment to record quantities of a certain product at a
specific Location .
To view products, quantities, and their locations for a specified date, click the Inventory At Date button (also located in the upper-left corner of the page). Select a
date and time in the Inventory at Date field, then click Confirm .

### View empty locations

To view which locations are currently empty, navigate to Inventory â£ Configuration
â£ Locations .
Empty locations are designated by the checkbox in the Is Empty column. To show only
empty locations, click into the search bar and select the Empty Locations filter.

## Generate reports

After learning how to navigate the locations dashboard , it can be used to create and share different
reports.
A few common reports that can be created using the Locations dashboard are detailed
below.

### Dead stock report

To get list of expired items, also referred to as dead stock , follow these steps:
- Go to Inventory app â£ Reporting â£ Locations .
Go to Inventory app â£ Reporting â£ Locations .
- Then, click into the search bar to reveal a drop-down list of Filters , Group By , and Favorite options.
Then, click into the search bar to reveal a drop-down list of Filters , Group By , and Favorite options.
- Enable the Internal Locations and Expiration Alerts option under the Filters section.
Enable the Internal Locations and Expiration Alerts option under the Filters section.
The report now displays a list of expired products.
This report can also be generated from the Lot and Serials Numbers page, accessed by going to Inventory app â£ Products â£ Lots/Serial Numbers .

### Stranded inventory report

Businesses using multi-step flows in the Inventory or Manufacturing apps, may have stranded items, which are products not in their proper storage locations, due to human error. Use
this report to periodically check transfer locations (e.g. WH/Input , WH/Pre-Processing ) to
ensure items are moved to their intended storage locations, and accurately recorded in the database.
To get a list of items that might be sitting idly in storage, follow these steps:
- Go to Inventory app â£ Reporting â£ Locations .
Go to Inventory app â£ Reporting â£ Locations .
- In the search bar, begin typing the name of the location where products are intended to be moved
to, such as WH/Input ,  or WH/Packing .
In the search bar, begin typing the name of the location where products are intended to be moved
to, such as WH/Input ,  or WH/Packing .
`WH/Input`
`WH/Packing`
- Select the Search Location for: [location name] option from the resulting drop-down
menu that appears beneath the search bar.
Select the Search Location for: [location name] option from the resulting drop-down
menu that appears beneath the search bar.
The report now displays a list of products at the transit location.
Searching Input in Location shows a list of products at a WH/Input location.
`Input`
The list shows 500 quantities of Chicken , which is alarming if not refrigerated soon after
reception. The stranded inventory report helps identify items that have been idling in
non-storage locations.
`500`
`Chicken`

### Inventory discrepancy report

To generate a report of items that have been moved since the last inventory audit , follow these steps:
- Go to Inventory app â£ Reporting â£ Locations .
Go to Inventory app â£ Reporting â£ Locations .
- Then, click into the search bar to reveal a drop-down list of Filters , Group By , and Favorite options.
Then, click into the search bar to reveal a drop-down list of Filters , Group By , and Favorite options.
- Enable the Internal Locations and Conflicts option from the Filters section.
Enable the Internal Locations and Conflicts option from the Filters section.
- The report now displays items whose quantities have changed since the last cycle count.
The report now displays items whose quantities have changed since the last cycle count.
- Click the History button to view inventory transfers, including
receipts and deliveries, that have occurred since the inventory adjustment.
Click the History button to view inventory transfers, including
receipts and deliveries, that have occurred since the inventory adjustment.

Navigate the locations dashboard
View empty locations
Generate reports
Dead stock report
Stranded inventory report
Inventory discrepancy report


Moves history dashboard

# Moves history dashboard

The Moves History report in Odoo Inventory provides a detailed record of product movements
(containing past and current locations), lot numbers, and reasons for movement. Reports can be
generated for any time frame, making this report essential for analyzing stock levels, monitoring
inventory turnover, and identifying any discrepancies in inventory.
The reporting feature is only accessible to users with admin access .
To access the stock report, go to Inventory app â£ Reporting â£ Moves History .

## Navigate the moves history report

In the report, the columns represent:
- Date : calendar date and time of the stock move.
Date : calendar date and time of the stock move.
- Reference : description of the reason for the stock move or quantity change, such as a
receipt number (e.g. WH/IN/00012 ).
Reference : description of the reason for the stock move or quantity change, such as a
receipt number (e.g. WH/IN/00012 ).
`WH/IN/00012`
- Product : name of the product involved in the move.
Product : name of the product involved in the move.
- Lot/Serial Number : specifies the lot or serial number of the tracked product being
moved.
Lot/Serial Number : specifies the lot or serial number of the tracked product being
moved.
- From : source location of the moved product.
From : source location of the moved product.
- To : destination location of the moved product.
To : destination location of the moved product.
- Quantity : number of products moved.
Quantity : number of products moved.
- Unit : unit of measure of the products moved.
Unit : unit of measure of the products moved.
- Status : indicates the move status, which can be Done , Available (ready for action), or Partially Available (insufficient
quantities to complete the operation).
Status : indicates the move status, which can be Done , Available (ready for action), or Partially Available (insufficient
quantities to complete the operation).

### Search options

Use the following search options to customize the Moves History report to display
relevant information
The Filters section allows users to search among pre-made and custom filters to
find specific stock records.
- To Do : show stock move records that are in progress. This includes lines with a Status column value of Available or Partially Available .
To Do : show stock move records that are in progress. This includes lines with a Status column value of Available or Partially Available .
- Done : completed stock moves, with a Status of Done .
Done : completed stock moves, with a Status of Done .
- Incoming : displays move records from vendor locations.
Incoming : displays move records from vendor locations.
- Outgoing : displays move records to customer locations, including customer
returns.
Outgoing : displays move records to customer locations, including customer
returns.
- Internal : displays move records from one internal location to another.
Internal : displays move records from one internal location to another.
- Manufacturing : shows records where products were produced from the virtual,
production location .
Manufacturing : shows records where products were produced from the virtual,
production location .
- Date : select this drop-down menu to access various date filter options and view
stock moves from a specific month, quarter, or year.
Date : select this drop-down menu to access various date filter options and view
stock moves from a specific month, quarter, or year.
- Last 30 Days : show records that occurred in the last thirty days.
Last 30 Days : show records that occurred in the last thirty days.
- Last 3 Months : show records from the last three months.
Last 3 Months : show records from the last three months.
The Group By section allows users to add pre-made and custom groupings to the
search.
- Product : group records by product.
Product : group records by product.
- Status : group records by the three status types: Done , Available , and Partially Available .
Status : group records by the three status types: Done , Available , and Partially Available .
- Date : group records by Year , Quarter , Month , Week , or Day .
Date : group records by Year , Quarter , Month , Week , or Day .
- Transfers : group records by operation number, e.g. WH/OUT/00012 , WH/MO/00211 .
Transfers : group records by operation number, e.g. WH/OUT/00012 , WH/MO/00211 .
`WH/OUT/00012`
`WH/MO/00211`
- Location : group records by source location (the From column in this
report).
Location : group records by source location (the From column in this
report).
- Category : group records by product category. To configure these, go to Inventory app â£ Configuration â£ Products: Product Categories .
Category : group records by product category. To configure these, go to Inventory app â£ Configuration â£ Products: Product Categories .
- Batch Transfer : group records by batch .
Batch Transfer : group records by batch .
To save the current applied filters and groups, so the same information can be easily accessed
after closing this page, click Save current search .
Optionally, tick the Default filter checkbox to make this current view the default
filter when opening the Moves History report. Or tick the Shared checkbox to make the search option available to other users.
Lastly, click the Save button.
Search, filter, and group records

Navigate the moves history report
Search options