How do I set up collection and delivery ordering?
Switch on order-ahead collection and delivery — hours and last orders, wait time and time slots, minimum orders, cash, card taken at the venue, delivery areas and fees, and the go-live checks.
Collection and delivery let customers order ahead from your live menu and either pick the order up at the venue or have it delivered by your own team. They come with Order & Pay Pro (£39 a month, on sale now — add it from Account → Plan and usage, or choose it at signup) or the Complete plan, and they build on at-table Order & Pay: same menu, same Orders screen, same refunds. Delivery is always your own drivers — ResoFlow never uses couriers.
Everything lives in one place: Orders → Settings, in the Collection & delivery section. Each channel — Collection and Delivery — has its own switch and its own settings, so you can run collection only, or both.
Switching collection on
Collection has its own on/off switch, and switching it on is checked properly first:
- Stripe connected — customers pay through your own Stripe account, exactly as with at-table ordering.
- Ordering hours — collection follows your venue's opening hours by default (Opening hours), or set Its own times for separate collection hours. Either way, a Last orders offset stops new orders a set number of minutes before closing, so the kitchen isn't handed an order at one minute to close. Either way, a day you've marked as closed under Special hours takes no collection or delivery orders, and order-ahead won't offer that day. When a channel is closed, the ordering page says why and when it's back — "Closed today (bank holiday) — collection is back Tuesday from 12:00".
- The allergen check — flipping a channel on checks your menu's allergen information and warns you with a count of dishes that have none, with a tick to acknowledge before continuing. It warns — it never blocks — because allergen information is your venue's legal responsibility, and customers ordering remotely must be able to see it in writing.
Switching a channel off is always allowed, instantly. Orders already placed stay on the board for your team to finish.
Delivery builds on collection
Delivery has the same switch and settings as collection, plus its own — and it can't go live on its own: the switch-on check says "Collection needs to be on first — delivery builds on it." Before delivery can go live you also need to set how far you deliver (your Delivery area) and add at least one delivery fee band. The section's checklist tells you exactly what's missing.
- Delivery area — a distance from your venue, in miles. At checkout the customer's address is checked against it automatically (measured as driving distance) — an address outside the area is refused politely before any payment is taken.
- Delivery fees — distance-banded: "up to N miles" at a set price, with as many bands as you need. The matching band's fee is added to the customer's total as its own line before they pay; an address beyond your last band but inside your delivery area pays the last band's fee.
- Delivery time — a delivery order's promise is worked out from your wait time plus the driving time to the customer's address (3 minutes per mile) plus a 5-minute buffer, rounded to the nearest 5 minutes, and shown as a range — "about 35–45 minutes" — on the checkout, the receipt, the customer's status page and the board. A time the customer picks is a fixed time, not a range.
- If the address check isn't working — the check runs on Google Maps. If it ever fails, delivery orders are refused with a "try again" message, the delivery card here and the Orders screen show an amber warning, and a bell alert goes out; it clears itself the moment a check succeeds. Collection carries on regardless.
- Free delivery over — optionally waive the delivery fee for orders over a spend amount. Leave it empty and delivery is never free. Under the threshold, the basket shows how close the customer is ("Add £N more for free delivery").
- Free-delivery promotions — a promotion available on delivery orders can also waive the delivery fee: tick Free delivery when creating it. Set the discount to 0 to make it a free-delivery-only code, or keep a discount and it does both. The address and delivery-area checks still apply as normal.
- Promotions on collection and delivery — any money-off promotion can be ticked for Collection orders and/or Delivery orders under Where it works (a promotion with neither ticked stays at-table only), with the same minimum spend, whole-order-or-qualifying-items basis and dish/category scope that table-order promotions have. For "50% off your first collection order", choose The customer's first order under Conditions and pick what counts as their first — First order on that channel, First order of any kind or First visit of any kind; it's matched by the email the customer gives at checkout, and a regular diner who has never ordered for collection still qualifies on that channel. For "a free dessert when you order two mains for delivery", create a Free item when you buy promotion ticked for delivery — the cheapest dessert in the order comes off at its real price, once per order or once for every two mains up to a cap you set — and add a Certain days of the week condition to make it Tuesdays only (on Order & Pay orders every condition you add has to be met). See How do promo codes and automatic offers work?.
- VAT on the delivery fee — if your venue is VAT-registered, set the VAT rate the delivery fee carries; it's frozen onto each order at the moment it's placed, so a later change never rewrites old orders. Ask your accountant which rate applies — ResoFlow never guesses tax.
- Takeaway VAT rate per dish — some food is taxed differently taken away than eaten in. Once you've started setting up collection or delivery, each dish's form on the Menu page gains a Takeaway VAT rate field (and the category form can bulk-apply one): collection and delivery orders freeze that rate onto the line, while eat-in orders keep the dish's ordinary rate. Left "Not set", takeaway orders simply use the same rate as eating in. Ask your accountant which rates apply.
Wait time and time slots
- Wait time — the "about N minutes" promise customers see for as-soon-as-possible orders. Set the base figure to what your kitchen honestly manages — and on a busy night change it in one tap from the Orders screen's Wait control, which sets each channel's own figure (one dial per channel when both are on).
- Add time automatically when busy — an optional Busy adjustment: minutes are added per open order as the board stacks up, capped at a limit you set, and taken off again as orders clear. Customers always see the honest current figure, and your team can adjust the base at any time.
- Time slots — customers can also pick a time instead of "as soon as possible": slots run through your ordering hours at the interval you set. Orders per slot caps how many orders each slot can take (leave it empty for no limit) — a full slot simply isn't offered, so the kitchen never gets more than it can make.
- Order ahead — per channel: how many days in advance customers can order, from 0 (same-day only, the default) up to 5. With it on, the time picker also offers future days' slots, labelled with the day ("Thu 17:30"). A future-day order is paid for when it's placed, and the money counts in the sales for the day it was placed; the kitchen only sees it on its own day — it joins the board's Upcoming strip then, prints when it's time to start cooking, and uses that day's dish stock rather than today's.
Customers can pick a time whenever the channel is switched on and not paused — even while you're closed for the day. Outside your ordering hours the page says so honestly and still offers the next available times; only "as soon as possible" waits for you to open.
Orders placed for a later time wait in the Orders screen's collapsible Upcoming strip and drop into the live lane at cooking time — ringing like a new order when they do.
Minimum order, cash, and the fee
- Minimum order — per channel. Collection has none by default; delivery starts at £10 (change it, or clear it for none — the delivery card nudges you if it's empty). The checkout enforces it before payment.
- Accept cash — per channel. With it on, customers can choose to pay in cash when they collect, or at the door for delivery. A live cash order shows Unpaid — cash to take on the board with the exact amount (it changes to Paid in cash once the order is handed over), and the kitchen docket says the same, so nobody hands food over without taking the money.
- Card taken at the venue — per channel, off by default, and a separate switch from Accept cash (a cash-only venue never sees a card button). It doesn't change anything customers see: it's for orders your staff key in over the phone or at the counter, where you take the card on your own machine. With it on, the phone-order form offers it as a third payment option; the order goes straight onto the board and the amount shows as Card to take on the board, the docket and the customer's receipt. No card details ever go into ResoFlow and no money moves through us. In your figures it's counted on its own — the daily sales email and Orders analytics show Card at the venue separately from cash and from card, and past-orders CSV exports carry a Paid by card at the venue (£) column — so your cash count and your Stripe payout both still add up. It carries the same 50p + 1% platform fee a cash order does, billed monthly the same way — nobody saves money by pressing the other button.
- The platform fee — collection and delivery orders carry a ResoFlow fee of 50p + 1% per order — 50p + 1% of the food and drink total, after any discount or reward (at-table orders keep their flat 15p). Tips, delivery charges and card processing are never included. On card orders it's deducted from your payout. On cash orders there's no card payment to deduct it from, so it's added up and billed monthly to your card on file in a separate invoice — amounts under £1 roll over to the next month, and the running total shows on your Billing page and in the daily sales email. Tips and the delivery fee never enter the fee.
- Add the order fee to the customer's total — per channel, off by default. With it on, the fee is added to the customer's total as an "Order fee" line instead of coming out of your payout — it's never added to tips. Only ResoFlow's order fee moves: Stripe's card-processing fee still comes out of your payout either way, as with any card payment. On a cash order with it on, the fee joins the cash total, so you take it back at hand-over (the monthly bill is unchanged).
Alcohol on collection and delivery
Dishes marked Contains alcohol can be ordered for collection as normal — the customer confirms they're 18 or over at checkout and your team checks photo ID at the counter, exactly like at the table.
For delivery, alcohol is off until you tick "Allow alcohol on delivery orders." in the Delivery settings — an explicit acknowledgement that your venue holds permission for alcohol off-sales and takes responsibility for age checks at the door. Without it, dishes marked as containing alcohol can't be ordered for delivery (the rest of the menu is unaffected).
What customers see
Customers reach ordering through one door: the Order tab on your customer pages (it appears as soon as any way of ordering is on) and the matching Order card on your venue page, both opening a chooser that slides up over the menu — Order to your table, Order for collection, Order for delivery, only the ones you have on, each with a line in your own words (the current collection wait; the delivery area and fee) — or going straight in when only one is on. A one-line Ready to order? pointer on the menu page opens the same chooser. They can also arrive from a direct ordering link (the Collection & delivery section has a copy-link button) or from a QR code from the QR codes hub — a link that names a channel goes straight to it. Their choice is remembered for the visit, with a small Change link in the ordering bar to switch (a table basket and a collection or delivery basket are kept separately). Having chosen collection or delivery:
- Delivery asks for the address first. Before the menu's Add buttons appear, a Where should we deliver? card asks for their address (a postcode search, with a type-it-in fallback); Check this address confirms it's inside your delivery area and tells them the fee up front — "We deliver to you — £2.50, free over £25" — plus the estimated arrival range ("With you in about 35–45 minutes"). An address you don't deliver to gets a polite "Sorry, that's outside our delivery area" with a Switch to collection button where collection is on, so nobody builds a £30 basket for an address you can't reach. A Change link swaps the address at any point, the checked address is carried into the checkout, and the checkout re-checks it at "Place order" regardless.
- Pick when. The checkout offers As soon as possible (the honest current wait) or Pick a time. With order-ahead on, the time picker groups its slots under day chips — Today, then the day names ("Thu", "Fri") — and a day with nothing left says so plainly. A slot that has hit its Orders per slot cap still appears in the list, greyed out and marked as full, so a busy evening reads as busy rather than as missing times.
- Outside your ordering hours the page says so honestly. With order-ahead on, the card reads "Closed right now — you can still order ahead for later." and the menu stays open with "Add dishes below and pick a time at the checkout."; with it off, the card names when the channel is back ("Closed today (bank holiday) — collection is back Tuesday from 12:00") and the menu is browse-only.
- A code? The Promo code box is always on the collection and delivery checkout, whatever you're running — a code that's wrong, paused, used up, not started yet or meant for a different kind of order gets a plain one-line message under the box. Whenever you have a live promo code that works on collection or delivery orders, a Have a code? link sits right under the basket's Go to checkout button and opens the checkout on the box — customers no longer discover it only at the last step.
- Loyalty rewards? Where your loyalty scheme lets members use rewards when ordering, two switches in the scheme set-up — Rewards on collection orders and Rewards on delivery orders (on unless you turn one off) — say whether a signed-in member sees the reward picker on these checkouts; switch one off and that channel shows no picker while the table carries on as before.
- They give their name and phone number (required, so you can reach them about the order) — plus any door notes on a delivery order. Signed-in customers can save delivery addresses to their account for next time.
After paying they get an itemised receipt email and a live order status page showing the honest journey — placed, preparing, then Ready to collect for collection, or Ready then Out for delivery then Delivered for delivery — with their order code and your venue's phone number if anything needs changing (customers can't cancel or change a remote order themselves once it's placed; the kitchen has already started). A "ready" email goes out automatically, and there's a per-venue Text when ready toggle to send an SMS as well — texts come out of your venue's SMS credits.
Orders your team keys in
Orders your team keyed in that haven't been paid for yet show in an amber Awaiting payment band at the top of the Orders screen's Counter layout (the Pass and Wall layouts never show it — nothing there is cooking) — the customer's name, collection or delivery, the amount, the time it was promised for, and whether their payment link is still live or has expired. The band is live: an order keyed in on another device appears here the moment its link is created, and leaves the moment the customer pays. Nothing in that band is being cooked: an order only reaches the kitchen once the customer pays. A card order's payment link lasts until shortly after the food is due (not a flat three days), so if the customer lost it or rang back later, Resend link (or Send a new link once it's expired) sends a fresh one — by email where there is one, and by text only if the first link went by text (so nobody is charged a credit twice over) — and re-times the food from your current wait, so the kitchen ticket is never for a time that's already passed. The prices stay as they were quoted. If the order has no email or phone on it, the fresh link is copied for you to share yourself.
When you key in a card order, the form asks how the link should go out, exactly as the booking payment-link dialog does: Email the link (ticked when there's an email — it costs nothing) and Text the link (uses 1 credit), which starts un-ticked because every text spends one of your credits. Either way you can copy the link and share it yourself. The payment-link email names the terms the customer agrees to by paying and links them, and once paid, the customer can re-read the terms they agreed to from their order status page (Order Terms).
After the order arrives
Once the order arrives, the same status page can offer two extras: for 24 hours the customer can add a tip — no fees are ever taken from tips (see Tips added after the order) — and, where your venue has customer reviews switched on, a "Leave a review" card lets them rate the order for your venue page (see How do customer reviews work?).
On the Orders screen
On the Orders screen, collection and delivery orders carry channel badges and sort by when they're due; the card's big button follows the channel — Ready to collect then Collected for collection, Ready then Out for delivery then Delivered for delivery — on an Everything screen too, even with orders split by station (one tap marks every station's part done, and the customer's status page shows the ready step). If a driver can't deliver, the order's panel has Delivery failed… — it records the time and a note for your records, the customer's status page says you'll be in touch, and the daily sales email counts failed deliveries per channel; reject and refund, or re-deliver, from the same panel.
If nobody sees an order
Two safety valves, both in the Collection & delivery section:
- Unseen-order alert — if a new remote order isn't acknowledged within your alert time (5 minutes by default), staff get a loud escalation alert.
- Pause automatically — optionally, if orders keep going unseen, new remote orders pause by themselves until someone resumes them. Nothing is ever auto-refunded — orders already paid stay on the board for your team.
There's also a manual Paused switch per channel for a breather mid-service — customers see an honest "back shortly" message, and orders already placed are untouched. On the Orders screen, the Pause button asks which orders to pause when more than one channel is on — everything, at-table only, collection only or delivery only — and each paused channel gets its own strip with a one-tap resume.
Related: How do I set up and run Order & Pay? · Different prices per channel · Kitchen printing · Tips added after the order · Saved delivery addresses · How do customer reviews work? · How do I connect Stripe?