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

# Categories

> Organize the catalog into the blocks customers browse the menu with, and decide which ones show, when, and on which channel.

A category is the block customers browse the menu with: *Combos*, *Drinks*, *Desserts*. It's the first thing they see and the order they see it in, so it isn't an administrative label: it's how your menu is navigated.

This is where those blocks get defined once, for the whole catalog. Go to **Restaurant OS → Menu and Products → Categories**.

<Frame>
  <img src="https://mintcdn.com/firepos/fMgbql6u0dMQH9DE/images/manuals/backoffice/categories/01-listado.png?fit=max&auto=format&n=fMgbql6u0dMQH9DE&q=85&s=c11ebde04e51670ff1e613a928436019" alt="Catalog category list" width="3200" height="2000" data-path="images/manuals/backoffice/categories/01-listado.png" />
</Frame>

***

## The minimum you need to know

<Note>
  **1. A category lives in the catalog, not in a menu.** It's created once and every menu inherits it. What you change here reaches everywhere.

  **2. A product can be in several categories.** That relationship is built from the product record, not from here.

  **3. If you mark it channel-exclusive, it disappears from the Golden Menu** — and its products inherit that exclusivity.
</Note>

***

## The simple path

Creating a category is three fields: **New category**, give it a name, save.

With that it exists, it shows up in the Golden Menu, and you can start assigning products to it from each product's record.

<Tip>
  If your menu is *Starters, Mains, Drinks, Desserts* and it looks the same everywhere, this is all you need. The rest of the manual is for when a category has to appear only at certain hours or only on one channel.
</Tip>

***

## What the list tells you

| Column          | What to look at                                   |
| --------------- | ------------------------------------------------- |
| **Name**        | The category name.                                |
| **Parent**      | Which category it hangs off, if any.              |
| **Position**    | The order it's shown in. Empty = automatic order. |
| **Featured**    | Whether it's marked as featured.                  |
| **Visibility**  | **Visible in menu** or **Hidden**.                |
| **Products**    | How many products it has assigned.                |
| **Active**      | Active or inactive.                               |
| **External ID** | Its identifier in the external system (X-MART).   |

***

## A category's two texts

When you create one you'll see there are two descriptions, and they are not the same thing:

| Field                       | Who reads it                                                         |
| --------------------------- | -------------------------------------------------------------------- |
| **Operational description** | Nobody outside. It's for your team: *"weekdays only, cold kitchen"*. |
| **Marketing description**   | The customer. It gets published in menus.                            |

<Frame>
  <img src="https://mintcdn.com/firepos/fMgbql6u0dMQH9DE/images/manuals/backoffice/categories/02-general.png?fit=max&auto=format&n=fMgbql6u0dMQH9DE&q=85&s=351e0805269dae959ae34973f60bb662" alt="General form of a category" width="3200" height="2000" data-path="images/manuals/backoffice/categories/02-general.png" />
</Frame>

Names and descriptions are filled in **for all three languages** (Spanish, English and Portuguese) from the same screen.

<Warning>
  **Don't put internal notes in the marketing description.** That text travels to the published menu and the customer reads it. The split between the two descriptions exists precisely so that doesn't happen.
</Warning>

***

## Where it appears, and in what order

Three controls that get confused with each other:

* **Display in menu** — when off, the category **does not appear in the customer menu**. The products it holds still exist.
* **Featured** — the mark for the menu's featured blocks, the ones at the top or in a carousel.
* **Position** — the global order. Leave it empty and the order is managed automatically.

<Info>
  **Position is the order in the catalog, not in one particular menu.** Inside a custom menu you can reorder categories by dragging, and that order wins for that menu. What you set here is the starting point everyone inherits.
</Info>

***

## Channel-exclusive category

This is the switch with the most consequences, and it's worth understanding before touching it.

<Frame>
  <img src="https://mintcdn.com/firepos/fMgbql6u0dMQH9DE/images/manuals/backoffice/categories/03-exclusiva.png?fit=max&auto=format&n=fMgbql6u0dMQH9DE&q=85&s=7f82a6fbb8722add812620436185e85a" alt="Channel Exclusive Category card, above the catalog status controls" width="3200" height="2000" data-path="images/manuals/backoffice/categories/03-exclusiva.png" />
</Frame>

By default a category **is part of the Golden Menu** and every channel and every store inherits it. Turning exclusivity on inverts that: the category **stops appearing in the Golden Menu** and only exists in the menus where somebody adds it by hand.

It's for what the name says: a category that only makes sense on an aggregator, or a promotion that only runs in the app.

<Warning>
  **The products of an exclusive category inherit the exclusivity.** It isn't only the category that disappears from the Golden Menu: it takes its products with it. If you mark a category exclusive when it already had products selling, those products stop being in the base menu.
</Warning>

