plugin-icon

DineKit – Restaurant Menu, Online Ordering, Table Reservations & POS

Door weblevelup·
Run your restaurant on WordPress — menus & allergens, online ordering, table bookings and card payments. Commission-free, no monthly fees.
Beoordelingen
5
Versie
1.2.18
Actieve installaties
10
Laatst bijgewerkt
Aug 5, 2026
DineKit – Restaurant Menu, Online Ordering, Table Reservations & POS

DineKit turns WordPress into a complete, commission-free restaurant platform — menus, online ordering, table bookings and card payments — with nothing to pay per cover, per order or per month. You bring your own Stripe account and keep 100% of every sale.

Menus & allergens

  • Menu builder — menus (Lunch, Dinner, Drinks…), sections and dishes with photos, badges and multiple prices; drag-and-drop ordering with autosave.
  • Seven designer templates, one click apart — each built for a venue type: Signature (the modern default), Maison for fine dining, Counter for fast-casual, Noir for evening menus and bars, Bistro, Fresh for cafés and brunch, Mono for minimalists. The Fraunces display font ships inside the plugin — no external font services.
  • Design Studio — click any part of the live menu preview to style exactly that element: per-element text sizes, colours and corner rounding, updating live as you drag. Your accent colour carries over to the Order Online page automatically, so everything matches your brand.
  • UK-14 allergens built in — the 14 regulated allergens pre-loaded with icons, tooltips, sub-sources (e.g. “cereals containing gluten wheat, barley”) and a printable matrix (Natasha’s Law friendly), plus your own custom allergens and dietary labels. Declare “may contain” traces separately — quieter badges on the menu, ± in the matrix, and diners avoiding an allergen also avoid traces of it.
  • Bulk-edit in a spreadsheet — export the whole menu to CSV, tweak prices and dishes in Excel or Google Sheets, re-import to update everything at once (never duplicates).
  • Costs, margins & calories — record a dish’s cost to make and see its gross-profit margin (kept private), and show calories on the public menu for UK calorie-labelling.
  • QR table cards and A4 posters that open your live menu on a phone, and Menu / MenuItem / LocalBusiness schema.org output for SEO.
  • Opening hours with holiday overrides and a live “open now” status.

Online ordering

  • Takeaway, collection and delivery ordering with a diner-facing menu, dish customizations (removable ingredients, choose-your-options with prices) and an accept / hold / refund workflow that only captures payment when you accept.
  • A live orders board — new orders appear by themselves (no refreshing) with a count in the browser tab; every order carries a “where’s it from” badge with a channel filter; history is day-scoped and searchable by date; phone orders are keyed in on a fast POS-style pad.
  • Pre-orders days ahead — optionally let diners order for later in the week: a Day picker at checkout, only your real opening hours offered, kitchen capacity respected per day, and scheduled orders held in their own group until you accept.
  • Per-slot capacity — cap how many online orders each time slot can take so a rush never swamps the pass; full slots grey out in the diner’s picker.
  • Contactless QR “order at the table” so diners order from their phone — straight onto that table’s tab, or pay-upfront.
  • Kitchen Display (KDS) — a live New Preparing Ready board for the kitchen, with per-ticket timers, item lists and notes, one-tap advance and a full-screen mode for any tablet or kitchen TV.
  • Kitchen & bar ticket routing — printable tickets per station, or emailed directly to a kitchen printer on accept.
  • 86 a dish in one tap — sold-out dishes stay on the menu (SEO-safe) marked unavailable and can’t be ordered anywhere.
  • Branded, editable email templates for order and booking notifications, with a live preview.

