Stock report

# Stock report

Use the stock report in Odoo Inventory for a detailed list of all stored products, including those
reserved, purchased and in transit, as well as those delivered to customers.
The reporting feature is only accessible to users with admin access .
To access the stock report, go to Inventory app â£ Reporting â£ Stock .

## Navigate the stock report

On the stock report, the left sidebar includes several groupings to narrow down what is being shown.
The default groupings are Warehouses ,  which filters products by specific warehouses,
and Category , which shows products within a selected product category.
The Warehouse grouping is only available when there are multiple warehouses in the
database. Refer to the Warehouses documentation for more details.
In the report itself, the columns represent:
- Product : name of the product.
Product : name of the product.
- Unit Cost : average inventory valuation per unit, adjusted based on the cost to
purchase and/or manufacture the product.
Unit Cost : average inventory valuation per unit, adjusted based on the cost to
purchase and/or manufacture the product.
- Total Value : Total inventory valuation of the product, calculated by multiplying unit
cost by on-hand quantity. See also Compute average cost inventory valuation per unit Inventory valuation methods
Total Value : Total inventory valuation of the product, calculated by multiplying unit
cost by on-hand quantity.
- Compute average cost inventory valuation per unit
Compute average cost inventory valuation per unit
- Inventory valuation methods
Inventory valuation methods
- On Hand : current quantity of products. Click the (pencil) icon to modify the on-hand quantity .
On Hand : current quantity of products. Click the (pencil) icon to modify the on-hand quantity .
- Free to Use : on-hand quantity that are not reserved for delivery or manufacturing
orders, and are available to sell or use.
Free to Use : on-hand quantity that are not reserved for delivery or manufacturing
orders, and are available to sell or use.
- Incoming : items expected to arrive at the warehouse. Number of products is based on
quantities in confirmed purchase orders.
Incoming : items expected to arrive at the warehouse. Number of products is based on
quantities in confirmed purchase orders.
- Outgoing : items expected to leave the warehouse or be consumed in manufacturing
orders. Number of products is based on quantities in confirmed sales or manufacturing orders.
Outgoing : items expected to leave the warehouse or be consumed in manufacturing
orders. Number of products is based on quantities in confirmed sales or manufacturing orders.
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.
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.
- Replenishment : access the reordering rules page for the product to create or manage methods of procuring
the product.
Replenishment : access the reordering rules page for the product to create or manage methods of procuring
the product.
- Locations : break down of on-hand quantity at multiple storage locations. Only
available when the product is stored in multiple locations.
Locations : break down of on-hand quantity at multiple storage locations. Only
available when the product is stored in multiple locations.
- Forecast : access the forecasted report to view on-hand, incoming, and outgoing
quantities. Report also contains links to confirmed purchase, sales, or manufacturing orders. Only
available when there are confirmed sales, purchase, or manufacturing orders for the product.
Forecast : access the forecasted report to view on-hand, incoming, and outgoing
quantities. Report also contains links to confirmed purchase, sales, or manufacturing orders. Only
available when there are confirmed sales, purchase, or manufacturing orders for the product.

### Search options

The Filters section allows users to search among pre-made and custom filters to
find specific stock records.
- Published : display products published on the website. Only available with the Website app installed.
Published : display products published on the website. Only available with the Website app installed.
- Available in POS : display products available through the Point of Sale app.
Available in POS : display products available through the Point of Sale app.
- Available in Self : display products available in self order through the Point
of Sale app. Appears in the search because the Available in Self Order checkbox
was ticked in the Point of Sale section of a product formâs Sales tab. The option is only available when the Available in POS checkbox is ticked.
Available in Self : display products available in self order through the Point
of Sale app. Appears in the search because the Available in Self Order checkbox
was ticked in the Point of Sale section of a product formâs Sales tab. The option is only available when the Available in POS checkbox is ticked.
- Not available in Self : display products available in PoS , but not available in
self order.
Not available in Self : display products available in PoS , but not available in
self order.
Configure PoS products
- Can be Sold : display products that can be sold to customers. Appears in the
search because the Can be Sold checkbox is ticked on the product form.
Can be Sold : display products that can be sold to customers. Appears in the
search because the Can be Sold checkbox is ticked on the product form.
- Can be Purchased : display products that can be bought from vendors. Appears in
the search because the Can be Purchased checkbox is ticked on the product form.
Can be Purchased : display products that can be bought from vendors. Appears in
the search because the Can be Purchased checkbox is ticked on the product form.
- Can be Recurring : show subscription products, indicated by ticking the Recurring checkbox on the product form. Only available with the Subscription app activated.
Can be Recurring : show subscription products, indicated by ticking the Recurring checkbox on the product form. Only available with the Subscription app activated.
- Can be Rented : show products that can be loaned to customers for a certain time.
Appears in the search because the Can be Rented checkbox was ticked on the
product form. Only available with the Rental app installed.
Can be Rented : show products that can be loaned to customers for a certain time.
Appears in the search because the Can be Rented checkbox was ticked on the
product form. Only available with the Rental app installed.
- Can be Subcontracted : display products that can be produced by a
third-party manufacturer. Available only with the Manufacturing app installed.
Can be Subcontracted : display products that can be produced by a
third-party manufacturer. Available only with the Manufacturing app installed.
- Can be Expensed : show items that can be expensed. Only available with the Expenses app installed.
Can be Expensed : show items that can be expensed. Only available with the Expenses app installed.
The Group By section allows users to add pre-made and custom groupings to the
search results.
- Product Type : group items by product type .
Product Type : group items by product type .
- Product Category : group items by product category. To configure these, go to Inventory app â£ Configuration â£ Products: Product Categories .
Product Category : group items by product category. To configure these, go to Inventory app â£ Configuration â£ Products: Product Categories .
- POS Product Category : group items by point of sale product categories .
POS Product Category : group items by point of sale product categories .
To save the current applied filters and groupbys, 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 stock 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 stock report
Search options


Maintenance

# Maintenance

Odoo Maintenance helps extend the effectiveness of equipment by keeping track of maintenance
requirements.
- Odoo Tutorials: Managing Equipment Maintenance
Odoo Tutorials: Managing Equipment Maintenance


Add new equipment

# Add new equipment

In Odoo, equipment refers to any item that is used in everyday operations, including the
manufacturing of products. This can mean a piece of machinery on a production line, a tool that is
used in different locations, or a computer in an office space. Equipment registered in Odoo can be
owned by the company that uses the Odoo database, or by a third party, such as a vendor in the case
of equipment rentals.
Using Odoo Maintenance , it is possible to track individual pieces of equipment, along with
information about their maintenance requirements. To add a new piece of equipment, navigate to the Maintenance module, select Equipments â£ Machines & Tools â£ Create ,
and configure the equipment as follows:
- Equipment Name : the product name of the piece of equipment
Equipment Name : the product name of the piece of equipment
- Equipment Category : the category that the equipment belongs to; for example,
computers, machinery, tools, etc.; new categories can be created by navigating to Configuration â£ Equipment Categories and clicking Create
Equipment Category : the category that the equipment belongs to; for example,
computers, machinery, tools, etc.; new categories can be created by navigating to Configuration â£ Equipment Categories and clicking Create
- Company : the company that owns the equipment; again, this can be the company that uses
the Odoo database, or a third-party company
Company : the company that owns the equipment; again, this can be the company that uses
the Odoo database, or a third-party company
- Used By : specify if the equipment is used by a specific employee, department, or both;
select Other to specify both an employee and a department
Used By : specify if the equipment is used by a specific employee, department, or both;
select Other to specify both an employee and a department
- Maintenance Team : the team responsible for servicing the equipment; new teams can be
created by navigating to Configuration â£ Maintenance Teams and
selecting Create ; the members of each team can also be assigned from this page
Maintenance Team : the team responsible for servicing the equipment; new teams can be
created by navigating to Configuration â£ Maintenance Teams and
selecting Create ; the members of each team can also be assigned from this page
- Technician : the person responsible for servicing the equipment; this can be used to
assign a specific individual in the event that no maintenance team is assigned or when a specific
member of the assigned team should always be responsible for the equipment; any person added to
Odoo as a user can be assigned as a technician
Technician : the person responsible for servicing the equipment; this can be used to
assign a specific individual in the event that no maintenance team is assigned or when a specific
member of the assigned team should always be responsible for the equipment; any person added to
Odoo as a user can be assigned as a technician
- Used in location : the location where the equipment is used; this is a simple text
field that can be used to specify locations that are not work centers, like an office, for
example
Used in location : the location where the equipment is used; this is a simple text
field that can be used to specify locations that are not work centers, like an office, for
example
- Work Center : if the equipment is used at a work center, specify it here; equipment can
also be assigned to a work center by navigating to Maintenance â£ Equipments â£
Work Centers , selecting a work center or creating a new one using the Create button,
and clicking the Equipment tab on the work center form
Work Center : if the equipment is used at a work center, specify it here; equipment can
also be assigned to a work center by navigating to Maintenance â£ Equipments â£
Work Centers , selecting a work center or creating a new one using the Create button,
and clicking the Equipment tab on the work center form

