> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tylecloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create and Manage Product Categories in Odoo Inventory

> Learn how to create and manage hierarchical product categories in Odoo Inventory using the Import Template or the UI configuration menu.

Product categories in Odoo Inventory let you organize your products into a structured, hierarchical system that drives costing, accounting, and logistics behavior. Categories follow a parent–child tree structure, meaning each category can belong to a parent and have multiple children beneath it. There are two methods for creating and managing categories: the **Product Category Import Template**, which is best for loading large numbers of categories at once, and the **Odoo UI**, which offers a visual, step-by-step experience suited for small adjustments.

## Category Structure

Categories are organized in a tree-like hierarchy with unlimited nesting levels. A top-level (Level 1) category has no parent, while each child category references the category directly above it. This structure keeps your product catalog clean and makes it easy to apply shared settings — such as removal strategies or accounting properties — at a category level that cascades to its children.

Here is an example of a three-level hierarchy:

```
Products
├── Hardware
│   ├── Monitors
│   ├── Computers
│   └── Accessories
├── Services
│   ├── Consultancy
│   └── Maintenance
└── Consumables
    ├── Office Supplies
    └── Cleaning Products
```

Odoo represents the full path to any category using the `→` separator. For example, the **Monitors** category is displayed as:

```
Products → Hardware → Monitors
```

This full path is what you will see throughout Odoo's UI when selecting or filtering by category.

***

## Setup Methods

<Tabs>
  <Tab title="Import Template">
    The Import Template method is recommended when you are performing an initial implementation or loading a large number of categories at once. It is faster and less error-prone than creating categories one by one through the UI.

    ### Template Worksheets

    The Product Category Import Template contains four worksheets — one for each hierarchy level. Each sheet must be completed before importing.

    | Sheet Name       | Purpose                        |
    | ---------------- | ------------------------------ |
    | Category Level 1 | Top-level parent categories    |
    | Category Level 2 | Children of Level 1 categories |
    | Category Level 3 | Children of Level 2 categories |
    | Category Level 4 | Children of Level 3 categories |

    ### Columns

    Each worksheet uses the following columns:

    * **Name** – The category name as it will appear in Odoo.
    * **Parent Category** – The category directly above this one in the hierarchy. Not used on Level 1 sheets.
    * **Force Removal Strategy** – Optional. Defines how stock is removed from this category (e.g. FIFO, LIFO, FEFO).

    ### Level 1 Example

    Level 1 categories have no parent, so only the **Name** and optional **Force Removal Strategy** columns are needed.

    | Name     | Force Removal Strategy    |
    | -------- | ------------------------- |
    | Products | First In First Out (FIFO) |

    ### Level 2 Example

    Level 2 categories reference their Level 1 parent by name in the **Parent Category** column.

    | Name        | Parent Category | Force Removal Strategy    |
    | ----------- | --------------- | ------------------------- |
    | Hardware    | Products        | First In First Out (FIFO) |
    | Services    | Products        | First In First Out (FIFO) |
    | Consumables | Products        | First In First Out (FIFO) |

    ### Level 3 Example

    Level 3 categories reference their parent using the **full path** in `Level1 / Level2` format.

    | Name              | Parent Category        | Force Removal Strategy    |
    | ----------------- | ---------------------- | ------------------------- |
    | Monitors          | Products / Hardware    | First In First Out (FIFO) |
    | Computers         | Products / Hardware    | First In First Out (FIFO) |
    | Accessories       | Products / Hardware    | First In First Out (FIFO) |
    | Consultancy       | Products / Services    | First In First Out (FIFO) |
    | Maintenance       | Products / Services    | First In First Out (FIFO) |
    | Office Supplies   | Products / Consumables | First In First Out (FIFO) |
    | Cleaning Products | Products / Consumables | First In First Out (FIFO) |

    <Note>
      For Level 3 and Level 4 categories, the **Parent Category** column must use the full path format: `Level1 / Level2` (e.g. `Products / Hardware`). Using only the immediate parent name will cause an import error if that name is not unique across the template.
    </Note>

    <Tip>
      Prepare and review all four level sheets before importing any of them. Start from Level 1 and work downward — Odoo must be able to resolve each parent reference before a child category can be created.
    </Tip>
  </Tab>

  <Tab title="Odoo UI">
    The Odoo UI method is ideal for small adjustments, one-off additions, or when you want to visually browse and verify your existing category hierarchy. Changes take effect immediately after saving.

    ### Steps to Create a Category

    <Steps>
      <Step title="Navigate to Product Categories">
        In Odoo, go to **Inventory → Configuration → Product Categories**.
      </Step>

      <Step title="Click Create">
        Click the **Create** button in the top-left corner of the list view to open a new category form.
      </Step>

      <Step title="Enter the Category Name">
        Type a name for your category in the **Category Name** field. Choose a clear, descriptive name that reflects the products it will contain.
      </Step>

      <Step title="Select a Parent Category">
        In the **Parent Category** field, search for and select the category that sits directly above this one. Leave this field blank to create a top-level (Level 1) category.
      </Step>

      <Step title="Save the Category">
        Click **Save** to confirm. The new category will now appear in the category tree and be available for product assignment.
      </Step>
    </Steps>

    ### Category Form Fields

    <ParamField path="Category Name" type="string" required>
      The display name for the category. This appears throughout Odoo wherever categories are listed or selected.
    </ParamField>

    <ParamField path="Parent Category" type="relation">
      The category directly above this one in the hierarchy. Leaving this blank makes the category a top-level parent. Selecting a parent automatically places this category one level beneath it.
    </ParamField>

    <ParamField path="Routes / Logistics Options" type="selection">
      Advanced setting. Assign replenishment routes such as **MTO (Make to Order)**, **Buy**, or **Manufacture** at the category level. These routes are inherited by products within the category unless overridden at the product level.
    </ParamField>

    <ParamField path="Account Properties" type="relation">
      Advanced setting. Map the category to specific accounting journals and accounts for stock valuation. Used in conjunction with your company's chart of accounts.
    </ParamField>

    ### Category Tree View

    After creating categories, the list view displays the full path for each entry, making it easy to verify your hierarchy at a glance.

    | Product Category                  |
    | --------------------------------- |
    | Products                          |
    | Products / Hardware               |
    | Products / Hardware / Computers   |
    | Products / Hardware / Monitors    |
    | Products / Hardware / Accessories |
    | Products / Services               |
    | Products / Consumables            |

    <Tip>
      Always build your hierarchy top-down. Create all Level 1 categories first, then add their children. This prevents broken parent references and keeps the tree organized from the start.
    </Tip>
  </Tab>
</Tabs>

***

## Force Removal Strategy

The **Force Removal Strategy** field controls the order in which stock is picked or removed from inventory for categories that require it. Setting this at the category level applies the strategy to all products in that category unless overridden at the product or lot level.

| Strategy | Full Name              | How It Works                                                                                                                                   |
| -------- | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| FIFO     | First In First Out     | The oldest stock (earliest receipt date) is removed first. This is the recommended default for most businesses.                                |
| LIFO     | Last In First Out      | The newest stock (most recent receipt date) is removed first. Less common; may be restricted depending on your country's accounting standards. |
| FEFO     | First Expiry First Out | Stock closest to its expiration date is removed first. Recommended for perishable goods, pharmaceuticals, and food products.                   |

<Note>
  FEFO requires expiration date tracking to be enabled on your products. Navigate to **Inventory → Configuration → Settings** and enable **Expiration Dates** under the Traceability section before using this strategy.
</Note>
