How to set up online ordering
Turn on commission-free eat-in, takeaway and delivery ordering in DineKit, set your fulfilment options and manage orders from the kitchen board.
DineKit’s online ordering lets diners order and pay straight from your own website — for eating in, taking away, or delivery — with no commission taken on any order. Unlike Deliveroo or Just Eat, every order goes through your own site and every penny is yours; you only pay standard Stripe card fees.
Before you start
- DineKit installed and activated, with your menu built (dishes, prices and prep stations set up).
- A Stripe account of your own connected under Integrations, so you can take card payments — see Take card payments. Without Stripe connected, customers can still browse and build an order, but you won’t be able to charge their card.
- If you haven’t set anything up yet, start with Getting started — the setup wizard and dashboard checklist can create your order page for you.
Step by step
- In DineKit, make sure ordering is switched on for your business type (takeaway/delivery, or dine-in, or both) — this is set during the setup wizard and can be changed later.
- Get an order page live. The dashboard’s “Getting started” checklist can auto-create one for you in a click (usually at
/order); if you’d rather add it yourself, create a page anywhere on your site and add theshortcode to it. That shortcode is the whole ordering experience: menu, cart, item configurator and checkout.Order online
Loading menu…
- Connect Stripe under Integrations so the checkout can actually take payment — see Take card payments for the full walkthrough. Your Stripe secret key is never sent to the browser.
- Set your fulfilment options (eat-in, collection, delivery) and, if you offer delivery, your zones, fee, minimum order and expected time — see below.
- Add modifiers to any dishes that need them (removable ingredients, choose-your-sauce, extras with a price) in the menu item editor.
- Decide whether new orders should auto-accept or arrive for you to accept or reject first — see the accept-flow section below.
- Share the order page link (or a QR code pointing at it for order-at-table) and place a test order yourself with a Stripe test card to check the whole journey: order placed, email received, ticket printed, order appears on the Orders board.
Fulfilment options: eat-in, collection and delivery
DineKit supports three ways a diner can get their food, and you can offer any mix of them:
- Eat-in / order at table — pair a QR code on the table with your order page so a seated diner can order (and pay) without waiting for a server. Handy alongside table bookings.
- Collection (takeaway) — the diner orders and pays online, then collects in person.
- Delivery — set your own delivery zones, a delivery fee, a minimum order value, and an expected delivery time (ETA), so customers know upfront whether you deliver to them and what it’ll cost.
Delivery in DineKit is your own delivery — DineKit doesn’t supply drivers or a fleet, so you’ll still arrange your own driver or collection-in-hand. Live GPS driver tracking and a customer “track your order” link are on the roadmap but not available yet; today’s delivery orders are handled the same way as any other order, just flagged as delivery with an address attached.
Dish modifiers
Modifiers let a diner tweak a dish before it’s added to the cart, and are set up per dish in the menu item editor:
- Removable ingredients — e.g. “no onion”, “no mayo” — with no price change.
- Choose-your-options groups — e.g. a choice of sauce, size or side — with a minimum/maximum number of selections and an optional price added per option.
Modifier prices are recalculated on the server when the order is placed, so a customer can never manipulate the price by editing the page — the total you see on the Orders board is always the real, trusted total.
How orders arrive: auto-accept or receive & hold
You choose how new orders are handled in your ordering settings:
- Auto-accept — the order is confirmed straight away and heads to the kitchen; the customer’s card is charged immediately.
- Receive & hold — the order lands on the Orders board as “new” and waits for you to Accept or Reject it. Behind the scenes, DineKit places a hold on the customer’s card (an authorisation, not a charge) the moment they pay. If you Accept, the hold is captured and the customer is charged. If you Reject, the hold is simply released — nothing is ever taken from the customer’s card.
If you need to cancel an order after it’s already been captured, DineKit refunds the customer via Stripe automatically and flags it for a manual refund if that ever fails, so nothing falls through the cracks.
The Orders board
Every order — however it was placed — lands on the Orders board, grouped by day (Today / Yesterday / date), with a clear status as it moves through your kitchen (new, preparing, ready, and so on through to completed or cancelled).
Click any order to open its detail drawer, which shows:
- The items ordered, with any modifiers, and the customer’s details.
- Payment status — whether it’s authorised, captured/paid, refunded, or if a refund is still owed — with a link through to the matching payment in Stripe.
- A full history trail of what happened to the order and when.
- An email send log, so you can see every confirmation/kitchen email that went out and whether it actually sent.
- A resend receipt button, for when a customer says they never got their confirmation.
Deleting an order from the board doesn’t erase it — DineKit archives it instead, so every transaction stays on record; archived orders live in their own Archived tab and can be restored.
Kitchen tickets and printing
Each menu item has a prep station (kitchen or bar) set in the Menu Builder, so when an order comes through, its ticket is automatically grouped by station. From the Orders board you can print a full ticket, or just the kitchen or bar portion — each print is timestamped and shows a Printed chip so staff can see at a glance what’s already gone out.
If you’d rather not stand over a printer, add a printer email address in Settings: DineKit will automatically email a plain, thermal-printer-friendly ticket the moment an order is accepted (or auto-accepted), straight to a network email-to-print device. Settings includes buying guidance for Epson Connect and Star CloudPRNT devices if you need one.
Customer and kitchen emails
DineKit sends branded emails automatically at the right moments — order confirmation to the customer, and a cancellation email if you reject an order or refund it. Under Emails you can edit the branding (logo, accent colour, sender name, reply-to address, footer) and the subject/intro text for each template, with a live preview before you save. Every send is logged, so if a customer says an email never arrived you can check the log — and resend it — from the order’s detail drawer.
Tips
- Test with a real Stripe test card before going live, so you can see the full journey: hold, accept, capture, and a kitchen ticket arriving.
- If you offer both eat-in and delivery, keep the delivery minimum and fee realistic for your area — customers will see them before they check out.
- Use “receive & hold” if you want a chance to reject unusual orders (out of stock, kitchen closing) before ever taking payment.
- Not seeing order confirmation emails? Check the email send log on the order first — it tells you whether DineKit tried and failed, rather than never sending at all, which usually points to your host’s email/SMTP setup.
- Print routing only works once dishes have a prep station set in the Menu Builder — worth checking this after adding new dishes.