How does pre-ordering work for large bookings?
Let larger parties choose their dishes in advance — set the party size, the cut-off, day/time rules and special dates (with their own menus), choose invited or required wording, pick how the food is paid for, and print the kitchen prep counts.
Pre-ordering lets larger parties choose their food from your menu before they arrive, so your kitchen knows exactly what's coming on the night. Qualifying parties can now choose their dishes while booking — the booking page shows a Pre-order your food step (with per-guest picks and a running total) — or skip it and pick later on their manage-booking page, exactly as before. Either way you see the order on the booking and on your printed day sheet, with per-dish totals for the kitchen.
If they pre-order while booking, the money follows your existing payment model with no new settings: on Paid at the venue the dishes are simply recorded; on the two online-payment models the food total is paid with the booking payment itself. Gift cards can't currently be combined with a paid pre-order made while booking — those guests can add their pre-order after booking instead.
It needs the Pro plan or above and a menu with dishes on it (menu management itself also comes with the Order & Pay product, but pre-orders stay a Pro-and-above plan feature). If you choose one of the online-payment models below, you also need Stripe connected.
Pre-orders also have their own Pre-orders page in the sidebar's Front of house group — the food coming in for upcoming bookings at a glance, a plain-English restatement of how your setup behaves right now, and a Settings tab with the same dials as the settings page.
Switching it on
Everything lives in Settings → Payments and deposits → Pre-orders (or the Pre-orders page's Settings tab — they edit the same dials):
- Switch on Offer pre-ordering. When on, bookings at or above the party size below are invited to pre-order their food.
- Set Offer pre-ordering from — parties of this many customers or more are invited to choose their food after booking (default 6, between 1 and 100). This is its own number, separate from Maximum party size (Settings → Bookings → How many at once) and Don't auto-assign parties larger than (Settings → Bookings → Tables and seating).
- Set Pre-orders close — customers can add or change their pre-order until this many days before their booking (default 2, up to 30; set 0 to allow changes right up to the day). It's a separate deadline from your cancellation deadline.
- Choose How is a pre-order paid? — see the three models below. It's set with your other booking payments, in the Pre-order money section of Settings → Payments and deposits → What guests pay (this page shows your choice, with a link there), so you can see in one place what a booking pays and which payment wins.
The page also spells out how its pieces fit together, and it's worth knowing by heart: the switch offers pre-ordering every day; the Day and time rules under When it applies restrict it to just those days and times; Special pre-order dates always apply on their dates — even when the everyday switch is off. (Deposits and pay-in-full follow exactly the same model.)
Choosing when pre-ordering applies
- When it applies — add Day and time rules (a day with All day on, or a start–end time window) and pre-ordering is only offered for bookings on those days and times. With no rules it applies to every booking while the toggle is on. A booking outside the schedule simply isn't invited — your team sees "This booking's day or time is outside your pre-order schedule" if they try to send a request for one.
- Special pre-order dates — a date (Christmas Day, say) with pre-orders of its own is set on Settings → Bookings → Special dates: open the date and set its Pre-orders to Custom. It then takes pre-orders on that date even if the everyday toggle is off, ignoring the schedule, and this page lists it under Special pre-order dates with a link there. Each date can override the everyday settings — anything you don't set follows them:
- its own party size (parties of N or more — set 1 to invite every party that day);
- its own deadline (closing N days before the date — a Christmas pre-order can close on 18 December while your everyday rule stays at 2 days; reminders, emails and the booking page all quote the date's own deadline);
- its own wording (tick Tell customers pre-ordering is required — see below);
- its own menu — tick one or more of your existing menu categories and that date's pre-orders come from just those categories (none ticked = your full pre-order menu). An explicit pick always wins: the date serves its picked categories even if one is hidden from customer menus or switched off for everyday pre-orders ("Available for pre-orders"). Everything else about pre-ordering works the same.
The hidden-menu trick: the Menu page's category form has a Hide from customer menus switch. A hidden category never shows on your public menu, ordering or TV screens — but a special date that picks it as its menu still serves it to that date's pre-ordering customers. Build your Christmas menu as a hidden category, point the special date at it, and it stays private until it's needed. (The same trick works for an event's linked menu and for shareable menus — see menus.) The category form's separate Available for pre-orders switch does the reverse: the category stays on your ordinary menus but leaves the pre-order list — see "Which dishes can be pre-ordered" below.
Short-notice large parties, reminders and staff flags
- Ask larger parties to call at short notice — an optional switch on the same settings page (off by default). When on, qualifying parties can't book online inside your pre-order cut-off window — someone trying to book a party of that size less than "Pre-orders close" days before the visit sees a friendly note asking them to call you instead, so a big group can never arrive without the kitchen having had its pre-order window. Your team can still record these bookings as normal, and with "Pre-orders close" set to 0 there's no cut-off window so the switch has no effect until you set one.
- The last-chance reminder — a party that qualified but hasn't submitted a pre-order is automatically emailed a reminder on the last day their pre-order window is open, quoting their deadline. It sends once per booking; nothing is ever cancelled automatically.
- Your team is flagged too — the same day, an alert appears in the notification bell and the booking's row carries an amber Pre-order? chip, so front-of-house can chase it with a phone call if the food matters for that party.
- Remind a whole day in one go — on the Pre-orders page, pick a day and Remind un-ordered emails every booked party on it who hasn't chosen their dishes yet. A confirmation names how many bookings will be checked, and it's a protected action — you may be asked to confirm your password first. Anyone who has already ordered, has no email address, doesn't qualify for pre-ordering, or was already reminded that day — by your team or by the automatic last-chance email — is skipped automatically, and the result says how many were sent and skipped.
- Chase at a glance — the Pre-orders page header counts the reminded-but-still-unordered parties in the next fortnight ("2 parties to chase"), the same parties whose booking rows carry the amber chip.
- Kitchen summary — the same page's Kitchen summary button shows the selected day's pre-ordered dishes added up ("Sea bass × 14" — different choices count separately, refunded dishes never counted): the very numbers the printed day sheet's Kitchen prep — pre-orders section shows, without printing anything.
Invited or required wording
By default every customer message is a friendly invitation ("your party can pre-order…"). Switch on Pre-orders are required for larger parties and the wording firms up across every surface — the booking page says parties "must choose their food in advance", the emails say "please complete your pre-order" and quote the date it must be chosen by. It changes the wording only: a booking is never cancelled over a missing pre-order — customers still get a reminder on the last open day and your team is flagged, exactly as before. Each special date can override the wording on its own date.
The three payment models
- Paid at the venue — nothing is paid online. Customers choose their dishes so your kitchen knows what's coming, and pay you on the day as normal.
- Deposit, then pay for the food online — your deposit rules stay exactly as they are. When the party submits their pre-order, the price of their chosen dishes is charged online there and then. If you also use per-person full payment (Pay in full): a party that chooses its dishes while booking pays its deposit and food instead of the full payment, and a party that paid in full when booking has that payment counted towards its dishes — never charged twice.
- The pre-order total is the payment — the price of the dishes they choose is their payment for the booking. If they choose while booking, that is the one payment they make — no deposit or full payment as well. If they book first, your usual deposit or full payment is taken to hold the table and counts towards the dishes they choose later, so they only pay the difference.
Nobody is charged twice for the same food. A priced pre-order chosen while booking is paid instead of a full payment. A party that books without choosing its dishes pays whatever your other settings ask when they book — in full if Require full payment applies to them (Pay in full), otherwise your deposit — and that money counts towards the dishes they choose later (under Deposit, then pay for the food online, only a full payment counts; the deposit stays its own hold). Money for paid extras never counts towards the food, and money already refunded never does. When the customer chooses their dishes, the pre-order card shows the booking money counted and asks only for the difference, and a reduction shows exactly what will be refunded. Customers are told plainly what they'll pay and when, whichever model you pick. Online pre-order payments go straight to your own Stripe account, and ResoFlow currently charges no platform fee on pre-order payments (Stripe's normal processing fee still applies).
Which dishes can be pre-ordered
Your whole menu is offered by default, priced exactly as it appears — including any choices a dish has (a dish's choices price precisely: the base price plus whatever priced choices the customer picks, so even "From"-priced dishes with choices come out at the exact price of the selection). To keep a dish off the pre-order list, open it in Menu and turn off Available to pre-order. To keep a whole category off, edit the category in Menu and turn off Available for pre-orders — the category and every dish in it leave the pre-order list (on the customer page and staff phone entry alike) while still showing on your ordinary menus. Categories you've marked Hide from customer menus are left out of the everyday pre-order list too — their dishes only appear when a special pre-order date picks that category as its menu. On a special date with its own menu, customers choose from just the picked categories (and the server enforces it — a dish outside the date's menu can't be submitted, and an explicit pick even serves a category you've switched off for everyday pre-orders). A category's serving times (set for at-table ordering — see Order & Pay) hold for pre-orders too, checked against the booking's own day and time: a 12:30 party can pre-order the weekday-lunch section days ahead, while a 7pm booking can't — the category stays visible in the picker with its serving times shown, its dishes just can't be added, and the refusal says why.
What customers see
While booking, once a qualifying party size and date are picked, the booking page shows a short notice — "Parties of N+ choose their food in advance — pre-orders close N days before your visit" (with required wording: "…must be chosen by {date}"). If the chosen date's pre-order window has already closed, the page shows a quiet grey "Pre-orders have closed for this date" note instead (on venues that require pre-orders and have a phone number set, it adds "— call us on {number} to arrange your party's food"; venues that block such bookings entirely show their call-us gate rather than both messages at once). Drinks-only bookings never see the pre-order notice, the confirmation screen's dishes card or the email invitation — pre-ordering is a food thing. After a qualifying party books online, the confirmation screen shows a prominent Choose your dishes card linking straight to their pre-order page, the confirmation email invites them to pre-order, and a Pre-order card appears on their manage-booking page. The organiser fills it in for the whole party: they tap Choose your dishes, add dishes with quantities — each dish showing the same dietary and allergen badges as your menu (dietary letters; allergen symbols with the name on tap). A dish with choices opens a step-by-step picker from the bottom of the screen — one question per screen, progress dots, the count stated plainly ("Pick 2 — 1 of 2 chosen"), a live running price, and a Who's it for? box on the last screen ("steak — Dave"); the priced Add to pre-order button stays off until every step's count is met. Where a step lets guests take the same item more than once, its options carry − and + buttons instead of one-tap picks — the running count and any per-item limit are stated plainly, each extra one adds its cost again, and the order (and the kitchen's prep counts) show repeats once with a count, like "Hash brown ×3". The name can also be added or changed against any line afterwards, and the running total updates as they go — then they submit. Whenever a pre-order is paid online, the organiser is emailed a receipt itemising every dish with its quantity, chosen options, price and any per-guest name; if they later increase a paid order, the extra charge gets its own receipt showing the order total, what was previously paid and what was just paid. If you've entered your VAT number on Settings → Payouts and Stripe, the receipt also breaks down the VAT included in the dish prices (using each dish's VAT rate as it was when the customer submitted). They can change the order (wholesale — the new version replaces the old) until pre-orders close. Reducing an order they've already paid for works differently — see the refunds section below. While the picker is open it also shows the standard allergen notice — allergen and dish information comes from your venue, customers are asked to tell you about any allergy or intolerance before ordering, and cross-contamination is flagged as possible. It always shows and can't be switched off; allergen accuracy stays your venue's responsibility.
For bookings your team records by hand (a phone booking, for example), open the booking and use Email pre-order request in its detail panel — it emails the customer a link to choose their dishes, and you can re-send it until the cut-off. When your team creates a qualifying booking (or an edit makes one qualify — the party grows, say), the save asks "Invite the customer to pre-order?" — it's always a manual tick, never sent automatically. And if you use Food and drinks-only bookings, drinks-only bookings never receive pre-order invitations — pre-ordering is a food thing.
Your team can also record the pre-order themselves — for a party dictating their choices over the phone, the booking's detail panel has a dish picker using exactly the customer flow's menu, prices and rules. On the pay-at-the-venue model the order applies immediately; on an online-payment model the picker counts the booking money in the same way, the customer is emailed a payment link for anything it doesn't already cover (when it covers the dishes, the order is recorded straight away — no link and no email address needed), and nothing counts as paid until it's paid — though staff can explicitly override to pay at the venue instead, in which case the booking clearly shows the food as not yet paid.
Refunds, changes and cancellations
- Reducing a paid order — the organiser can reduce a pre-order they've already paid for at any time before the booking, even after pre-orders close (after the cut-off the card shows a Reduce pre-order option). Reducing means keeping the same dishes at the same or smaller quantities — the page shows the new total and tells them the difference is refunded to their original payment method before they confirm, at the prices they originally paid (a later menu price change never alters the refund). The refund is automatic, and they get an email confirming the reduced order and the refund; you don't need to do anything.
- Changing dishes on a paid order — swapping or adding dishes while ending up below what's already been paid can't be done in one step: the page asks the customer to reduce first, then add, so each step's money is unambiguous. Straightforward changes at or above the paid amount work normally until pre-orders close (any extra is charged online when they submit).
- Staff refunds, dish by dish — your team can refund specific dishes from a paid pre-order without cancelling anything: on the booking's detail panel, under the pre-order's dish lines, click Refund dishes…, tick the dish line(s) — and where the party ordered more than one of a dish, pick how many to refund (one of two ribs, say) — and confirm with your password or a manager's PIN (it needs the same refund permission as deposit refunds — Owners and Admins by default). The exact price the customer paid for those dishes goes back to how they paid (card, and gift card where one part-paid); a fully refunded line shows struck through as Refunded, a part-refunded one carries a "1 of 2 refunded" note, the kitchen prep counts and day sheet prep only what still stands, and the customer is emailed naming exactly what — and how many — was refunded. A fully refunded dish also disappears from the customer's own pre-order page (a part-refunded one shows just its remaining quantity, with the refunded count noted) — re-adding it later is a fresh purchase at the current menu price, and it can never be refunded twice.
- Removing the whole order — can't be done online; the page tells the customer to contact you. Your team can then refund the dishes line by line with Refund dishes… (above), or any amount of the paid order from the booking's payment card — see When do customers get their deposit back? (Cancelling the booking is separate — see below.)
- Paid-at-the-venue orders — no money is involved, so changes simply follow your Pre-orders close deadline as normal.
- If the booking is cancelled — refunds follow the same cancellation policy as deposits (set in What guests pay → Cancellations and refunds — see When do customers get their deposit back?), applied to everything paid on the booking, pre-ordered food included. Whatever that policy says (full, partial or no refund by the deadline) covers the whole amount, not just the deposit.
What your team sees
- The booking's detail panel shows the pre-order's status (requested, sent, or paid), each dish line with its amount, and the total. If the party size no longer matches the order — say the party shrank after the food was chosen — a short note flags it so your team can ask the customer to update it.
- A quiet bell notification ("Pre-order submitted") appears for your team the moment a party submits their order — no sound, just the row.
- The printed day sheet flags qualifying parties who still haven't ordered once their last-chance reminder has gone: their row carries "⚠ No pre-order recorded", so the kitchen sees the gap on paper too.
- The day sheet (Bookings page) includes each booking's pre-ordered dishes, and each day gets a Kitchen prep — pre-orders section totalling every dish across bookings ("Sea bass × 14" — different choices count separately). The Pre-orders toggle in the print options is on by default.
- On the kitchen screens (optional). Switch on Show pre-orders on the kitchen screens (the On the kitchen screens section at the bottom of Settings → Pre-orders; off unless you turn it on) and each of today's submitted or paid pre-orders becomes its own ticket on the Orders screen — the table, the customer's name, the party size, the booking time, every dish with who it's for, and the allergy or notes text typed on the booking itself (labelled "Guest's own words" — never anything from a saved profile). The ticket goes live, and rings like a new order, at Start cooking before the booking minutes before the booking time (30 by default; if your Order & Pay collection channel is on, its wait time is used instead) — and the moment the party is seated, whichever comes first. Where you split orders between the kitchen and the bar, a pre-order splits the same way and each screen marks its part done; the ticket leaves the board once every station has. If a kitchen printer is paired, the docket prints at the same moment, headed PRE-ORDER, one per station; a booking cancelled or marked a no-show after the docket printed sends a VOID slip so the paper in the kitchen is contradicted by paper. A pre-order changed after it went live prints again. A venue without Order & Pay still gets the Orders screen for these tickets alone. A pre-order that was only requested (the customer never chose) never becomes a ticket.
- The payment email — if you get the Booking payments copy (Staff alerts) and you've entered your VAT number on Settings → Payouts and Stripe, pre-order payment emails also break down the VAT included in the dish prices, using each dish's VAT rate from the menu. Rates are locked in when the customer submits, so a later menu change never alters a receipt. Dishes without a VAT rate set aren't guessed — they're shown on one line, Includes items with no VAT rate set (no VAT shown), so the breakdown still adds up to the order total.
Related: How do pay-in-full bookings work? · How do I build my menu and share it with customers? · How do I sell extras with bookings? · How do I take booking deposits?
If the booking, menu or another person's changes need reviewing
When a customer or staff member submits a pre-order, ResoFlow checks the current booking, menu and pre-order settings again. If a price, option or saved selection has changed, their draft is kept and the latest saved choices and total are shown. They review those details before submitting again. If the latest details cannot be loaded, they can retry the refresh without losing their draft.
An existing valid payment link keeps the prices quoted when it was created. If the booking or the pre-order it replaces changes, a new link will ask the customer to return and review before payment. If payment has already completed during that change, the existing payment follow-up process handles the return; a newer selection is not overwritten. Older links keep their existing payment checks.
Already-paid dish reductions retain their frozen prices and existing refund rules. These checks do not create a new table or stock reservation.