## Include additional product information

The Product Information tab at the bottom of the page can be used to provide further
details about the piece of equipment:
- Vendor : the vendor that the equipment was purchased from
Vendor : the vendor that the equipment was purchased from
- Vendor Reference : the reference code assigned to the vendor
Vendor Reference : the reference code assigned to the vendor
- Model : the specific model of the piece of equipment
Model : the specific model of the piece of equipment
- Serial Number : the unique serial number of the equipment
Serial Number : the unique serial number of the equipment
- Effective Date : the date that the equipment became available for use; this is used to
calculate the MTBF
Effective Date : the date that the equipment became available for use; this is used to
calculate the MTBF
- Cost : the amount the equipment was purchased for
Cost : the amount the equipment was purchased for
- Warranty Expiration Date : the date on which the equipmentâs warranty will expire
Warranty Expiration Date : the date on which the equipmentâs warranty will expire

## Add maintenance details

The Maintenance tab at the bottom of the page provides information about the failure
frequency of the piece of equipment:
- Expected Mean Time Between Failure : the average number of days the equipment is
expected to operate between failures. This number can be configured manually.
Expected Mean Time Between Failure : the average number of days the equipment is
expected to operate between failures. This number can be configured manually.
- Mean Time Between Failure : the average number of days the equipment operates between
failures. This number is calculated automatically based on previous failures, and cannot
be configured manually.
Mean Time Between Failure : the average number of days the equipment operates between
failures. This number is calculated automatically based on previous failures, and cannot
be configured manually.
- Estimated Next Failure : the estimated date the equipment may experience its next
failure.
This date is calculated automatically based on the data in the Mean Time Between
Failure and Latest Failure fields, and cannot be configured manually.
Estimated Next Failure : the estimated date the equipment may experience its next
failure.
This date is calculated automatically based on the data in the Mean Time Between
Failure and Latest Failure fields, and cannot be configured manually.
- Latest Failure : the most recent date on which the equipment failed. This date is based
on the creation date of the equipmentâs most recent maintenance request, and cannot be configured
manually.
Latest Failure : the most recent date on which the equipment failed. This date is based
on the creation date of the equipmentâs most recent maintenance request, and cannot be configured
manually.
- Mean Time To Repair : the average number of days needed to repair the equipment. This
number is calculated automatically based on the duration of previous maintenance requests, and
cannot be configured manually.
Mean Time To Repair : the average number of days needed to repair the equipment. This
number is calculated automatically based on the duration of previous maintenance requests, and
cannot be configured manually.
To see any open maintenance requests for a piece of equipment, go to the page for the equipment,
and click the Maintenance smart button at the top of the page.

Include additional product information
Add maintenance details


Maintenance calendar

# Maintenance calendar

Avoiding equipment breakdowns, and blocks in warehouse work centers, requires constant equipment
maintenance. Timely corrective maintenance for machines and tools that break unexpectedly, as well
as preventive maintenance to ensure that such issues are avoided, are key to keeping warehouse
operations running smoothly.
In Odoo Maintenance , users can access the Maintenance Calendar to create, schedule, and edit
both corrective and preventive maintenance requests, to stay on top of equipment and work centers.

## Create maintenance request

Maintenance requests can be created directly from the Maintenance Calendar . To access the
calendar, navigate to Maintenance app â£ Maintenance â£ Maintenance Calendar .
To create a new request, click anywhere on the calendar. Doing so opens a New Event pop-up window. In the Name: field, assign a title to the new request.
Clicking Create on the pop-up window saves the new request with no additional details.
If the requestâs creation should be cancelled, click Cancel .
To add more details and schedule the request for a specific date and time, click Edit .
Clicking Edit opens a blank maintenance request form, where various details about the
request can be filled out.

### Edit maintenance request

In the Request field, assign a title to the new request. In the Created By field, from the drop-down menu, select which user the request was created by. By default, this field
populates with the user actually creating the request.
In the For field, from the drop-down menu, select if this request is being created for a
piece of Equipment , or a Work Center .
If Work Center is selected in the For fieldâs drop-down menu, two
additional fields appear on the form: Work Center and Block Workcenter .
In the Work Center field, select which work center in the warehouse this maintenance
request applies to.
If the Block Workcenter optionâs checkbox is ticked, it is not possible to plan work
orders, or other maintenance requests, in this work center during the time that this request is
being performed.
If Equipment is selected in the For field, which it is by default, select
which machine or tool requires maintenance from the Equipment field. Once a specific
piece of equipment is selected, a greyed-out Category field appears, listing the Equipment Category to which the equipment belongs.
In the Worksheet Template field, if necessary, click the drop-down menu to select a
worksheet template. These templates are custom templates that can be filled out by the employee
performing the maintenance.
Under the Category field, the Request Date field displays the date requested
for the maintenance to happen.
The Maintenance Type field provides two selectable radio button options: Corrective and Preventive .
Corrective maintenance is for requests that arise for immediate needs, such as broken
equipment, while Preventive maintenance is for planned requests, to avoid breakdowns in
the future.
If this request is tied to a specific MO , select that MO from the Manufacturing
Order field.
From the drop-down menu for the Team field, select the desired maintenance team who will
perform the maintenance. In the Responsible field, select the technician responsible for
the request.
In the Scheduled Date field, click the date to open a calendar popover. From this
popover, select the planned date of the maintenance, and click Apply to save the date.
In the Duration field, enter the the amount of hours (in a 00:00 format) that the
maintenance is planned to take.
`00:00`
In the Priority field, choose a priority between one and three âââ (stars) .
This indicates the importance of the maintenance request.
If working in a multi-company environment, from the drop-down menu in the Company field,
select the company to which this maintenance request belongs.
At the bottom of the form, there are two tabs: Notes and Instructions .
In the Notes tab, type out any internal notes for the team or technician assigned to the
request, if necessary.
In the Instructions tab, if necessary, select one of the three radio button options to
provide maintenance instructions to the assigned team or technician. The available methods for
providing instructions are via PDF , Google Slide , or Text .

## Calendar elements

The Maintenance Calendar provides various views, search functions, and filters to help keep track
of the progress of ongoing and planned maintenance requests.
The following sections describe elements found across various views of the calendar.

### Filters and Favorites

To access the maintenance calendar, navigate to Maintenance app â£ Maintenance â£
Maintenance Calendar .
To add and remove filters for sorting data on the Maintenance Calendar , click the ð»
(triangle pointed down) icon, to the right of the search bar at the top of the page.
The left-hand side of the resulting drop-down menu lists all the different Filters users
can select. By default, To Do and Active are selected, so all open requests
are displayed.
To add a custom filter to the Maintenance Calendar , click Add Custom
Filter , under the Filters section of the drop-down menu. This opens an Add Custom Filter pop-up window.
From this pop-up window, configure the properties of the new rule for the filter. Once ready,
click Add .
The right-hand side of the drop-down menu lists the Favorites , or any searches that have
been saved as a favorite to be revisited at a later date.
To save a new Favorite search, select the desired Filters . Then, click Save current search . In the field directly below Save current search , assign
a name to the search.
Under the assigned name, there are two options, to save the current search either as the Default filter , or as a Shared filter.
Selecting Default filter sets this filter as the default when opening this calendar
view.
Selecting the Shared filter makes this filter available to other users.
Once ready, click Save . When clicked, the new Favorite filter appears in the Favorites column, and a â (gold star) icon appears with the filterâs name in
the search bar.

### Views

The Maintenance Calendar is available in six different views: Calendar (default), Kanban , List , Pivot , Graph , and Activity .

#### Calendar view

Calendar is the default view displayed when the Maintenance Calendar is
opened. There are a number of options in this view type for sorting and grouping information about
maintenance requests.
In the top-left corner of the page, there is a drop-down menu set to Week , by default.
Clicking that drop-down menu reveals the different periods of time, in which the calendar can be
viewed: Day , Month , and Year . There is also an option to Show weekends , selected by default. If unselected, weekends are not shown on the
calendar.
To the left of this menu, there is a â¬ï¸ (left arrow) icon and a â¡ï¸ (right
arrow) icon. Clicking these arrows moves the calendar backward or forward in time, respectively.
To the right of the drop-down menu set to Week , by default, is a Today button. Clicking this button resets the calendar to view todayâs date, no matter which point in time
is being viewed before clicking it.
At the far-right side of the page is a sidebar column, containing a minimized calendar set to
todayâs date, and a Technician list, displaying all the Technicians with requests
currently open. Click the (panel) icon at the top of this sidebar to open or close the
sidebar.
The Technician list only displays if technicians are assigned to open requests, and
individual technicians are only listed, if they are listed as Responsible on at least one maintenance request form.

