![Ringle](assets/ringle-logo.png)

# Menu management

## Purpose
The Menu page shows the menu Ringle reads from a restaurant tenant's POS: the same catalog the assistant quotes on calls and in chat. It is a read-only view. The menu itself is edited in your POS, and Ringle picks up the changes from there.

## Prerequisites
- A restaurant-sector tenant. The demo accounts reach one via Demo Restaurant.
- A POS connection that publishes a menu (Square, for example). The demo tenants run on the Demo provider, which serves the built-in demo catalog; the captures below show the Demo Restaurant menu.
- The page is not in the sidebar; open it by URL.

## Steps

### Step 1

![menu-management, step-01](screenshots/menu-management/step-01.png)

**Action:** Switch into a restaurant tenant. The dashboard confirms the context: the Tenant card carries a Restaurant sector chip and the POS Provider card names the connected system.

**What you should see:** You are scoped to the restaurant tenant (Demo Restaurant here, on the Demo provider). All tenant pages, including the menu, now read from this tenant.

### Step 2

![menu-management, step-02](screenshots/menu-management/step-02.png)

**Action:** Open the Menu page by appending `/menu` to the portal address.

**What you should see:** The page is titled "Menu" with a provider line underneath; on the demo tenant it reads "Provider: Demo". The menu loads below, grouped by category. The Demo Restaurant catalog has Appetizers, Entrees, Sides, and Beverages. This is the same catalog the assistant quotes when a caller or chat visitor asks about the menu.

### Step 3

![menu-management, step-02](screenshots/menu-management/step-02.png)

**Action:** Browse the loaded menu.

**What you should see:** Items are grouped by category. Each category is a heading over a grid of cards. A card shows the item name, its description when the POS provides one, and the price. Items the POS marks unavailable carry an "Unavailable" chip. Items without a category are grouped under "Uncategorized".

## Troubleshooting
- "Unable to load the POS menu for this tenant.": the POS connection is failing or the tenant's provider does not expose a menu. Check the Connections page under Account & Access.
- The provider line reads "Unknown": the menu response did not identify a provider, usually the same connection problem as above.
- The page loads but shows no items: the POS returned an empty catalog. Confirm the location and catalog in the POS itself; Ringle only mirrors what the POS publishes.
- You want to edit items, prices, or availability: do it in your POS. For demo workspaces, the editable demo catalog lives on the workspace Products page instead (see the demo orders and products doc).

## Notes
- Route: `/menu` (reached by URL; it has no sidebar entry). Source component: `pages/MenuPage.jsx` in the portal app.
- The page renders whatever the active tenant's POS returns, so it is only meaningful for tenants whose provider publishes a menu; it is not gated in the UI.
- The captures were taken in the Demo Restaurant tenant during an admin review session, which is why a "Viewing as admin" banner appears in the sidebar; regular members see the same page without the banner.
