Get DineKit — Free
Online ordering

Commission-free online ordering for WordPress

Take takeaway, collection and delivery orders on your own restaurant website and keep every penny. DineKit is a free, open-source WordPress plugin — no marketplace commission, no monthly fee, just your own Stripe card fee.

Get DineKit — Free See the live order demo

The delivery apps are charging you to serve your own regulars

Here is the part nobody says out loud. When a customer who already knows your restaurant orders through Deliveroo, Uber Eats or Just Eat, you still pay the marketplace a cut of that order — even though you did the work of winning that customer in the first place. Deliveroo and Uber Eats commissions typically run around 25–30% per order. Just Eat is often quoted from roughly 14% plus a fixed charge of around 50p per order. On a £30 takeaway, that can be the difference between a healthy margin and barely breaking even.

The commission is only half the cost. The bigger loss is the relationship. On a marketplace your restaurant is one tile among dozens, ranked next to your direct competitors, discoverable mainly by whoever bids hardest for the top slot. The app owns the customer’s name, their email, their order history and their loyalty. You are handed a clipped ticket and a payout, minus the fees, days later.

So you are paying a premium rate to rent access to people you already earned — and you never get to build a direct line back to them. That is a fine deal for the marketplace. It is a poor one for you.

A restaurant online ordering system that lives on your own site

DineKit turns your existing WordPress website into a complete ordering platform. Customers browse your menu, customise their dishes, choose eat-in, collection or delivery, pay by card on your page, and their order drops straight onto your kitchen board. There is no marketplace in the middle, so there is no commission. You keep 100% of every order — you only ever pay your own Stripe card-processing fee, exactly as you would on any card sale.

Because it runs on your domain, every order also belongs to you: the customer, their details and their history are yours to keep, not a marketplace’s asset. And it is genuinely free and open source — no licence key, no per-order levy, no locked features waiting behind an upgrade. You bring your own Stripe account, and DineKit does the rest. Drop the ordering page in with a single shortcode, [dinekit_order], and you are taking orders.

Everything your ordering page needs, built in

The real, shipping feature set — not a wish list.

💷

Keep 100% of every order

No commission and no monthly fee. The only deduction is your own Stripe card fee — the same fee you would pay on any card transaction anywhere.

🍽️

Eat-in, collection and delivery

Offer any mix of fulfilment types. Delivery captures the address, adds your delivery fee and minimum, and moves through out-for-delivery and delivered statuses.

📱

Order at the table by QR

Print a QR code for each table so dine-in guests can browse and order from their phones. It reuses the same menu and checkout as your takeaway page.

🧩

Dish customisations

Let diners remove ingredients and pick from choose-an-option groups with their own prices — every modifier is priced correctly through to the total.

🖨️

Printable kitchen tickets

Orders group by prep station — kitchen or bar — and print as clean tickets. An email-to-printer option can fire a thermal-friendly ticket automatically on accept.

Accept vs receive-and-hold

Auto-accept quiet periods, or hold new orders for a manual Accept or Reject when the kitchen is slammed — so you never take an order you cannot cook.

🔒

Server-side price recompute

Totals are always recalculated on your server and never trusted from the browser, so a tampered basket cannot underpay you. Order numbers run in a clean sequence.

📋

Full order detail drawer

Open any order to see items, customer, payment status and its complete status history, resend the receipt, and see a log of every email that was sent.

DineKit vs the delivery apps

The same orders, without the middleman clipping each ticket.

What you needDineKitDelivery marketplaces
Commission per order£0 — you keep 100%~14%–30% (plus per-order fees)
Monthly platform fee£0 — free foreverVaries; sign-up and admin fees common
Who owns the customer & dataYou do — it is your siteThe marketplace owns it
Card processing feeYour own Stripe rate onlyBundled inside their commission
Menu & pricing controlFull control, changes go live instantlyLimited by their templates and rules
Shown next to competitorsNo — customers are on your pageYes — you are one tile among many
Open source & self-hostedYes, on your WordPress siteNo — closed marketplace

Takeaway ordering with no commission — and no compromise on the money side

Commission-free does not mean cutting corners on payments. DineKit uses Stripe’s on-page Payment Element, so cards, Apple Pay and Google Pay are all handled right on your site with no redirect — the customer never leaves your domain. Card data never touches your WordPress database, which keeps you at the simplest PCI level, and your Stripe secret key is encrypted at rest.

The hold-don’t-charge flow is where DineKit earns its keep operationally. When you run orders in receive-and-hold mode, the payment is authorised but not captured. Accept the order and the card is captured; reject it and the authorisation is released, so the customer is never charged for food you could not make. If an order is cancelled after it was captured, DineKit refunds it and records the whole trail. Fulfilment is driven by Stripe webhooks — not the customer’s browser — so an order is only ever marked paid when the money genuinely settled, even if the diner closed the tab on the thank-you screen.

Delivery today, live driver tracking on the roadmap

Delivery is live now in its non-tracked form: customers choose delivery at checkout, you capture the address, apply a delivery fee and minimum spend, and progress the order through out-for-delivery and delivered. Everything you need to run your own delivery is working today. To be straight with you about what is not here yet: live GPS driver tracking and a customer “watch your driver on a map” link are on the roadmap, not available right now. They will need a Google Maps API key and arrive as a later addition. We would rather tell you plainly than imply a feature that has not shipped.

Common questions about DineKit online ordering

Is DineKit really commission-free?
Yes. DineKit charges no commission and no monthly fee on orders. The only cost per order is your own Stripe card-processing fee, which you would pay on any card payment. You keep everything else.
What does DineKit cost?
The plugin is free and open source. You install it on your own WordPress site at no charge. You only need your own Stripe account to take card payments, and Stripe’s standard per-transaction fee applies to those payments.
Do I need Stripe to take orders?
You need Stripe to take card payments on the page. DineKit still works with Stripe switched off — you can run collection or pay-on-arrival ordering — but to charge cards online you connect your own Stripe keys, which takes a couple of minutes.
Can I offer collection and delivery?
Yes. You can offer eat-in, collection and delivery in any combination. Delivery captures the customer’s address and applies your delivery fee and minimum spend, then moves through out-for-delivery and delivered statuses.
Does it support live driver GPS tracking?
Not yet. Non-tracked delivery is fully live today. Live GPS driver tracking and a customer track-your-order map link are on the roadmap for a future release and will require a Google Maps API key.
Can customers customise their dishes?
Yes. You can let diners remove ingredients and pick from choose-an-option groups, each with its own price. Every modifier is priced correctly all the way through to the order total, which is recomputed on your server.
How do orders reach my kitchen?
Orders land on your admin order board and can be grouped and printed by prep station, kitchen or bar. An email-to-printer option can automatically send a thermal-friendly ticket when an order is accepted.
Can I stop orders when the kitchen is busy?
Yes. Run orders in receive-and-hold mode so new orders wait for you to Accept or Reject. Accepting captures the payment; rejecting releases the authorisation so the customer is never charged.

Online ordering works best alongside the rest of DineKit: build your dishes in the menu builder, let diners order from their table with a QR code menu, take payment through restaurant card payments, and run the room with the free restaurant POS.

Ready to give it a go?

DineKit is free, self-contained and live in minutes. Own your menus, your bookings and your data.

Get DineKit — Free