Point of sale — Take Order

  • A real POS for dine-in service, in any browser on any tablet — no proprietary hardware, nothing to lease.
  • Live floor plan that reads your diary — Take Order opens on your real room layout: every table colour-coded by how long it’s been seated (green amber red against your turn time) with its stage (Seated Ordered Cooking Served), parties seated from the bookings diary lit before they’ve even ordered, reserved-soon warnings on free tables (“free until 22:00”), and settled tables flagged for clearing. Starting an order on a free table books the walk-in into the diary automatically — every screen tells the same story.
  • The till knows the guest — open a table and see who’s sitting there: name, VIP flag, allergies, and their standing notes (“always tops up the wine”), pulled from the same guest record the diary uses.
  • Tabs with coursing — build each table’s order and fire courses in rounds; firing confirms exactly what’s being sent and takes a ticket note (“allergy at seat 2”) that shows on the Kitchen Display and prints on station tickets.
  • Bill splitting — evenly, by item, or partial payments; service charge and tips.
  • Every tender — cash with change calculation, card via a Stripe smart reader, pay-by-QR from the guest’s phone, vouchers and comps; manager-gated voids.
  • Mistakes are fixable — pressed voucher but meant cash? Wrong amount? A manager can change a payment’s method in place, remove a mis-keyed payment (the tab reopens to settle correctly) or reopen a tab settled by accident — every amend logged, so the books always tally.
  • Keeps working when the internet drops — carry on opening tables, adding rounds, firing to the kitchen and taking cash through an outage. Everything is held on the tablet and syncs itself the moment you’re back, with nothing lost and nothing charged twice.
  • Cash-up with opening float and X/Z reports at close.
  • Loyalty built in — members earn points on spend and redeem them as a bill discount.

Bookings & events

  • Commission-free table reservations — take bookings on a drag-and-drop floor plan with joinable tables, via a public reservation form (block + [dinekit_booking] shortcode) with live availability, waitlist and covers-per-hour pacing, deposits, and a booking diary with email notifications and printable slips. Repeat no-shows get a red flag so you can ask for a deposit.
  • Full-width service timeline — the whole service at a glance with a live “now” line and the past greyed out; drag a booking exactly where you want it, click to seat or edit. Walk-ins are a one-tap popup with the best-fit table pre-selected.
  • Set-menu events with per-guest pre-orders via a share link — guests choose their courses and flag allergens; the kitchen gets a consolidated prep sheet.

Payments, guests & staff

  • Card payments with your own Stripe keys (encrypted at rest) — booking deposits, order payments and at-the-table card-present payments via Stripe smart readers, with Apple Pay and Google Pay. You keep 100%.
  • Unified guest CRM — one profile per guest across bookings, orders and loyalty: lifetime spend, visits, average order, allergies, VIP flag, service notes and past no-shows — shown on the Guests screen, on every booking, and at the till.
  • Staff rota & labour — build the week’s rota in colour-coded role bands: split shifts, automatic unpaid-break deduction, day-off and sick markers, holiday requests approved right on the rota, contracted-hours warnings and a live labour-cost total. Today and tomorrow highlight themselves; copying a day copies the whole day.
  • Text messages via your own Twilio (beta) — booking confirmations, automatic reminders, “your table is ready” and “order ready for collection”; bring your own Twilio account, pay their raw prices, every switch off by default (see External Services). Write your own message wording with placeholders like {name} and {time}, with a live preview; on a paid Twilio account, UK venues can send from their restaurant’s name instead of buying a number.
  • Staff logins with a role-to-permission matrix and an activity/audit log, plus review-request emails to win diners back.
  • Reports — covers, revenue, best-selling dishes and no-show rate, with CSV export.
  • GDPR-ready — WordPress’s Export / Erase Personal Data tools cover everything DineKit stores, with anonymised financial records kept for your accounts.
  • Direct support from your dashboard — message the DineKit team without leaving WordPress (optional; see External Services).

Install it as an app on any phone or tablet — the staff app runs from its own home-screen icon, keeps taking orders and cash even when the internet drops (syncing itself once you’re back), and many tablets stay in sync automatically (an order or booking made on one appears on the others within seconds).

No WooCommerce required and no page builder needed. The menu, allergens and QR codes work with no external accounts; card payments use your own Stripe account (see External Services below). Works with any theme, on any host.

Built by Web Level Up, a UK web agency that builds commercial WordPress software.

External services