#### Kanban view

With the Kanban view, all open maintenance requests are displayed in Kanban-style
columns, in their respective stages of the maintenance process.
Each maintenance request appears on its own task card, and each task card can be dragged-and-dropped
to a different stage of the Kanban pipeline.
Each column has a name (i.e. In Progress ). Hovering at the top of a column reveals a âï¸ (gear) icon. Clicking the âï¸ (gear) icon reveals a list of options for
that column: Fold , Edit , Automations , and Delete .
Clicking Fold folds the column to hide its contents.
Clicking Edit opens an Edit: (stage name) pop-up window, with the
corresponding stage name, wherein the columnâs details can be edited. The following are the column
options that can be edited:
- Name : the name of the stage in the Kanban pipeline.
Name : the name of the stage in the Kanban pipeline.
- Folded in Maintenance Pipe : when checked, this stageâs column is folded by default in
the Kanban view type.
Folded in Maintenance Pipe : when checked, this stageâs column is folded by default in
the Kanban view type.
- Request Confirmed : when this box is not ticked, and the maintenance request type is
set to Work Center , no leave is created for the respective work center when a maintenance
request is created. If the box is ticked, the work center is automatically blocked for the
listed duration, either at the specified date, or as soon as possible, if the work center is
unavailable.
Request Confirmed : when this box is not ticked, and the maintenance request type is
set to Work Center , no leave is created for the respective work center when a maintenance
request is created. If the box is ticked, the work center is automatically blocked for the
listed duration, either at the specified date, or as soon as possible, if the work center is
unavailable.
- Sequence : the order in the maintenance process, in which this stage appears.
Sequence : the order in the maintenance process, in which this stage appears.
- Request Done : if ticked, this box indicates this stage is the final step of the
maintenance process. Requests moved to this stage are closed.
Request Done : if ticked, this box indicates this stage is the final step of the
maintenance process. Requests moved to this stage are closed.
Once ready, click Save & Close . If no changes have been made, click Discard ,
or click the X icon to close the pop-up window.

#### List view

With the List view selected, all open maintenance requests are displayed in a list, with
information about each request listed in its respective row.
The columns of information displayed in this view type are the following:
- Subjects : the name assigned to the maintenance request.
Subjects : the name assigned to the maintenance request.
- Employee : the employee who originally created the maintenance request.
Employee : the employee who originally created the maintenance request.
- Technician : the technician responsible for the maintenance request.
Technician : the technician responsible for the maintenance request.
- Category : the category the equipment being repaired belongs to.
Category : the category the equipment being repaired belongs to.
- Stage : the stage of the maintenance process the request is currently in.
Stage : the stage of the maintenance process the request is currently in.
- Company : if in a multi-company environment, the company in the database the request is
assigned to.
Company : if in a multi-company environment, the company in the database the request is
assigned to.

#### Pivot view

With the Pivot view selected, maintenance requests are displayed in a pivot table, and
can be customized to show different data metrics.
To add more data to the pivot table, click the Measures button to reveal a drop-down
menu. By default, Count is selected. Additional options to add to the table are Additional Leaves to Plan Ahead , Duration , and Repeat Every .
To the right of the Measures button is the Insert in Spreadsheet button.
Clicking this button opens a pop-up window titled Select a spreadsheet to insert your
pivot. .
There are two tabs in this pop-up window: Spreadsheets and Dashboards . Click
into one of these tabs, and select a spreadsheet or dashboard in the database to add this pivot
table to. Once ready, click Confirm . If this table shouldnât be added to a spreadsheet
or dashboard, click Cancel , or click the X icon to close the pop-up window.
To the right of the Insert in Spreadsheet button are three buttons:
- Flip axis : the x and y axis of the pivot data table flip.
Flip axis : the x and y axis of the pivot data table flip.
- Expand all : all the available rows and columns of the pivot data table expand fully.
Expand all : all the available rows and columns of the pivot data table expand fully.
- Download xlsx : the pivot data table is downloaded as an .xlsx file.
Download xlsx : the pivot data table is downloaded as an .xlsx file.

#### Graph view

With the graph view selected, the following options appear between the search bar and visual
representation of the data. These graph-specific options are located to the right of the Measures and Insert in Spreadsheet buttons.
There are three different types of graphs available to users to view the data:
- Bar Chart : the data is displayed in a bar chart.
Bar Chart : the data is displayed in a bar chart.
- Line Chart : the data is displayed in a line chart.
Line Chart : the data is displayed in a line chart.
- Pie Chart : the data is displayed in a pie chart.
Pie Chart : the data is displayed in a pie chart.
When viewing the data as a Bar Chart graph, the data can be formatted in the following
ways:
- Stacked : the data is stacked on the graph.
Stacked : the data is stacked on the graph.
- Descending : the data is displayed in descending order.
Descending : the data is displayed in descending order.
- Ascending : the data is displayed in ascending order.
Ascending : the data is displayed in ascending order.
When viewing the data as a Line Chart graph, the data can be formatted in the following
ways:
- Stacked : the data is stacked on the graph.
Stacked : the data is stacked on the graph.
- Cumulative : the data is increasingly accumulated.
Cumulative : the data is increasingly accumulated.
- Descending : the data is displayed in descending order.
Descending : the data is displayed in descending order.
- Ascending : the data is displayed in ascending order.
Ascending : the data is displayed in ascending order.
When viewing the data as a Pie Chart graph, all relevant data is displayed by default,
and no additional formatting options are available.

#### Activity view

With the Activity view selected, all open maintenance requests are listed in their own
row, with the ability to schedule activities related to those requests.
Maintenance requests are listed in the Maintenance Request column as activities.
Clicking a request opens a Maintenance Request popover that indicates the status of the
request, and the responsible technician. To schedule an activity directly from the popover, click â Schedule an activity . This opens a Schedule Activity pop-up window.
From the pop-up window, choose the Activity Type , provide a Summary ,
schedule a Due Date , and choose the responsible user in the Assigned to field.
Type any additional notes for the new activity in the blank space under the greyed-out Log a noteâ¦ field. When clicked, this changes to Type â/â for commands .
Once ready, click Schedule to schedule the activity. Alternatively, click Schedule & Mark as Done to close the activity, click Done & Schedule Next to
close the activity and open a new one, or click Cancel to cancel the activity.
With the Activity view selected, each activity type available when scheduling an
activity is listed as its own column. These columns are Email , Call , Meeting , Maintenance Request , To-Do , Upload
Document , Request Signature , and Grant Approval .
To schedule an activity with that specific activity type, click into any blank box on the
corresponding row for the desired maintenance request, and click the â (plus) icon. This
opens an Odoo pop-up window, wherein the activity can be scheduled.
- Maintenance requests
- Add new equipment

Create maintenance request
Edit maintenance request
Calendar elements
Filters and Favorites
Views


Maintenance requests

# Maintenance requests

In order to keep equipment and work centers functioning properly, it is often necessary to perform
maintenance on them. This can include preventive maintenance, intended to prevent equipment from
breaking down, or corrective maintenance, which is used to fix equipment that is broken or otherwise
unusable.
In Odoo Maintenance , users can create maintenance requests to schedule and track the progress of
equipment and work center maintenance.

## Create maintenance request