***

## When it's available

The **Availability** tab defines the days and hours the category is offered. It's where *"breakfast only until 11"* gets solved without building a separate menu.

<Frame>
  <img src="https://mintcdn.com/firepos/fMgbql6u0dMQH9DE/images/manuals/backoffice/categories/04-horarios.png?fit=max&auto=format&n=fMgbql6u0dMQH9DE&q=85&s=e308202062a8606a5555c119aa133e82" alt="Availability tab with the category's schedule" width="3200" height="2000" data-path="images/manuals/backoffice/categories/04-horarios.png" />
</Frame>

A category with its own schedule is marked with the **Schedule** badge, and in the menu editor the day lens hides it when the day and time you pick don't cover it.

***

## Images

The **Media** tab accepts **WebP, JPEG or PNG, up to 5 MB**. One of the images is marked as primary.

<Note>
  **The Availability and Media tabs are locked until you save.** The screen says so: *"Save the category first to access this section"*. That's because until then there is no category to hang a schedule or a photo on.
</Note>

***

## Recipes: how the real cases get solved

<AccordionGroup>
  <Accordion title="Building the breakfast menu that switches off at 11">
    1. **New category**, name it *Breakfast*.
    2. Save: until then the schedule tab is locked.
    3. **Availability** tab: the days and the time range, until 11:00.
    4. Assign the products from each product's record.

    The category gets the **Schedule** badge and stops being offered on its own past that hour. No separate breakfast menu needed.
  </Accordion>

  <Accordion title="A promotion that only runs on one aggregator">
    1. Create the category and turn on **Channel Exclusive**.
    2. Assign it the promotion's products.
    3. Go to [Menus](/en/manuals/backoffice/menus), open that aggregator's custom menu and add it with **Add category**.

    Because it's exclusive, it doesn't clutter the Golden Menu and doesn't appear on the other channels.
  </Accordion>

  <Accordion title="Taking a category off the menu without deleting it">
    Turn off **Display in menu**. The category stops appearing in the customer menu but still exists, with its products and its relationships intact.

    That's the right move for something seasonal that will come back. Deleting is permanent and cannot be undone.
  </Accordion>

  <Accordion title="Changing the order customers see the blocks in">
    If the order has to be the same everywhere, use **Position** here.

    If it only changes on one channel, don't touch this: open that custom menu in [Menus](/en/manuals/backoffice/menus) and reorder the categories by dragging. That way the other channels never find out.
  </Accordion>
</AccordionGroup>

***

## Mistakes that cost money

<Warning>
  **Marking a category exclusive when it was already selling.** It and all its products leave the Golden Menu immediately. If that's the menu your stores use, you just stopped selling those products.
</Warning>

<Warning>
  **Writing internal notes in the marketing description.** That text gets published and the customer reads it. The operational description is there for internal things.
</Warning>

<Warning>
  **Deleting instead of hiding.** **Delete** is permanent: *"This action cannot be undone"*. If the category might come back, turn off **Display in menu**.
</Warning>

***

## Glossary

| Term                  | What it means                                                                                                       |
| --------------------- | ------------------------------------------------------------------------------------------------------------------- |
| **Category**          | The block the menu is grouped and browsed by. It lives in the catalog.                                              |
| **Parent**            | The category another one hangs off.                                                                                 |
| **Position**          | The global order in the catalog. Empty = automatic.                                                                 |
| **Featured**          | Mark for the menu's featured blocks.                                                                                |
| **Display in menu**   | Whether it shows in the customer menu or not.                                                                       |
| **Channel Exclusive** | The category leaves the Golden Menu and only exists where you add it by hand. Its products inherit the exclusivity. |
| **Schedule**          | The category's own hours: the days and times it's offered.                                                          |
| **External ID**       | Its identifier in the external system (X-MART).                                                                     |

***

## Frequently asked questions

<AccordionGroup>
  <Accordion title="How do I assign products to a category?">
    From the product record, on its **Categories** tab — not from here. A product can be in several categories at once. See [Products](/en/manuals/backoffice/products).
  </Accordion>

  <Accordion title="I created the category and the schedule and image tabs are greyed out">
    You have to save first. Until then the category doesn't exist yet and there's nothing to hang a schedule or a photo on: *"Save the category first to access this section"*.
  </Accordion>

  <Accordion title="I changed the order and one channel still shows it differently">
    That menu has its own order. **Position** is the catalog's starting point; inside a custom menu, the order somebody left by dragging wins for that menu.
  </Accordion>

  <Accordion title="I hid the category and its products still show up">
    Turning off **Display in menu** hides the block, but a product that is also in another visible category keeps appearing there. A product can belong to several.
  </Accordion>
</AccordionGroup>

***

## What's coming

* **Assigning products from the category**: today the relationship is always built from the product record.
