How do I set up and run Order & Pay?
Switch on at-table ordering — customers scan their table's QR code, order and pay from their phone, and orders ring on your live orders board.
Order & Pay comes with the Complete plan, or on its own as the standalone Order & Pay product (£29/month): customers scan their table's QR code, browse your live menu, order and pay from their phone, and the paid order rings on your orders board for your team to deliver. ResoFlow charges a flat 15p platform fee per paid table order, deducted from the payout — it's never added to the customer's bill, and tips are never touched (customers pay through your own Stripe account, so Stripe's standard card-processing fees also apply as with any card payment).
Switching it on
The master switch lives on Settings → Order & Pay. Switching ON is checked server-side and will be refused until your venue is genuinely ready:
- Stripe connected — customers pay through your own Stripe account, so Order & Pay can't go live until Stripe is connected on Settings → Payouts & Stripe and able to take payments.
- Somewhere for orders to ring — a paired staff device (Settings → Security → Paired devices) or a signed-in dashboard or staff-portal session, so a paid order never lands unseen.
If either is missing, the page shows a checklist of exactly what to fix, with links. Switching off is always allowed, instantly — new orders stop at once, and paid orders already on the board stay there until your team handles them (nothing is auto-refunded).
For a short breather mid-service, there's also a separate temporary pause: the orders board's Pause new orders button (the pause icon in the board's top bar) stops new orders in one tap without touching the master switch. Customers see "Ordering is paused — back shortly" on the menu, checkout refuses politely, paid orders stay on the board, and an amber strip on the board carries the one-tap Resume orders button. Pausing is always allowed; the master switch stays exactly as it was.
Strongly advised before going live (not enforced — it's your venue's legal responsibility): fill in each dish's allergen checklist and "Contains alcohol" flag on the Menu page. If you brought your menu in with the menu import, its review screen pre-ticks "Contains alcohol" for dishes that read as alcoholic drinks and lets you mark a whole drinks section in one go — check those ticks rather than starting from nothing. Customers ordering remotely must be able to see allergen information in writing.
Your printed QR codes just work. The per-table menu QR codes you've already printed start taking orders the moment Order & Pay is on — no reprinting needed. With it on, the QR codes page's per-table cards read "Scan to order & pay" instead of "Scan to view our menu".
Flexible table entry
The Flexible table entry switch on Settings → Order & Pay is on by default and gives customers three extra ways in — switch it off and ordering becomes strict: a customer can only start an order by scanning their own table's QR code. With it on:
- Type your table — the plain menu page (your /menu link) shows an "Order & Pay at your table" card; customers tap Start an order, type their table ("12" or "Table 12" both work) and continue exactly as if they'd scanned it. Typed tables are always checked against your real tables — a wrong number gets a friendly "we can't find that table" message, never a guess.
- One general QR code — with the switch on (and Order & Pay live), the QR codes page's Order & Pay (anywhere) tile offers one code you can print for the bar, menus or posters. It links to your menu page and asks the customer which table they're at.
- Change table mid-order — customers see a small "Change table" link next to their table badge, so a party that moves keeps their basket. The table is re-checked at payment either way.
With the switch off, none of the above appears — every order starts from the customer's own table QR. A customer who scans a previously printed general code while the switch is off sees an honest "To order here, please scan the QR code on your table — or ask a member of the team" note above the browse menu — never a silent dead end (the per-table codes themselves are unaffected). Separately, whenever a customer scans a table QR (or the general code) while Order & Pay is switched off — or nothing is currently orderable — they now see a friendly "Ordering at the table isn't available right now — please order with our team" notice above the browse menu instead of nothing at all.
Serving times and category switches
Every menu category can be switched on or off for ordering, and scoped to serving windows — set days and times:
- Settings → Order & Pay → Serving times — each category has its own switch and can carry serving windows (day pills plus start and end times, in your venue's local time). A category with no windows can be ordered whenever Order & Pay is on; an end time at or before the start runs past midnight, so 21:00 to 02:00 covers a late bar. Add up to 21 windows per category.
- The orders board carries the same fast per-category switches (plus the master) for mid-service use — switching a category off there stops new orders for it instantly.
Outside a category's serving windows, its dishes show on the menu as browse-only and can't be added to an order — and the times are re-checked at payment, so a window closing mid-browse still holds.
Tip suggestion
The customer checkout always offers No tip, 5%, 10%, 15% or Other (their own amount) — tips are voluntary and go to the venue. On Settings → Order & Pay → Tip suggestion you can choose to preselect one of the percentages (5%, 10% or 15%) so it's highlighted when the checkout opens; the default is Off, meaning the checkout starts on "No tip". Customers can always remove the suggestion in one tap or type their own amount, and once they've chosen, their choice is never overridden.
Set menus & deals
Build set menus and bundles on the Menu page's Set menus & deals view — existing dishes grouped into slots with one bundle price and optional per-dish supplements, scoped to their own day and time windows (see How do I build my menu?). When at least one deal is available right now, customers see a highlighted Set menus & deals section at the top of the ordering menu — or, for a deal you've placed inside one of your categories, its card inside that section with a compact deal chip (name and price) just under the category heading; a deal placed At the top AND in its category shows its card in both places — and pick their dishes step by step; with ordering off, the browse menu lists live deals read-only with their times shown. Every visible deal's Apply automatically switch (on by default) means a basket that fills the deal gets the deal price even when the customer never tapped the card — see How do I build my menu? for how the automatic apply always favours the customer.
On the orders board a deal arrives as one line — the deal's name and price with each chosen dish listed beneath it (including any choice-step picks and supplements), so the kitchen sees exactly what to make. Deal orders behave like any other: they count in sales figures, earn loyalty for signed-in members on the full amount (where your venue runs loyalty), and appear itemised on the customer's receipt with the bundle price split across the chosen dishes' VAT rates where you've set them. Automatic promotions never discount a deal — on a mixed order they apply only to the individually priced dishes. A promo code the customer types can also come off deal prices while the Promo codes can be used on deal prices toggle (Settings → Order & Pay, on by default) is on; codes limited to certain items never touch deals either way — see How do promotions, deals, rewards and gift cards work together?.
The orders board
Open Orders (in Front of house) on the dashboard or the staff portal. New paid orders appear as big cards with the table number, the items and a waiting timer, and the board rings continuously until someone acknowledges the order. Each card carries one big button that moves the order on: Start preparing on a new order (this is what acknowledges it — it records who started it and when), then Delivered — one tap and the order leaves the board. Each device can silence its own board sound; every other staff screen also gets a centred pop-up, a bell entry and a ding for each new order (each account can switch its own alerts off in notification preferences).
Tap the card itself to open the order's panel (a full-screen view on a phone) — the full order with everything else your team can do:
- Reject + refund — behind a manager PIN (or an owner/admin password). The customer's money goes back in full — card refunds to their card, any gift-card cover back onto the card — and they're emailed the reason.
- Refund items… — for a wrong or unavailable item mid-service, behind the same manager PIN. Tick the item(s) — and where the customer ordered more than one of something, pick how many to refund (one of two colas, say). The exact price the customer paid for them goes back to their card; a fully refunded item shows struck through on the board and kitchen cards, a part-refunded one stays un-struck with a "1 of 2 refunded" note, and the order carries on with the rest — it's never cancelled. A set menu or deal refunds in whole bundles — where the customer ordered two of the same set menu you can refund one of them, but never a single dish from inside a bundle. The customer's email names exactly what — and how many — was refunded.
- Sold-out dish… — when one pick inside a paid set menu or deal has just sold out. The first choice is a swap: pick another dish from the same slot's choices and the order updates with no money moving — the board, the customer's order view and their receipt all show the new dish with "(in place of …)" so the change is honest. Only dishes at an equal-or-lower supplement can be swapped in (a swap can never charge the customer more), a dish containing alcohol can't be swapped onto an order that didn't go through the 18+ check, and where the swapped-in dish's supplement was lower the screen offers the difference back. The second choice — for staff with the refund permission, behind the same manager approval as every refund — is a goodwill refund on the line: the screen suggests the sold-out dish's share of the bundle price (what the customer actually paid, after any discount), and you set the final amount. A single dish inside a bundle still can't be refunded on its own — the bundle has one price.
- Every detail — the panel shows the whole order, including each dish's declared allergens. Orders containing alcohol carry an amber "Contains alcohol — check ID at the table (Challenge 25)" badge on their board card.
Orders containing alcohol require the customer to confirm they're 18+ before paying, and your team checks photo ID at the table — choose what happens if they can't show ID in Settings → Order & Pay → Receipts & age checks: pick a ready-made policy ("No refund on alcohol if ID can't be shown", "Alcohol refunded — the rest of the order stands" or "Please ask our team") or write your own wording (customers see it before they pay).
Past orders
The board only shows live orders — the moment one is delivered or rejected it moves to Past orders (the clock icon on the board's top bar, or /dashboard/orders/history). There you can look back over every order the venue has ever taken: pick a date range, filter by table or status, search by customer or dish, and open any order for the same detail the board showed — the items and choices, kitchen notes, tip, gift-card and card split, any promotion, the VAT summary and any loyalty points earned. A Download CSV button exports the filtered list (Plus plan and above or any paid product — the Order & Pay product includes it — like every CSV in ResoFlow).
Refunding a past order. From an order's detail, staff with the refund permission can refund two ways — both behind the same manager PIN (or owner/admin password) as the board's reject button. Refund items… ticks the exact item(s) to return — and where the customer ordered more than one of something, how many of them (one of two colas, say — set menus and deals included, each one refunding as a whole bundle at the price the customer paid for it, including any supplements or upgrades): the price the customer paid for them goes back to their card — if the order carried a promotion or a loyalty reward, that's the discounted price they actually paid, never the full menu price; fully refunded items show struck through in the order's detail, part-refunded ones carry a "1 of 2 refunded" note. Refund an amount… returns any part (or all) of the card payment — for a goodwill gesture or a disputed bill — either as a fixed amount (£) or a percentage (%): a percentage is worked out on the order total excluding the tip unless you switch on Include the tip, is rounded down to the penny, and never exceeds what's left of the card payment (if the percentage comes to more, you refund what's left and the dialog says so). Either way the order itself stays delivered; only the money moves, and every refund shows in the order's detail, on the Payments page and in the Activity Log (item refunds name what was refunded; percentage refunds show the percentage used). Refunds go back to the customer's card only — gift-card cover is re-credited automatically when an order is rejected, not from here.
Fees when money comes back. The flat 15p ResoFlow platform fee isn't returned when you reject or refund a paid order, in full or in part (the one exception: if a payment ever completes while your ordering is switched off, the automatic refund returns everything — the 15p fee included). Stripe does not return its own card-processing fees when a payment is refunded. Those fees are charged by Stripe under your Stripe agreement and are paid to Stripe directly — ResoFlow never receives or holds any part of them.
Receipts, VAT and loyalty
Every customer gets an itemised receipt email — each dish with its choices, any tip, promotion or gift-card cover, and the total. If you've entered your VAT number (Settings → Payouts & Stripe), the receipt also breaks down the VAT included, using each dish's VAT rate from the Menu page (new dishes can pick their rate up automatically from a category or venue-wide VAT default — see the menu guide), and closes with a "Tax invoice provided on behalf of…" line naming your business. The Registered business name field next to the VAT number (Settings → Payouts & Stripe) is the legal name behind your venue — a limited company name, for example — and it's what that line shows; leave it blank and your venue's trading name is used instead, with your venue address added when it's set. The same line appears on every money receipt at a VAT-registered venue — event-ticket confirmations, paid-in-full booking confirmations, customer pre-order receipts and the daily Order & Pay sales email. Where your venue also runs our loyalty scheme (Pro and above, or the standalone Loyalty product — Order & Pay alone doesn't include it), loyalty members earn on orders automatically when they sign in at the checkout (an emailed code the first time; the device stays signed in for 30 days) — their receipt quietly says what they earned and how far the next reward is. A customer who skips signing in still orders normally but doesn't earn. Non-members see a one-line invitation to join.
Members can also spend a reward at the checkout where you've switched on Let members use rewards when ordering in the loyalty scheme set-up (on the Rewards step; off by default) and given a reward a Checkout value (£). One reward per order: it applies after any promotion and never touches the tip, and any value beyond the order isn't carried over — no change is given, and the checkout tells the customer so before they pay. With the scheme set-up's Rewards can be used on deal prices toggle on (the default) the reward's value can come off set menu & deal money too, so a deal-only order can still use a reward; switch it off and rewards only cover individually priced dishes. A reward that covers the whole order skips the card step entirely. The reward shows as its own line on the customer's receipt, on the orders board and in Past orders (with its own Loyalty reward (£) column in the CSV), and your scheme's limits — the daily redemption cap and one-per-member rewards — are enforced exactly as they are on the Scanner. Rejecting the order returns the reward to the member's balance automatically, and the rejection email tells them so. Earning is unchanged by a reward: a signed-in member still earns on the order's full food and drink subtotal, exactly as with a promotion.
Customers are also emailed automatically when money comes back: rejecting an order sends a refunded-in-full email, and a manual refund (partial, full, or by item — from Past orders or the live board) sends a refund confirmation showing what came back and what's still paid; an item refund names exactly which items were refunded.
Sales figures
- Analytics → Orders — orders per day, total sales, tips, average order value and top dishes. Refunds you've given on paid orders, and any offer discounts and loyalty rewards, show as their own lines — sales are always the full menu value, before those.
- Analytics → Export → Order & Pay items (CSV) — dish-by-day quantities and sales with VAT-ready columns. Item refunds reduce the matching rows; whole-order refunds and discounts & rewards appear as their own negative rows.
- Analytics → Reports → Daily Order & Pay sales — an optional daily email of yesterday's orders to up to 5 recipients (off by default), with a Send now button for an immediate copy. Any refunds or discounts on the day's orders are called out in the email too.
- Orders also join your weekly report email once there's Order & Pay activity.
Related: How do customers order and pay at the table? · How do I create and print QR codes for my venue? · How do I build my menu? · How do I connect Stripe?