To create a new maintenance request, navigate to Maintenance app â£ Maintenance â£
Maintenance Requests , and click New .
Begin filling out the form by entering a descriptive title in the Request field (e.g., Drill not working ).
`Drillnotworking`
The Created By field auto-populates with the user creating the request, but a different
user can be selected by clicking on the drop-down menu.
In the For drop-down menu, select Equipment if the maintenance request is
being created for a piece of equipment, or Work Center if it is being created for a work
center.
Depending on the option selected in the For field, the next field is titled either Equipment or Work Center . Using the drop-down menu for either field, select
a piece of equipment or a work center.
If the Custom Maintenance Worksheets setting is enabled in the Maintenance appâs settings, a Worksheet Template field appears below the Equipment or Work
Center field. If necessary, use this field to select a worksheet to be filled out by the employee
performing the maintenance.
The next field is titled Request Date , and is set by default to the date on which the
maintenance request is created. This date cannot be changed by the user.
In the Maintenance Type field, select the Corrective option if the request
is intended to fix an existing issue, or the Preventive option if the request is
intended to prevent issues from occurring in the future.
If the request is being created to address an issue that arose during a specific manufacturing order
(MO), select it in the Manufacturing Order field.
If an MO was selected in the Manufacturing Order field, a Work Order field
appears below it. If the issue arose during a specific work order, specify it in this field.
In the Team field, select the maintenance team that is responsible for managing the
request. If a specific team member is responsible, select them in the Responsible field.
The Scheduled Date field is used to specify the date on which maintenance should take
place, and the time it should begin. Choose a date by clicking on the field to open a calendar in a
pop-up window, and then select a day on the calendar. Enter an hour and minute in the two fields
below the calendar, and click Apply to save the date and time.
The Duration field is used to specify the time it takes to complete the maintenance
request. Use the text-entry field to enter the time in a 00:00 format.
`00:00`
If Work Center was selected in the For field, a Block Workcenter checkbox appears below the Duration field. Enable the checkbox to prevent work orders or
other maintenance from being scheduled at the specified work center while the maintenance request is
being processed.
The Priority field is used to communicate the importance (or urgency) of the maintenance
request. Assign the request a priority between zero and three âââ (stars) , by clicking
on the desired star number. Requests assigned a higher priority appear above those with a lower
priority, on the Kanban board used to track the progression of maintenance requests.
In the Notes tab at the bottom of the form, enter any relevant details about the
maintenance request (why the maintenance issue arose, when it occurred, etc.).
The Instructions tab is used to include instructions for how maintenance should be
performed. Select one of the three options, and then include the instructions as detailed below:
- PDF : click the Upload your file button to open the deviceâs file manager,
and then select a file to upload.
PDF : click the Upload your file button to open the deviceâs file manager,
and then select a file to upload.
- Google Slide : enter a Google Slide link in the text-entry field that
appears after the option is selected.
Google Slide : enter a Google Slide link in the text-entry field that
appears after the option is selected.
- Text : enter the instructions in the text-entry field that appears after the option is
selected.
Text : enter the instructions in the text-entry field that appears after the option is
selected.

## Process maintenance request

Once a maintenance request has been created, it appears in the New Request stage of the Maintenance Requests page, which can be accessed by navigating to Maintenance app
â£ Maintenance â£ Maintenance Requests .
Maintenance requests can be moved to different stages by dragging and dropping them. They can also
be moved by clicking on a request to open it in a new page, and then selecting the desired stage
from the stage indicator bar, located above the top-right corner of the requestâs form.
Successful maintenance requests should be moved to the Repaired stage, indicating that
the specified piece of equipment or work center is repaired.
Failed maintenance requests should be moved to the Scrap stage, indicating the specified
piece of equipment, or work center, could not be repaired, and must instead be scrapped.

Create maintenance request
Process maintenance request


Maintenance setup

# Maintenance setup

Odoo Maintenance helps companies schedule corrective and preventive maintenance on equipment used
in their warehouse. This helps companies avoid equipment breakdowns, blocks in warehouse work
centers, and emergency repair costs.

## Maintenance teams

When creating maintenance requests, a maintenance team can be assigned to the request as the team
responsible for handling the request.
To view existing maintenance teams, navigate to Maintenance app â£ Configuration
â£ Maintenance Teams .
From the resulting Teams page, a list of all existing teams (if any) is displayed, with
the Team Name , Team Members , and Company listed in the columns,
by default.
To add a new team, click New . This adds a blank line at the bottom of the list of teams.
In the blank field that appears below the Team Name column, assign a name to the new
maintenance team.
In the Team Members column, click the field to reveal a drop-down menu with existing
users in the database. Choose which users should be members of the new maintenance team.
Click Search Moreâ¦ to open a Search: Team Members pop-up window to search
for users not shown on the initial drop-down menu.
In the Company column, if in a multi-company environment, click the drop-down menu to
select the company in the database to which this new maintenance team belongs.
Once ready, click Save to save changes.
The team members assigned to maintenance teams are also referred to as Technicians , when
viewing the Maintenance Calendar .
Navigate to Maintenance app â£ Maintenance â£ Maintenance Calendar , and click
on an existing maintenance request. From the resulting popover, locate the Technician field. The name listed in the field is the team member, and is the user responsible for that
particular request.
At the far-right side of the page is a sidebar column, containing a minimized calendar set to
todayâs date, and a Technician list, displaying all the technicians (or team members)
with requests currently open.

## Equipment

In Odoo Maintenance , equipment refers to machines and tools used internally in warehouse work
centers. Equipment can include technology such as computers or tablets, power tools, machines used
for manufacturing, and more.

### Equipment categories

Each piece of equipment belongs to an equipment category . Before adding new equipment, make sure
that a fitting equipment category is created.
To create a new equipment category, navigate to Maintenance app â£ Configuration
â£ Equipment Categories , and click New . Doing so opens a blank equipment category
form.
On the blank form, assign a name in the Category Name field.
In the Responsible field, assign a user to be responsible for the equipment in this
category, if necessary. By default, the user who creates the category is selected as Responsible , by default.
If in a multi-company environment, click the drop-down menu in the Company field, and
select the company in the database to whom the equipment in this category belongs.
In the Email Alias field, assign an email alias to this category, if necessary.
In the Comments field, type any comments or notes for internal users to reference in
relation to this category, if necessary.
Once a new equipment category is created, all equipment belonging to that category, as well as
any past or currently open maintenance requests, are available from the equipment category form.
Navigate to Maintenance app â£ Configuration â£ Equipment Categories , and
select a category to view. Locate the Equipment and Maintenance smart
buttons at the top of the form.
Click the Equipment smart button to view all equipment belonging to this category.
Click the Maintenance smart button to view any past, or currently open, maintenance
requests.

### Machines & tools

To add new equipment, navigate to Maintenance app â£ Equipment â£ Machines &
Tools , and click New . This opens a blank equipment form.
In the Name field, assign a name for the new equipment. In the Equipment
Category field, click the drop-down menu and select which category this new equipment should belong
to.
If in a multi-company environment, click the drop-down menu in the Company field, and
select the company in the database to whom the new equipment belongs.
In the Used By field, select from one of three radio button options: Department , Employee , or Other .
If Department is selected, a Department field appears below the Used By field. Click the drop-down menu and select the department that uses this
equipment.
If Employee is selected, an Employee field appears below the Used
By field. Click the drop-down menu, and select the employee who uses this equipment.
If the Other option is selected, both the Department and Employee fields appear below the Used By field. Click the drop-down menus
for the respective fields, and choose which department and employee uses this equipment.
In the Maintenance Team field, select the team responsible for this equipment. In the Technician field, select the team member/user responsible for this equipment.
In the Used in location field, enter the location wherein this equipment will be used,
if not in an internal work center (e.g. in an office).
In the Work Center field, click the drop-down menu, and select which work center this
equipment will be used in.
In the blank space under the Description tab at the bottom of the form, add any relevant
information describing the equipment for users to reference.

#### Product Information tab

To add any relevant information while creating a new piece of equipment, from the equipment form,
click the Product Information tab.
In the Vendor field, add the vendor from which the equipment was purchased. In the Vendor Reference field, add the product reference number obtained from the vendor, if
applicable.
In the Model field, specify which model this equipment is, if applicable. If the
equipment is serialized, add a serial number in the Serial Number field.
In the Effective Date field, click the date to reveal a calendar popover, and select a
date. This date indicates when this equipment was first put in use, and will be used to compute the
Mean Time Between Failure (MTBF) in the equipmentâs Maintenance tab.
In the Cost field, specify how much the equipment cost to acquire, if applicable.
If the equipment is covered under a warranty, specify the Warranty Expiration Date by
selecting a date from the calendar popover in that field.

#### Maintenance tab

Various maintenance metrics are available for each piece of equipment, and are automatically
computed, based on corrective maintenance, and planned preventive maintenance.
To view the maintenance metrics for a specific piece of equipment, from the equipment form, click
the Maintenance tab.
Doing so reveals the following fields:
- Expected Mean Time Between Failure : the amount of time (in days) before the next
failure is expected. This is the only field not greyed-out, and the only field users can
edit.
Expected Mean Time Between Failure : the amount of time (in days) before the next
failure is expected. This is the only field not greyed-out, and the only field users can
edit.
- Mean Time Between Failure : the amount of time (in days) between reported failures.
This value is computed based on completed corrective maintenances.
Mean Time Between Failure : the amount of time (in days) between reported failures.
This value is computed based on completed corrective maintenances.
- Estimated Next Failure : the date on which the next failure is expected. This date is
computed as the Latest Failure Date + MTBF .
Estimated Next Failure : the date on which the next failure is expected. This date is
computed as the Latest Failure Date + MTBF .
- Latest Failure : The date of the latest failure. The value in this field updates once a
failure is reported for this equipment.
Latest Failure : The date of the latest failure. The value in this field updates once a
failure is reported for this equipment.
- Mean Time To Repair : the amount of time (in days) it takes to repair this equipment
upon failure. This value updates once a maintenance request is completed for this equipment.
Mean Time To Repair : the amount of time (in days) it takes to repair this equipment
upon failure. This value updates once a maintenance request is completed for this equipment.

