Documentation

Branding & apps

Building ordering apps

Create kiosk, QR, POS, and menu apps, lay out your menu, preview, publish, and attach your own domain.

What is an app?

An app is a customer- or staff-facing screen you build and publish — the menu a kiosk shows, the page a QR code opens, the layout your POS uses. Each location can run several apps at once. Open Apps in the main menu to see yours.

Apps are listed in a table — Type, Name, Status, and a Link column, plus edit and actions. Use the search box and the Type/Status filters above the table to find one quickly, and click any column heading to sort. Clicking a row opens it in the builder (or straight into Settings for an Attract or Customer display app). The Link column shows the app's full web address: your own domain if you've attached one (see below), otherwise your Mavos address; POS and kiosk apps show the address staff or a kiosk uses to connect; a Customer display app shows no link, since it only ever appears on a paired register.

Creating an app

If you finished the setup wizard recently, you already have starter apps — a POS register, an online ordering page, and a menu — created from your imported products; you can edit those instead of starting blank.

  1. Go to Apps and choose to create a new app.
  2. Give it a Name (e.g. "Lunch menu").
  3. Pick a Type:
TypeWhat it's for
KioskSelf-serve ordering terminal
QR / online orderingCustomers order from their phone or browser
POSThe staff terminal layout
MenuRead-only display or printable menu
AttractAlways-on screen (promos, signage)
  1. Create — you'll land in the builder (or straight in settings for an Attract app).

Items, folders, blocks and sections

Four things make up a menu, and it's worth knowing which is which:

  • Items are your products — pick them from the catalogue you built under Products (see Products and modifiers). Tapping one adds it to the cart.
  • Sections group items under a heading within a page, and give the menu bar something to jump to. A section can also fill itself from a product category or tag, so new products appear without re-editing the app. A section always takes the full width and starts a new row, with its items flowing underneath — that stops two headings colliding as the menu scrolls, so a section has no width setting.
  • Folders are tiles you tap into. They hold their own items — and their own sections — with a breadcrumb to get back out. Use one for a long wine list, a bottle-shop range, or anything that would otherwise swamp the page. An empty folder still shows, so you can see it needs filling. Give a folder a Colour and the whole tile takes it — handy for colour-coding a busy register. The title and icon switch between black and white automatically, whichever stays readable on the colour you chose.
  • Blocks are information cards: a note, a photo, a heading, an opening-hours panel. A block can be set to open a link when tapped, or to do nothing at all and just sit there being read. Blocks can be made wider or taller than one tile.
  • Upsells prompt customers with add-on suggestions. These are for kiosk and QR apps only — a register operator has no use for "want fries with that", so POS apps don't offer them.

Pages organise the top level — e.g. Food, Drinks, Specials — each with its own name, icon, colour and position.

Drag anything to reorder. On a touch screen, hold a tile for a moment before you move it — that way an ordinary swipe still scrolls the page, and only a deliberate press picks a tile up. Theme presets let you restyle a page, section, or item without touching the rest.

Laying out a POS menu

The builder looks different for POS apps, because a register is laid out by hand for speed rather than scrolled by a customer.

The left panel: pages, then folders, then sections

Three lists, nested to match the menu itself:

  1. Pages — every page on the register's navigation rail. Add page makes another. Tap the pencil on a page to set its Name, Icon, Colour and Shows (see below), duplicate its styling, or delete it.
  2. Folders — the folders on the page you have selected. Add folder makes one; tapping a folder's Open opens it, and the panel below and the canvas both retarget to it.
  3. Sections — the sections of whichever page or folder you're currently looking at. That's the point of the nesting: a folder can have its own sections, exactly like a page can.

Pointing a page at a register screen

A page's Shows setting decides what tapping its rail button does. Leave it on This page's products for a normal menu page, or point it at one of the register's screens — Orders, Upcoming, Open tabs, Tables, Customers, Day sheet or Calendar. The page keeps its own name, icon, colour and position on the rail, but opens that screen instead of a product grid. That's how you put Day sheet back on the rail as its own button.

The middle: a grid you arrange

The centre of the POS builder is the register's actual grid, drawn cell by cell so you can see what you're aiming at. There is always one empty row below the last one you've used, so there's somewhere to drop when you want to start a new row.

  • Add an item, folder, block or section and it flows — it fills the next free cell and shuffles along as you add more. Nothing is fixed in place until you say so.
  • Drag a tile into a cell to pin it there. It stays put, and its position shows on the tile as a small badge. A flowing tile shows flow instead. You can also select a tile and press Pin to the grid in the right-hand panel.
  • Drag a tile down to the area below the grid to unpin it — that area says "Drop a tile here to unpin it and let it flow into the first free cell." Or use Unpin in the right-hand panel.
  • Drag the round handle on a tile's bottom-right corner to make it wider or taller. It's also a button: tab to it and use the arrow keys. Or select the tile and use Width and Height in the right-hand panel.
  • Arrow keys move the selected tile; Shift + arrows resize it.
  • Delete a tile with the bin button in its top-right corner — it appears when you hover the tile or tab to it — or with Delete at the bottom of the right-hand panel. Deleting a folder or section removes everything inside it, so you'll be asked to confirm.
  • Columns at the top sets how many columns this page or folder uses. Reducing it can push pinned tiles off the edge — those simply go back to flowing rather than piling up in the last column.

Large / Medium / Small

The Large / Medium / Small switch shows how your layout reflows on a smaller register, so you find out while you're building rather than at the counter. Spans and pinned positions scale down with the grid; a tile whose pinned spot no longer exists flows into the nearest free cell instead, and the gap closes up.

