Kiosk & QR ordering
QR ordering
Let customers scan a QR code, order and pay from their phone, and receive digital receipts.
QR ordering lets customers order from their own phone — no app download, no queue. They scan a code, browse your menu, pay by card, and the order lands straight on your POS and kitchen screens.
If you completed the setup wizard, you already have a published online ordering app built from your menu — the wizard's final screen links straight to it. Everything below applies to that app too.
How it works for the customer
- Scan the QR code at the table (or on a poster, window decal, or receipt).
- Your menu opens in the phone's browser, styled with your branding. A small account button in the corner lets them sign in with a 6-digit email code — signed-in customers get their contact details filled in automatically, plus their saved discounts and loyalty points at checkout.
- If you sell items for specific dates, they pick a date from the bar along the top — see Choosing a date.
- They add items — with modifiers, notes, and any required details like a name, phone number, or table number.
- Checkout runs over two pages. The first collects their details, tip, discount codes, and gift card; Continue to pay then moves to a payment page showing a short summary of their details above the card form. Their cart stays visible throughout — beside the form on a large screen, or as a bar pinned to the bottom of the phone screen ("Cart · 3 items") that expands when tapped.
- They get an order confirmation and a link to their digital receipt.
Signing in
Customers can sign in from the account button on the menu, from the cart, or from the Rewards section at checkout — all use the same 6-digit email code, no password. Once signed in:
- Their name, email, and mobile fill in automatically at checkout (anything they've already typed is left alone).
- A Your codes row appears in the Discount code section with any codes you've assigned to them — one tap applies the code. Codes you've marked public show there for every visitor, signed in or not. See Discounts.
- Their loyalty points are ready to redeem, and orders land in their account history.
Ordering ahead — items for future days
With Item scheduling turned on (in the app's Available times settings, or as the location default under Settings → Hours), every regular menu item can carry its own day and time. Adding an item stays one tap — it defaults to ASAP — and the cart shows a timing chip on each item with Set time / Change time. The time chooser offers the next seven days as quick chips plus a calendar for dates further out (up to your How far ahead setting, 90 days unless you change it), with times in 15-minute steps inside your open hours.
One order can hold, say, a lunch for every day of the work week — the cart, checkout, receipt, and confirmation email all group the items by day, and each item is sent to the kitchen at the right time on its day, not all at once. Customers also get a reminder before each day's items. Because every item carries its own time, the whole-order pickup-time picker is hidden at checkout, and if the store is currently closed, customers can still order ahead by putting a time on each item.
If your app has the date bar, adding a menu item while a future date is selected asks for a time for that day (this works even without Item scheduling turned on). When the order also contains a booking, items added for the same day offer easy choices: Now, With the booking (our team sends it when the customer is checked in), At a time… (defaulting to the booking's start time), or Not sure yet (the customer tells staff on the day).
Checkout details and bookings
When the cart contains a booked product, the order type chooser (dine in, pick up, take away, delivery) and pickup-time picker are hidden — the booking sets the visit. The table number fills in automatically when the booked resource is a table, or from a table QR code link; otherwise the customer can enter it or leave it for staff to sort at check-in.
At the bottom of the checkout page, customers see a note that purchasing means accepting your Terms & Conditions and Privacy Policy — each opens in a pop-up with the text you set under Settings → Policy (plus any location-specific terms from Location → Location details, shown first).
Choosing a date
If your menu has items sold for particular days — passes, tickets, classes, or bookable services — the app shows a date bar across the top so the customer can pick when they're ordering for.
- The bar is built for phones: each day shows the weekday stacked above the date, so more days fit on a small screen at once. A sold-out day in the strip shows its date struck through, but stays tappable — the customer can still open it to see what's on offer.
- Tapping the calendar icon opens a month picker for jumping to a date further ahead. Sold-out days appear struck through and can't be selected there; open days show a small price underneath when one applies, so the customer can compare days before picking one.
- For products that span more than one day (such as a multi-day pass or hire), the app shows a From / To date range instead of a single day.
- On a QR or online app, the chosen date (or date range) is saved in the page link. That means you can share a link that opens straight on a specific date — handy for promoting a particular event or session.
- If Booking-first layout is turned on (App settings → Bookings), the date bar moves to a prominent spot at the very top of the page and is followed by your bookable products up front, sorted so the ones with the most availability show first — see App builder.
Booking products
When a customer taps a product that has to be booked — a table, an appointment, a class, or any timed service — the app opens everything on one page, no steps to click through:
- Photo and details — the product's picture and description, so they know what they're booking.
- Times — the available times for the date they chose on the date bar. Picking a time reveals the options straight away, in place.
- Options and party size — any choices you offer, plus how many people the booking is for.
- Add to cart — a button fixed to the bottom of the page, with a note that the time is held for them while they keep ordering.
If nothing's available on the date they picked, the page shows the next available date plus a small calendar for that item so they can switch their visit to an open day without leaving the product.
The customer adds the booking and lands back at their order, ready to pay. If their hold is about to run out, the cart shows a countdown with an Extend hold button, and Edit lets them change the time or options without removing the item first.
Setting it up
- Create a QR ordering app under Apps — see App builder for menu layout and styling.
- Open the app and use its QR code button. The dialog generates a print-ready code — as the app puts it, "Print this on a table card or save it to share." You can style and download the code as an image.
- Print and place the codes. That's it — the app is live at its public link.
Table codes
For table service, each table can have its own QR code that opens the same app with the table pre-filled, so orders arrive labelled "Table 12" without the customer typing anything. Tables live under Resources (tables are a kind of bookable resource). Whether a table or name is required at checkout is controlled per order type under Settings → Checkout.
Payments
QR orders are paid online by card through your Stripe connection — the same account as your counter payments, so everything settles together. Promo codes and gift cards can be applied at checkout, and loyalty points are earned when customers identify themselves.
Receipts
Every order gets a digital receipt page the customer can open any time from their confirmation:
-
Live order tracking — the receipt page shows the order's live progress (Received → Preparing → Ready → Completed) and updates on its own while it's open, so customers can watch for "Ready for pickup" without refreshing. Refunds show up here too.
-
Email receipt — on the receipt page, the customer can enter their email and tap Send receipt. If you run a loyalty program, the same form offers points sign-up in one step.
-
SMS receipt — if the customer provided a phone number and SMS receipts are switched on for the location (Settings → Checkout), a receipt link is texted automatically. This requires an SMS provider connected under Settings → Integrations — see Integrations.
-
Print-friendly view — the receipt page includes a printable version, which staff can also use at the counter.
Receipt email templates are customisable under Settings → Branding.
Custom domains
By default your QR apps run on a Mavos web address. To serve them from your own domain (e.g. order.yourcafe.com):
- Go to Settings → Integrations and open Custom domain.
- Add your domain and follow the DNS instructions shown.
- Once verified, your QR codes and links use your domain.
Tips
- Re-print QR codes whenever you change your domain.
- Use the Unavailable products setting (Settings → Checkout) to choose whether sold-out items appear greyed out with an "Available at…" caption or are hidden entirely — see Menus & availability. Greyed-out bookable items also carry a small badge — "Sold out", "Sold out · next Thu 16", or "N left" when a date is close to full — and stay tappable so the customer can pick another day, even when the greyed-out treatment is chosen instead of hiding.
- Watch incoming QR orders from the POS Search → Orders view or the admin Orders page — see Orders.