## Work centers

To view the work centers where equipment is being used, and how the equipment is being used in them,
navigate to Maintenance app â£ Equipment â£ Work Centers , and click into a work
center.
From the resulting work center form, click the Equipment tab to view all machines and
tools being used in that specific work center.
Each piece of equipment is listed with certain relevant information: the Equipment Name ,
the responsible Technician , the Equipment Category it belongs to, and a few
important maintenance metrics: its MTBF , MTTR , and Est. Next Failure date.
To add new equipment to a work center directly from the work center form, click Add a
line under the Equipment tab. This opens an Add: Maintenance Equipment pop-up window.
From the pop-up window, select the equipment that should be added to the work center, and click Select .

Maintenance teams
Equipment
Equipment categories
Machines & tools
Work centers


Manufacturing

# Manufacturing

Odoo Manufacturing helps manufacturers schedule, plan, and process manufacturing orders. With
the work center control panel, put tablets on the shop floor to control work orders in real-time and
allow workers to trigger maintenance operations, feedback loops, quality issues, etc.
- Odoo Tutorials: MRP
- Odoo Tutorials: Barcode Scanner
Odoo Tutorials: Barcode Scanner
- IoT Boxes (MES)


Kits

# Kits

In Odoo, a kit is a type of bill of materials (BoM) that can be manufactured and sold. Kits are
sets of unassembled components sold to customers. They may be sold as standalone products, and are
also useful tools for managing more complex bills of materials (BoMs).
To use, manufacture, and sell kits, both the Manufacturing and Inventory apps need to be installed.

## Create the kit as a product

To use a kit as a sellable product, or as a component organization tool, the kit should first be
created as a product.
To create a kit product, go to Inventory app â£ Products â£ Products , and then
click New .
Then, assign a name to the new kit product. Next, set the kitâs product type depending on inventory
tracking needs and accounting requirements. To do this, under the General Information tab, set the Product Type to Goods and either check the box next Track Inventory if inventory tracking is required, or leave it unchecked if inventory
tracking for the kit is not necessary.
Learn more about tracked versus untracked products .
The kitâs components must also be configured as products via Inventory app â£
Products â£ Products . These components require no specific configuration.

### Untracked kit inventory setup details

Consider leaving tracking for the kitâs inventory untracked when the kit is used in other
manufacturing processes or when tracking inventory for the kit itself is not needed.
- Recommended for Continental Accounting : If costs are expensed immediately upon purchase, then
leaving the kitâs inventory as untracked is recommended.
Recommended for Continental Accounting : If costs are expensed immediately upon purchase, then
leaving the kitâs inventory as untracked is recommended.
- Replenishment via Components : Inventory count is managed at the component level, so reordering
rules must be set to individual components.
Replenishment via Components : Inventory count is managed at the component level, so reordering
rules must be set to individual components.
- Selling & Stock Constraints : Kits cannot be sold if any required component is out of stock.
Since availability depends on individual components, a sales order may appear valid, but delivery
can be delayed if components are unavailable.
Selling & Stock Constraints : Kits cannot be sold if any required component is out of stock.
Since availability depends on individual components, a sales order may appear valid, but delivery
can be delayed if components are unavailable.

### Tracked kit inventory setup details

Consider turning on tracking for the kitâs inventory when the kit is a tangible product or warehouse
and inventory tracking is essential.
- Recommended for Angle-Saxon Accounting : If the Cost of Goods Sold (COGS) needs to be recorded
in journals, then tracking the kitâs inventory is recommended.
Recommended for Angle-Saxon Accounting : If the Cost of Goods Sold (COGS) needs to be recorded
in journals, then tracking the kitâs inventory is recommended.
- Component Purchase Constraints : Only the kitâs minimum required components can be added to an eCommerce cart unless the option to continue
selling is disabled.
Component Purchase Constraints : Only the kitâs minimum required components can be added to an eCommerce cart unless the option to continue
selling is disabled.
- No Kit Serial Numbers : Serial number tracking does not track the kit, only its shipped
components.
No Kit Serial Numbers : Serial number tracking does not track the kit, only its shipped
components.
- Reordering Rule Recommendation : Reordering rules should be set at the component-level.
Reordering Rule Recommendation : Reordering rules should be set at the component-level.
- Stock Replenishment Recommendation : Stock replenishment should also be done at the
component-level.
Stock Replenishment Recommendation : Stock replenishment should also be done at the
component-level.

### Kit setup similarities

Regardless of which setup is used, there are some similarities between the two options.
- No Kit-Level Stock Adjustments : Stock adjustments cannot be handled at the kit-level.
No Kit-Level Stock Adjustments : Stock adjustments cannot be handled at the kit-level.
- Kit Value Does Not Change : The stockâs value is the same whether the kitâs is tracked.
Kit Value Does Not Change : The stockâs value is the same whether the kitâs is tracked.
- Kit Internal Transfers : An internal transfer for the kit breaks it into components.
Kit Internal Transfers : An internal transfer for the kit breaks it into components.

## Set up the kit BoM

After fully configuring the kit product and its components, a new BoM can be created for the kit product.
To do so, go to Manufacturing app â£ Products â£ Bills of Materials , and then
click New . Next to the Product field, click the drop-down menu to reveal a
list of products, and then select the previously configured kit product.
Then, for the BoM Type field, click the Kit option. Finally, under the Components tab, click Add a line , and add each desired component, and
specify their quantities under the Quantity column.
Once ready, click Save to save the newly created BoM .
If the kit is solely being used as a sellable product, then only components need to be added under
the Components tab, and configuring manufacturing operations is not necessary.
When a kit is sold as a product, it appears as a single line item on the quotation and sales
order. However, on delivery orders, each component of the kit is listed.

## Use kits to manage complex BoMs

Kits can also be used for complex BoMs . This method nests BoMs within
other BoMs, organizing complex products while simplifying manufacturing by defining each procurement
and production step separately.
Sublevel BoMs (subassemblies or semi-finished products) streamline these workflows, helping with
traceability efforts.

Create the kit as a product
Untracked kit inventory setup details
Tracked kit inventory setup details
Kit setup similarities
Set up the kit BoM
Use kits to manage complex BoMs


Managing BoMs for product variants

# Managing BoMs for product variants

Odoo allows one bill of materials (BoM) to be used for multiple variants of the same product. Having
a consolidated BoM for a product with variants saves time by preventing
the need to manage multiple BoMs .

## Activate product variants

To activate the product variants feature, navigate to Inventory app â£
Configuration â£ Settings , and scroll down to the Products section. Then, click the
checkbox to enable the Variants option. After that, click Save to apply the
setting.
For more information on configuring product variants, refer to the product variants documentation.

## Create custom product attributes

Once the product variants feature is activated, create and edit product attributes on the Attributes page.
The Attributes page is accessible either from Inventory app â£
Configuration â£ Settings by clicking the Attributes button, or by clicking Inventory app â£ Configuration â£ Attributes .
Once on the Attributes page, either click into an existing attribute, or click Create to create a new one. Clicking Create reveals a new, blank form for
customizing an attribute. For an existing attribute, click Edit on its form to make
changes.
Assign an Attribute Name , and choose a category from the Category fieldâs
drop-down menu. Then, select the desired options next to the Display Type and Variants Creation Mode fields. Once the desired options are selected, click Add a line under the Attribute Values tab to add a new value.
Included on the Value row is a Is custom value checkbox. If selected,
this value will be recognized as a custom value, which allows customers to type special
customization requests upon ordering a custom variant of a product.
Once all desired Values have been added, click Save to save the new
attribute.

## Add product variants on the product form

Created attributes can be applied on specific variants for particular products. To add product
variants to a product, navigate to the product form by going to Inventory app â£
Products â£ Products . To make changes to the product, click Edit . Then, click the Variants tab.
Under the Attribute header, click Add a line to add a new attribute, and
select one to add from the drop-down menu.
Then, under the Values header, click the drop-down menu to choose from the list of
existing values. Click on each desired value to add them, and repeat this process for any additional
attributes that should be added to the product.
Once finished, click Save to save changes.
BoM products with multiple variants that are manufactured in-house
should either have a 0,0 reordering rule set up, or have their replenishment routes set to Replenish on Order (MTO) .

## Apply BoM components to product variants