DineKit’s optional payments feature (booking deposits and online order payments) uses Stripe to take card payments. Stripe is contacted only after you enable it and enter your own Stripe API keys under DineKit Integrations, and only on requests that involve a payment:

  • When a diner pays, DineKit asks Stripe to create a payment by sending the amount, currency, your site URL and the related booking/order reference to Stripe’s API (https://api.stripe.com).
  • When you connect Stripe or set up its webhook, DineKit calls Stripe to validate your keys and register payment notifications.
  • On pages where a payment can be made, Stripe’s official Stripe.js library is loaded from https://js.stripe.com so card details are entered directly with Stripe and never reach your server (PCI SAQ-A).

If you do not enable payments, DineKit makes no external requests. Stripe is a third-party service; by using it you agree to Stripe’s terms and privacy policy:

  • Terms: https://stripe.com/legal
  • Privacy: https://stripe.com/privacy

DineKit’s optional text message (SMS) feature uses Twilio, with your own Twilio account and credentials (DineKit Integrations Text messages). Twilio is contacted only when SMS is enabled and a notification you turned on actually fires (a booking confirmation or reminder, a “table ready” tap, or a collection order marked ready): DineKit sends the recipient’s phone number and the message text to Twilio’s API (https://api.twilio.com) so Twilio can deliver the text. Your Twilio auth token is stored encrypted on your own site. If you do not set up SMS, Twilio is never contacted. Twilio is a third-party service; by using it you agree to Twilio’s terms and privacy policy:

  • Terms: https://www.twilio.com/en-us/legal/tos
  • Privacy: https://www.twilio.com/en-us/legal/privacy

DineKit’s optional direct support feature (DineKit Support) sends your support request to Web Level Up, the makers of DineKit, at https://weblevelup.co.uk. If you have never used Support, this service is never contacted:

  • When you send a request or reply, DineKit transmits the name, email address, subject and message you typed, plus your site address (used to link replies back to your dashboard and keep your ticket history together).
  • If — and only if — you tick the “include my site details” box, your WordPress, PHP and DineKit version numbers are attached to help with debugging.
  • Opening the Support screen fetches your own site’s ticket history from the same service.
  • Once you HAVE made a support request, DineKit periodically checks that same service for replies to your own requests (roughly every 10 minutes, sending only your site’s support token) so the notification bell can tell you when the team has answered. No other data is sent, and the check stops entirely if you uninstall or never had a request.

If you prefer not to use direct support, the Support screen also links to the plugin’s free forum at https://wordpress.org/support/plugin/dinekit/ — using the forum sends nothing to Web Level Up. Web Level Up privacy policy: https://weblevelup.co.uk/privacy-policy/

When you deactivate DineKit, an optional questionnaire asks why, so a free plugin can learn what it got wrong. Answering is entirely voluntary and nothing is sent unless you choose an answer and press “Send & deactivate” — choosing “Skip & deactivate” contacts nobody, and deactivation always goes ahead either way. If you do send it, DineKit transmits to Web Level Up at https://weblevelup.co.uk: the answer you picked and anything you typed in the box; your DineKit, WordPress and PHP version numbers; and how far you got with the plugin (days installed, and how many menus, dishes, orders and bookings you had — counts only, never your menu content, your customers or your takings). Your email address and site address are included only if you tick “You can email me about this”. The dialog lists all of this before you send. Web Level Up privacy policy: https://weblevelup.co.uk/privacy-policy/

Development

DineKit is open source (GPLv2+). The complete human-readable source — including the React admin application and the build tooling used to generate the bundled dist/main.js — is publicly available and maintained at:

https://github.com/nikutx/dinekit

To build the admin app from source: npm install then npm run build (Vite). See the repository README for the full development setup.

Gratisvoor betaalde abonnementen
Door te installeren, ga je akkoord met de Servicevoorwaarden van WordPress.com en de voorwaarden voor plugins van derden.
Getest tot
WordPress 7.0.2
Deze plugin kan worden gedownload, zodat je hem op je kan gebruiken.