It's a preview only — dragging and resizing are switched off unless you're on Large, because scaling a layout down and back up again can't be done without losing where you put things.

The right panel

The right-hand panel is where you edit whatever is selected, without opening anything. It carries Size and Placement for the tile, then the same full set of options the editor window has — title, product, what a block does when tapped, a folder's icon and colour, a section's source and item columns, and the whole style editor. Delete sits at the bottom.

With nothing selected it shows the page or folder's own settings, including Grid width.

Open in a window… puts the same editor in a larger window. Nothing extra is in there — it's just roomier, which helps when you're writing a block's rich content.

No preview panel on POS

POS apps have no preview panel — the canvas is the preview. Kiosk and QR apps keep theirs.

App settings

From the top bar, open App settings to control behaviour:

  • Theme selections — choose which of your themes the app uses. Header, Menu, Footer, and Attract also offer None to hide that element entirely — for example, hide the category menu bar on a display menu, or turn the idle attract loop off for one app. On POS and kiosk apps the Attract row can also point at an Attract app to follow its day/time schedules (see below).
  • Available times — follow the location's opening hours, stay open any time (24/7), or set a custom schedule of named service windows (e.g. Lunch and Dinner, with close times past midnight if needed); closed apps tell customers when you'll be back. Menu apps are always available, so they don't show this tab — use Menu options to control item availability instead.
  • Scheduling — allow customers to place orders ahead of time with a whole-order pickup time.
  • Item scheduling — let customers put a date and time on individual items, so one order can hold meals across several days (each item reaches the kitchen at its own time). Choose Set Default to follow the location setting, or force it on/off per app, and set How far ahead customers can schedule (blank = the location's setting, 90 days out of the box). When it's on, the per-item times replace the whole-order pickup picker at checkout.
  • Order details — which fields (name, table, notes) to ask customers for.
  • After a sale, the register… (POS only, on the Checkout tab) — Shows a confirmation (a dialog staff dismiss, closing itself after a few seconds) or No confirmation — return to the menu (a brief message, then straight back to the menu; a linked customer screen still holds the receipt code for a few seconds). Kiosk and QR always show their own full-screen confirmation.
  • Search sections (POS only) — which sections appear inside Search on the register. Select none to show them all. Tables and Open tabs still depend on your venue type, and Day sheet and Calendar still only appear where this register sells or checks in bookings — this list can hide a section, never force one on.
  • QR code appearance — size, colors, and error correction for printed codes.
  • URL slug — the app's web address path. Change it carefully: old QR codes and links will stop working.

Attract apps and schedules

Attract apps play a full-screen loop of slides — images, videos, and product slides that pull live products (photo, name, price) from a category or tags, either one product per slide or a grid on a single slide.

  • Schedules — an attract app can play different attract themes at different days and times: for example a Tuesday-specials theme and a rest-of-week theme. Add schedules in the app's Attract tab; each has a name, days, an optional time window (blank = the whole day, and an end before the start runs past midnight), and the theme to play. The first matching schedule wins, and the Default content below plays when none match. The screen switches themes on time — no reload needed.
  • Slide timing — every slide in an attract theme can be limited to certain days of the week and/or a date range ("Show only at certain times" on the slide). Leave it unset to always show the slide — great for limited-time promos that expire on their own.
  • Using schedules everywhere — POS terminals, kiosks, and customer displays can select an attract app (instead of a single theme) as their attract source, so one set of schedules drives every screen in the venue.

Bookings

Kiosk and QR apps have a Bookings tab in App settings (next to Theme selections) for selling bookings and sessions. POS terminals sell everything, so they don't show this tab, and menu apps are read-only so they don't either.

Turn on the options you need:

  • Sell tickets and sessions — let customers book time-based products like classes, appointments, or events. Switching this on automatically shows a date row so customers pick the day they're coming.
  • Sell multi-day products — for stays or hires that span several days, this adds a From / To range so customers choose their start and end dates.
  • Single-item checkout — send the customer straight through with one booking at a time, ideal for a focused booking funnel rather than a mixed cart.
  • Booking-first layout — turn this on when booking is your main business. Your app opens on the date picker with your bookable products shown up front and sorted by availability (open times first, sold-out last); the rest of your menu still appears, just further down the page.
  • Collect a name and/or email — require booking customers to give their name, their email, or both, so you can confirm and contact them.

If you switch a selling option off while the app still contains those products, the app warns you and removes them, so the app never shows something customers can no longer book.

See Bookings overview.

Preview and publish

While building a kiosk or QR app, use the preview panel to see it exactly as customers will. POS apps have no preview panel — the grid canvas is already showing you the register, and the Large / Medium / Small switch previews how it reflows.

When you're happy, flip the Published switch in the top bar. Until then the app shows a Draft badge and isn't reachable by customers. You can unpublish at any time — useful for seasonal menus.

For kiosk and POS apps, the Devices button connects the app to physical screens — see Devices. For QR apps, download the QR code from the top bar and print it for tables and counters; see QR ordering.

Attaching a custom domain

By default your online ordering runs on a Mavos web address. To serve it from your own domain (e.g. order.mycafe.com):

  1. Go to Settings → Integrations → Custom domain.
  2. Enter the domain you want to use.
  3. Add the DNS record shown to your domain provider, then verify.

Once verified, your QR and online apps are reachable from your own domain — a nicer look on printed material and receipts.