Next, create a new BoM . Or, edit an existing one, by going to Manufacturing app â£ Products â£ Bills of Materials . Then, click Create to open a new Bills of Materials form to configure from scratch.
Add a product to the BoM by clicking the drop-down menu in the Product field and selecting the desired product.
Then, add components by clicking Add a line under the Component section of
the Components tab, and choosing the desired components from the drop-down menu.
Choose the desired values in the Quantity and Product Unit of Measure columns. Then, choose the desired values in the Apply on Variants column.
The Apply on Variants option to assign components to specific product variants on the BoM is available once the Variants setting is activated
from the Inventory application. If the Apply on Variants field is
not immediately visible, activate it from the additional options menu (three-dots icon, to the
right of the header row).
Each component can be assigned to multiple variants. Components with no variants specified are used
in every variant of the product. The same principle applies when configuring operations and
by-products.
When defining variant BoMs by component assignment, the Product Variant field in the main section of the BoM should
be left blank. This field is only used when creating a BoM specifically for one product variant.
When all desired configurations have been made to the BoM , click Save at the top of the form to save changes.
For components that only apply for specific variants, choose which operations the components
should be consumed in. If the Consumed in Operation column is not immediately
visible, activate it from the additional options menu (three-dots icon, to the right of the
header row).

## Sell and manufacture variants of BoM products

To sell and manufacture variants of BoM products to order, navigate to Sales app â£ Create to create a new quotation.

### Sell variant of BoM product

Once on the blank Quotation form, click the drop-down next to the Customer field to add a customer.
Then, under the Order Lines tab, click Add a product , and select the
previously-created BoM product with variants from the drop-down menu.
Doing so reveals a Configure a product pop-up.
From the pop-up window, click the desired attribute options to configure the correct variant of the
product to manufacture. Then, click the green + or - icons next to the 1 to change the quantity to sell and manufacture, if desired.
`1`
Once all the specifications have been chosen, click Add . This will change the pop-up to
a second Configure pop-up, where available optional products will appear, if they have
been created previously.
Once ready, click Confirm to close the pop-up.
Then, click Save to save all changes, and click Confirm at the top of the Quotation form to create and confirm a new sales order (SO).

### Manufacture variant of BoM product

Once the SO is confirmed, a Manufacturing smart button appears at
the top of the SO form. Click the Manufacturing smart button to
open the Manufacturing Order form.
On this form, under the Components tab, the appropriate components for the chosen
variant are listed. And, depending on the variant, different components will be listed. To see any
mandatory or optional Operation steps, click the Work Orders tab.
To enter the tablet view work order screen, click the tablet icon to the right of the
row for the desired operation to be completed.
From the tablet view, click Mark as Done as the operation progresses to complete the
operation steps.
Alternatively, click the Mark as Done button at the top of the manufacturing order form
to complete the order.
Then, navigate back to the SO via the breadcrumbs at the top of the page.
Now that the product has been manufactured, click the Delivery smart button to deliver
the product to the customer. From the Delivery Order form, click Validate ,
then click Apply to deliver the product.
To finish the sale, click back to the SO via the breadcrumbs at
the top of the page again. Then, click Create Invoice followed by Create
Invoice again to invoice the customer for the order.


Multilevel BoMs

# Multilevel BoMs

Use a multilevel bill of materials (BoM) when a manufactured product is part of another assembly.
This method nests BoMs within other BoMs , organizing complex products while simplifying
manufacturing by defining each procurement and production step separately.
Sublevel BoMs (subassemblies or semifinished products) streamline these production workflows, and
are beneficial when the subassembly is used across multiple finished products (meaning theyâd appear
on multiple top-level BoMs ). The more complicated a product is to build or procure, the more value
a multilevel BoM can provide. Because of this, component and subassembly replenishment planning is
vital to ensuring multilevel BoMs run smoothly.

## Why replenishment planning is important

Replenishment is critical for multilevel
BoMs to prevent bottlenecks, manage lead times, and optimize inventory. Without it, missing
components can halt production, delay orders, and increase costs. A well-planned replenishment
strategy ensures just-in-time availability , automates procurement , balances stock levels, and
keeps supply chains efficient. This minimizes delays, reduces manual effort, and ensures smooth
manufacturing.
Manufacturing orders (MO)s that come from a BoM require all components to be available before the MO can be completed. The Component Status for that MO provides this information.
Learn how to check an MOâs component status .

## Create a multilevel BoM

To set up a multilevel BoM , the top-level product and sublevel productsâs BoMs must be created.
If starting from scratch, build the BoMs from the bottom up. Start with the lowest-level product BoMs , then include those products as components in higher-level BoMs .
A printed circuit board (PCB) for a custom keyboard is composed of hundreds of electronic
components, such as transistors, resistors, and capacitors. Instead of listing all of those
components out, a sublevel product and BoM for a PCB is created, to track the quantities of
transistors and other small components, without needing to overcrowd the top-level BoM for the
custom keyboard by listing them. Instead, the custom keyboardâs BoM consists of an assortment
of components and sublevel BoMs alike, like key caps, switches, the PCB, and keyboard plate.
`PCB`
Learn how to build a simple bill of materials . For the
PCB, this would include the transistors, resistors, and other components.
After the sublevel products (like the PCB, key caps, and keyboard plate) are fully configured,
create the top-level product by navigating to Manufacturing app â£ Products â£
Products , and then selecting New . From here, configure the productâs specifications as
needed.
Once the top-level product (the keyboard) is configured, click the Bill of Materials smart button on the product form, and then select New to make a BoM for the top-level
product. Add the sublevel products to this BoM , along with any other necessary components.

## Manage production planning

The two options below are two of the best ways to manage manufacturing order automation for products
with multilevel BoMs .
Complex BoMs are specifically used to manage products that require manufactured components. If
a BoM is being created to organize components or bundle sellable products, use a kit instead.
To automatically trigger manufacturing orders for sublevel products after confirming a manufacturing
order for the main product, there are two options:
- Option 1 (recommended): Create Reordering Rules for the sublevel products and set both the
minimum and maximum needed stock quantities to 0 .
Option 1 (recommended): Create Reordering Rules for the sublevel products and set both the
minimum and maximum needed stock quantities to 0 .
`0`
- Option 2: Activate the Replenish on Order (MTO) and Manufacture routes
under the Inventory tab of the sublevel productâs product form.
Option 2: Activate the Replenish on Order (MTO) and Manufacture routes
under the Inventory tab of the sublevel productâs product form.
- Reordering rules
- Replenish on order (MTO)
Replenish on order (MTO)
Option 1 is more flexible than Option 2 and is recommended. Reordering rules do not directly link
demand to replenishment, allowing stock to be unreserved and reassigned as needed. The Replenish on
Order (MTO) route, however, uniquely links sublevel and top-level products, reserving quantities for
the confirmed top-level manufacturing order.
In both methods, sublevel products must be fully manufactured before starting the top-level product.

## Multilevel BoM setup flow

The following section details how to set up multilevel BoMs, set the initial inventory, establish a 0/0/1 reordering rule (the recommended production
plan), configure lead times, and set up production options.
Creating a 0/0/1 reordering rule for the sublevel products (minimum stock set at zero, maximum stock
set at zero, reorder one automatically) regardless of whether they are a component or subassembly is
the recommended approach for managing a multilevel BoM . This setup uses the Inventory , Manufacturing , and Purchase apps.
This is only one example of how to set up a multilevel BoM in Odoo. Consider any unique
circumstances that need to be addressed during the configuration, and make sure they are included
in the setup. If any specific help is needed during setup, consider purchasing a success pack .

### Create the BoMs

Follow the steps in the Create a multilevel BoM section to build the BoMs .
Make sure to build the multilevel BoM from the bottom up. Start by creating the lowest-level
component products in Odoo, then the subassembly products that those are used for, then the BoM for that subassembly, and repeat until every level of the multilevel BoM is created.

### Set the initial inventory

If thereâs no initial inventory to configure, then skip this section and begin configuring the
procurement method for the multilevel BoM .
Update the quantity on hand for each of the products configured in the prior step (both components,
subassemblies, and the final product). To do this, open the Inventory app, and then find the
products with filters, the search bar, or scrolling, and then click on them to open their product
form. From here, click the On Hand smart button, select the variant if that was configured, and then enter the
quantity on hand.
Inventory adjustments

### Configure the procurement method

Now it is time to pick the procurement method this multilevel BoM uses. The two options below are
preferred, but unique circumstances may lead to another procurement method making more sense.
- Option 1 (recommended): Create Reordering Rules for the sublevel products and set both the
minimum and maximum needed stock quantities to 0 .
Option 1 (recommended): Create Reordering Rules for the sublevel products and set both the
minimum and maximum needed stock quantities to 0 .
`0`
- Option 2: Activate the Replenish on Order (MTO) and Manufacture routes
under the Inventory tab of the sublevel productâs product form.
Option 2: Activate the Replenish on Order (MTO) and Manufacture routes
under the Inventory tab of the sublevel productâs product form.
- Reordering rules
- Replenish on order (MTO)
Replenish on order (MTO)
Reordering rules are recommended because they do not tie the manufactured product to a specific
sales order, allowing that manufactured product to fulfill a different sales order if the original
gets cancelled.
Making the product to order is not recommended because the manufactured product cannot be used to
fulfill another sales order. However, this could be helpful if strict tracking is necessary for the
business.

