---
title: How to show allergens and sell extras
description: Allergens, calories and ingredients — the details a diner asks the waiter about — and how to sell a side with a main. These are the extra fields that make a dish page useful rather than decorative. Shopify calls them…
url: "https://www.apselo.com/docs/kb/restrovics-allergens-and-extras/"
updated: "2026-08-23"
category: Restrovics
---

# How to show allergens and sell extras

Allergens, calories and ingredients — the details a diner asks the waiter about — and how to sell a side with a main.

These are the extra fields that make a dish page useful rather than decorative. Shopify calls them *metafields*. You set them up once, and from then on they are just boxes on your product page.

## Setting them up, once

*In Shopify:* **Settings → Custom data → Products → Add definition**

Make these four. Copy the name and the type exactly — the theme looks for these and nothing else.

| Name it | Namespace and key | Type | Shows up as |
| --- | --- | --- | --- |
| Allergens | `restrovics.allergens` | Single line text, list | An *Allergens* row on the dish page |
| Calories | `restrovics.calories` | Integer | A *Calories* row |
| Ingredients | `restrovics.ingredients` | Single line text, list | An *Ingredients* row |
| Extras | `restrovics.add_ons` | Product, list | Paid add-ons on the dish page |

> **The namespace is the bit before the dot**
>
>
>
> When Shopify asks for a namespace and key, the namespace is `restrovics` and the key is `allergens`. There is one box for each.

Leave any of them empty on a dish and that row simply does not appear. There is no need to fill in all four for every dish.

## Filling them in

Once the definitions exist, open any dish and scroll to the bottom. There is a **Metafields** panel with your four boxes in it.

> **Example — Truffle arancini**
>
>
>
> **Allergens:** Milk, Egg, Gluten
>  **Calories:** 420
>  **Ingredients:** Arborio rice, black truffle, parmesan, panko
>
>
>
> On the dish page these become three tidy rows under the price, each with its own small icon.

## Selling extras

An extra is a side, a sauce, an extra shot — something a diner adds to a dish and pays for.

**Each extra is its own product.** That is deliberate: an extra has its own price and the kitchen needs to see it as its own line on the ticket.

1. Create the extra as a product, exactly as you would a dish. Give it a title and a price.
2. **Do not put it in any of your course collections.** Otherwise it appears in your menu as though it were a dish.
3. Open the dish it belongs with, find the **Extras** metafield, and choose it there. You can choose several.

The dish page then offers them as tick boxes, and the running total at the bottom updates as the diner ticks them.

> **Example**
>
>
>
> *Steak frites* lists three extras — *Peppercorn sauce +£2.50*, *Truffle butter +£3.00*, *Extra frites +£4.00*. A diner ticking sauce and frites sees the total change from £24.00 to £30.50 before they add anything to their order.

## Notes for the kitchen

Every dish page has a **Special instructions** box, so a diner can ask for something without ringing you. It arrives with the order. Nothing to set up.

## Reviews and stars

The theme shows star ratings wherever a dish has them. It reads them from whichever review app you install — Judge.me, Loox, Okendo and Yotpo all work, and there is nothing to connect up.

> **Why a new dish has no stars**
>
>
>
> A dish with no reviews yet shows nothing at all, rather than five empty stars. Five empty stars reads as *badly reviewed*, which is worse than saying nothing.
