Source: https://wpinplate.com/en/docs/qr-table-ordering/

# QR table ordering

Every table has its own QR code. The guest scans it with a phone, orders from the menu and pays online or at the table. The order reaches the kitchen with the table number – the waiter doesn't have to collect orders.

## Step 1. The table ordering page

Choose the page a guest lands on after scanning the code: **InPlate → Settings → System → Pages → Table ordering page**.

- The page must contain the InPlate menu (the “InPlate – Menu” block or the `[wp-inplate-menu]` shortcode). It can be the same page as the online menu.
- The QR codes go through a permanent InPlate link (`/wp-inplate/table/{code}/`), so **changing this page doesn't require printing the codes again**.

Until the page is set, table ordering doesn't work – the QR tables screen shows a warning with a link to the settings.

## Step 2. Tables

Go to **InPlate → QR tables**.

**A single table:** click **Add table**, enter a label (e.g. “Table 6”) and optionally a zone or room (e.g. “Room 1”, “Terrace”).

**Many tables at once:** click **Add multiple** (next to **Add table**) and in the window enter:

| Field | Example |
|---|---|
| Prefix | “Table” |
| From – To | 1 – 12 → Table 1, Table 2 … Table 12 |
| Zone / room (optional) | “Garden” |
| Create as active | on |

The button shows how many tables will be created, e.g. **Create 12 tables**. You can create up to 200 tables at once. The list warns you when a label repeats.

## Table actions

| Action | What it does |
|---|---|
| **QR code** | Preview of the code, PDF download and printing |
| **Copy link** | Copies the table's link, e.g. for testing |
| **Edit** | Changing the label and the zone |
| **Disable / Enable** | A disabled table doesn't accept orders; the code stays valid after it is enabled again |
| **New code** | Generates a new code. **The old code stops working** – print a new card |
| **Delete** | Deletes the table and invalidates the printed code. This can't be undone |

Copy link is a button in the **QR link** column. The other actions are icons in the last column – the action's name shows when you hover over it. Deleting requires typing the table's label.

QR codes contain long, random tokens that can't be guessed.

## Step 3. QR cards to print

In the **QR card template** section, set the look of the cards:

- **Heading**, e.g. your venue's name,
- **Text below the code**, e.g. “Scan with your phone to order”,
- **Columns per A4 page**: 1 (large cards), 2 or 3 (small cards).

In the export, choose **Active only** or **All** tables and click **Download PDF**. Print the file and put the cards on the tables.

## Step 4. The look of the table page

The **Hide page header** and **Hide page footer** options hide the theme's header and footer on the ordering page and in the order form – only for guests at a table. The page then looks cleaner, like an ordering app.

## Step 5. Hours and payment

- **Hours:** set the **Ordering hours at tables (QR code)** in the [Schedule](/en/docs/schedule/#ordering-hours-at-tables-qr-code). They work independently of the online ordering hours. Closing days and holidays apply at tables too.
- **Payment:** turn on the **InPlate | Pay at the table** method and/or an online payment gateway. See [Payments](/en/docs/payments/).
- **Minimum:** an optional minimum for tables is turned on in [Settings](/en/docs/settings/#order-minimum).

## What the guest sees

1. They scan the code and land on the menu page with the note “You're ordering at a table”.
2. They choose dishes and add-ons and go to the order.
3. They enter a name (optional) and choose the payment.
4. They place the order. The thank-you page and the email show the table.

A table visit lasts 4 hours from scanning the code – during that time the guest can order another round without scanning again.

A disabled, deleted or outdated code (after a new one was generated) shows the guest a clear message instead of the menu.

## What the kitchen sees

- In the KDS the order is marked **QR table** with the table's label and zone.
- The **QR tables** channel filter shows only orders from tables.

## License

Editing tables requires an active license or a trial. After the license expires, table ordering keeps working, but changes to tables are blocked. See [License](/en/docs/license/).