### Enter vendor and manufacturing lead times

Vendor and manufacturing lead times are used by Odoo to coordinate production and procurement
actions to fulfill orders on time. Set vendor lead times for components that are purchased. These
can appear at any level in a multilevel BoM except the final product. Set manufacturing lead times
for products that are built using a BoM . These can appear at any level in a multilevel BoM except the lowest level (when individual components are procured).

### Build out operations to handle the production flow

First, determine the current manufacturing flow for the business, then match the corresponding Odoo
setup. The list below are only some of the configuration pieces that could be involved in this step.
- Manufacturing Steps : Consider how many manufacturing steps are taken (one-, two-, or
three-step manufacturing).
Manufacturing Steps : Consider how many manufacturing steps are taken (one-, two-, or
three-step manufacturing).
- Work Centers : Decide if any work centers need to be configured.
Work Centers : Decide if any work centers need to be configured.
- Master Production Schedule : If manually planned manufacturing orders are needed (e.g., to
handle seasonal demand), make a master production schedule (MPS).
Master Production Schedule : If manually planned manufacturing orders are needed (e.g., to
handle seasonal demand), make a master production schedule (MPS).
Manufacturing operations is an art and a science, so configuring an established flow into Odoo is
the recommended approach for this step. Read more about manufacturing in Odoo

### Configuration summary

At the end of this process, the multilevel BoM is configured, and the top-level product has its
inventory counts, procurement method set, procurement lead times, and manufacturing operations
configured. From here, sales orders can include the top-level product, automatic procurement through
vendors or manufacturing can begin, the top-level product can be included in an eCommerce store.
- Create quotations
- Catalog


Work centers

# Work centers

Work centers are where Manufacturing work orders are processed, and can be used to track
costs, make schedules, plan capacity, organize equipment, and track efficiency. Specifying a work
center is required when a work order is defined in the Operations tab of a bill of materials (BoM)
for a product.
Work centers only appear if the Work Orders setting is enabled. To do so, navigate to Manufacturing app â£ Configuration â£ Settings , then tick the Work
Orders checkbox. Work orders can be managed in the Manufacturing app by selecting Operations â£ Work Orders .

## Work center configuration

### Create a new work center

In the Manufacturing app, select Configuration â£ Work Centers and click the New button to open a new work center form.
- Work Center Name : the label for the work center used to select it on a work order or
on the reporting dashboards
Work Center Name : the label for the work center used to select it on a work order or
on the reporting dashboards
- Tag : reusable labels that can be used to sort work centers in list view
Tag : reusable labels that can be used to sort work centers in list view
- Alternative Workcenters : where a work order should be carried out if this work center
is not available
Alternative Workcenters : where a work order should be carried out if this work center
is not available
- Code : reference id for the work center that is displayed in the list view
Code : reference id for the work center that is displayed in the list view
- Working Hours : the hours that work center can be used during the week
Working Hours : the hours that work center can be used during the week

#### Working hours

Working hours define when a work center should operate, based on a one- or two-week schedule.
These hours also form the basis for calculating overall equipment efficiency (OEE).
By default, Odoo uses the Standard 40 hours/week working hours, which expects work centers to
operate between 8:00 AM and 5:00 PM on Monday through Friday.
`Standard40hours/week`
To change the working hours, hover over the current Working Hours value and click the ( Internal link ) icon to open the working hours form.
To create a new set of working hours, click the New button and give it a name. From
here, edit any Work from or Work to value to adjust the time range. Remove a
line by clicking click the (trash) icon. To create a new time range,
click Add a line at the bottom of the list.
- Overall equipment effectiveness
Overall equipment effectiveness
- Work center time off

### Set productivity standards and allowed employees

The General Information tab on the work center form allows for productivity goals to be
assigned to a work center. These are used as the basis for calculating how much of the potential
time the work center is being used and its operating costs.
- Time Efficiency : a multiplier for how using this work center affects the normal speed
of execution of a work order Example If a work center has older equipment and work orders take twice as long to produce, the Time Efficiency would be 50.00% .
Time Efficiency : a multiplier for how using this work center affects the normal speed
of execution of a work order
If a work center has older equipment and work orders take twice as long to produce, the Time Efficiency would be 50.00% .
`TimeEfficiency`
`50.00%`
- Capacity : the number of products that can be processed at the work center
simultaneously
Capacity : the number of products that can be processed at the work center
simultaneously
- OEE Target : the target for efficiency at the work center Example If a work center is available for 8 hours per day but is only expected to be used for 7 hours per day , the OEE would be 87.50% . \(7/8*100=87.5\) See also Overall equipment effectiveness
OEE Target : the target for efficiency at the work center
If a work center is available for 8 hours per day but is only expected to be used for 7 hours per day , the OEE would be 87.50% . \(7/8*100=87.5\)
`8hoursperday`
`7hoursperday`
`87.50%`
Overall equipment effectiveness
- Setup Time : the time required before work can commence on a work order
Setup Time : the time required before work can commence on a work order
- Cleanup Time : breakdown or cleanup time required after a work order is finished
Cleanup Time : breakdown or cleanup time required after a work order is finished
- Cost per hour : the operating expense of that workstation. The per employee value is for estimating the average cost per employee. See also Manufacturing order costs
Cost per hour : the operating expense of that workstation. The per employee value is for estimating the average cost per employee.
Manufacturing order costs
- Allowed Employees : the employees who can perform work at the work center. If blank,
all employees are allowed. Example If equipment at a work center requires a certification to operate, Allowed
Employees could list only those employees who have the certification.
Allowed Employees : the employees who can perform work at the work center. If blank,
all employees are allowed.
If equipment at a work center requires a certification to operate, Allowed
Employees could list only those employees who have the certification.

### Set production capacities

The Capacity setting on a work center creates a default value for how many units can be
produced at one time in a work center. To specify that a work center can produce different
quantities of different products, select the Specific Capacities tab.
To specify production capacities in different measurements from a count of units, enable the Units of Measure feature in the Inventory app.

### Integrate IoT devices

The IoT Triggers tab enables the integration of IoT devices
with a work center:
- Device : specifies the IoT device to be triggered
Device : specifies the IoT device to be triggered
- Key : the security key for the device
Key : the security key for the device
- Action : the IoT device action triggered
Action : the IoT device action triggered

## Assigning equipment to work centers

The Maintenance app makes it possible to add specific equipment to a work center and
individually track its costs and productivity. It also adds the Equipment and Maintenance tabs to the work center form, used to list equipment and schedule
maintenance activities.

### Configure equipment

Using the Equipment tab, it is possible for specific pieces of equipment to be assigned
to a work center. The following information is displayed for each piece of equipment added:
- Equipment Name : the name of the piece of equipment
Equipment Name : the name of the piece of equipment
- Technician : the technician responsible for servicing the equipment
Technician : the technician responsible for servicing the equipment
- Equipment Category : the category the equipment belongs to
Equipment Category : the category the equipment belongs to
- MTBF : mean time between failures; the average time that the piece of equipment will
operate before failing
MTBF : mean time between failures; the average time that the piece of equipment will
operate before failing
- MTTR : mean time to recovery; the average time it takes for the equipment to become
fully operational again
MTTR : mean time to recovery; the average time it takes for the equipment to become
fully operational again
- Est. Next Failure : an estimate of when the next equipment failure will occur
Est. Next Failure : an estimate of when the next equipment failure will occur
MTBF , MTTR , and Est. Next Failure are all calculated
automatically based on past failure data, if any exists.

## Work center planning

The currently scheduled work orders can be viewed by accessing Manufacturing app â£
Planning â£ Planning by Workcenter .
Different views show how many individual work orders are scheduled, how many minutes of each hour
the work center is in production, and the dates and times that are currently scheduled for work
orders. Times and planned work centers can be changed by clicking to access the individual work
order.

## Work center performance

Performance for an individual work center can be viewed by selecting Configuration
â£ Work Centers , and clicking on a work center. Metrics are displayed in smart buttons at the top
of the form.
- OEE : overall equipment effectiveness, the percentage of time that the work center has
been productive out of its available work hours. See also Overall equipment effectiveness
OEE : overall equipment effectiveness, the percentage of time that the work center has
been productive out of its available work hours.
- Overall equipment effectiveness
Overall equipment effectiveness
- Lost : the amount of time lost due to work stoppages
Lost : the amount of time lost due to work stoppages
- Load : the amount of time it will take to complete the current workload
Load : the amount of time it will take to complete the current workload
- Performance : the real duration of work time, shown as a percentage of the expected
duration
Performance : the real duration of work time, shown as a percentage of the expected
duration

## Use case: measuring performance by shift using work centers

Work centers support defined working hours, enabling the tracking of production efficiency by shift.
To configure shift-based tracking, create working hours for each of the shifts, then duplicate
versions of each work center for each of the shifts. With this setup, comparing shift productivity
can be done with any of the available reporting tools.

### Working hours for multiple shifts

To create working hours for multiple shifts, open a work center form and in the Working
Hours field click the ( Internal link ), and then click the New button to create a new set of hours for the second shift.
A manufacturer has two shifts: a day shift from 5 AM to 1 PM and a night shift from 1 PM to 9 PM.
Starting from any existing work center, edit the existing working hours to match the day shift.
Once the day shift is saved, click the (cog) icon and select Duplicate . Rename this new schedule Night Shift and change each Work
from to 1 PM and Work from to 9 PM.
`NightShift`

### Work centers for multiple shifts

To create the duplicate work centers, return to the work center view by navigating to Configuration â£ Work Centers and duplicating each of the work centers that are
used by both shifts, either on the individual work center forms, or directly from the list view.
To duplicate work centers directly from the list view, click the (checkbox) that appears above the list items to select all. Then, click the Actions button at the top of the list and select Duplicate .
A manufacturer has two work centers, Assembly Line 1 and Assembly Line 2 , and two working
hours, Day Shift and Night Shift .
`AssemblyLine1`
`AssemblyLine2`
`DayShift`
`NightShift`
To create versions of Assembly Line 1 and Assembly Line 2 for each shift, duplicate each of
the work centers. Select the first work center and add the shift name in that work centerâs name
and assign it the appropriate working hours. Optionally, configure each work center to use its
opposite shift counterpart as an alternate work center to make sure that manufacturing orders get
assigned to both. Tags can also help make a visual distinction between each shift.
`AssemblyLine1`
`AssemblyLine2`
Use the (left arrow) and (right arrow) buttons in the
top left corner to move on to the next form in the list without returning to the list view.

### Reports comparing different shifts

With multiple work centers created to represent shifts, reports that sort by work center will now
compare shifts. This can be used to compare the number of work orders that are being assigned each
shift, the OEE, or actual time that each shift is taking to produce a product.
A report has been created to compare the time efficiency of two shifts producing the same product
in the same work center.
To create this report, go to Reporting â£ Work Orders and click to remove the Ready or Waiting or Pending or In Progress filter by
clicking the Remove icon on its right side. Next, click the Measures button and select Duration Deviation (%)
In this case, the day shift has on average taken more than the expected time to produce products
(-6.50%) while the night shift took less than the expected time (15.00%).


Work order dependencies

# Work order dependencies

When manufacturing certain products, specific operations may need to be completed before others can
begin. To ensure operations are carried out in the correct order, the Manufacturing app features
a work order dependencies setting. Enabling this setting blocks the bill of materials (BoM)
operations when other operations should occur first.

## Configuration

The work order dependencies setting is not enabled by default. To enable it, begin by navigating
to Manufacturing app â£ Configuration â£ Settings . Then, enable the Work Orders setting if it is not already active.
After enabling the Work Orders setting, the Work Order Dependencies setting
appears below it. Enable Work Order Dependencies , then click Save to confirm
the changes.

## Add dependencies to BoM

Work order dependencies are configured on a productâs BoM . To do so, navigate to Manufacturing app â£ Products â£ Bills of Materials , then select a BoM , or
create a new one by clicking New .
On the BoM , open the Miscellaneous tab, then select the Operation Dependencies checkbox. The Blocked By option becomes available under the (settings) menu of the Operations tab.
Open the Operations tab. Click the (settings) icon, then
enable the Blocked By checkbox. The Blocked By field appears for each
operation in the tab.
In the line of the operation that should be blocked by another operation, click the Blocked By field. The Open: Operations pop-up window opens. In the Blocked
By field, select the blocking operation that must be completed before the operation that is
blocked.
Finally, save the BoM by clicking (Save manually) .

## Plan work orders using dependencies

After work order dependencies are configured for a BoM , the Manufacturing app can plan work
order schedules based on those dependencies. To plan the work orders for a manufacturing order,
navigate to Manufacturing app â£ Operations â£ Manufacturing Orders .
Next, select a manufacturing order for a product with work order dependencies set on its BoM , or
create a new manufacturing order by clicking New . If a new manufacturing order is
created, select a BoM configured with work order dependencies from the Bill of
Material drop-down field, then click Confirm .
After confirming the manufacturing order, open the Work Orders tab to view the work
orders required to complete it. Any work orders that are not blocked by a different work order
display a Ready tag in the Status column.
Work orders that are blocked by other work orders display a Waiting for another WO tag
instead. After the blocking work orders are completed, the tag updates to Ready .
To schedule the manufacturing orderâs work orders, click the Plan button at the top of
the page. After doing so, the Start field for each work order on the Work Orders tab
populates with a scheduled start date and time. A blocked work order is scheduled at the end of the
time period specified in the Expected Duration field of the work order that precedes it.
A manufacturing order is created for Product A. The manufacturing order has two operations: Cut
and Assemble. Each operation has an expected duration of 60 minutes, and the Assemble operation
is blocked by the Cut operation.
The Plan button for the manufacturing order is clicked at 1:30 pm, and the Cut
operation is scheduled to begin immediately. Since the Cut operation has an expected duration of
60 minutes, the Assemble operation is scheduled to begin at 2:30 pm.

### Planning views

Two work order planning views are available to display a visual representation of how work orders
are planned:
- Manufacturing app â£ Planning â£ Planning by Production
Manufacturing app â£ Planning â£ Planning by Production
- Manufacturing app â£ Planning â£ Planning by Workcenter
Manufacturing app â£ Planning â£ Planning by Workcenter
Both open a Work Orders Planning page. This page shows a timeline of all the work orders scheduled
for each operation.
Planning by Production is best used to view work orders grouped by manufacturing order.
This view is ideal for providing estimated delivery times or determining if an order will be
completed on schedule.
Planning by Workcenter is best used to view work orders grouped by the work center at
which they take place. This view can help identify overloaded machines or bottlenecks in production.
In both views, if one work order is blocked by the completion of another, the work order that is
blocked is shown as scheduled to start after the work order that blocks it. In addition, a grey
arrow connects the two work orders, leading from the blocking operation to the blocked operation.

#### Resolving inconsistencies

The arrows on the Work Orders Planning page can also point out inconsistencies in the
manufacturing order and how to correct them. When the arrow changes color, an inconsistency has been
introduced.
A workshop is manufacturing a table in three work orders:
- Assemble
- Apply finish
If the third work order is moved before the second work order, the third work order and the arrow
pointing to it turn red to indicate that the planned schedule violates the defined work order
dependency.
Inconsistencies can be resolved in three ways:
- Editing the work order schedule
Editing the work order schedule
- Using icons on the line
Using icons on the line
- In the manufacturing order
In the manufacturing order
To resolve the scheduling conflict and keep the dependency, select the red work order. Click the Edit button, and the Open window appears. Click the red (exclamation triangle) icon next to the Start
Date , and the Scheduling Information pop-up window appears.
Click the Replan button, then click Save & Close to save the changes to the
work order. The work order is rescheduled after the previous work order in a way that maintains the
work order dependency.
When hovering over the connecting line, three icons appear. The left and right arrows can be used to
reschedule work orders to help maintain the correct work order dependencies.
- Left arrow : The work order is scheduled to be performed earlier than its linked step.
Left arrow : The work order is scheduled to be performed earlier than its linked step.
- Cancel button : When clicking this button, Odoo assumes the dependencies no longer apply due to
an exception, and the link between the steps is broken. To remove the dependency, hover over the
connecting line. Click the X (cancel) button that appears, and the arrow between the two work
orders disappears.
Cancel button : When clicking this button, Odoo assumes the dependencies no longer apply due to
an exception, and the link between the steps is broken. To remove the dependency, hover over the
connecting line. Click the X (cancel) button that appears, and the arrow between the two work
orders disappears.
- Right arrow : The work order is scheduled to be performed later than its linked step.
Right arrow : The work order is scheduled to be performed later than its linked step.
Problems with scheduled work orders are visible in the Work Orders tab of the manufacturing order.
Problems are indicated by the red (exclamation triangle) icon on the work order line.
Click the red (exclamation triangle) icon, then click Replan in the Scheduling Information pop-up window. The work order is rescheduled to
maintain its dependencies.

Configuration
Add dependencies to BoM
Plan work orders using dependencies
Planning views