Creating a seamless food ordering experience with WooCommerce

If you're looking to create a food delivery or takeaway service for your restaurant, WooCommerce for restaurants is a great solution. With a WordPress food delivery plugin and WooCommerce, setting up an online ordering system on your website is easy. Keep reading to learn how you can implement WooCommerce for restaurants and create a seamless online ordering experience for your customers.

In this tutorial, we'll be focusing on how to create a restaurant ordering system using WooCommerce for restaurants. Restaurants can greatly benefit from having an online food ordering system because:

  • It allows customers to place their orders directly from the restaurant's website, saving them time and effort.
  • Best online ordering for restaurants can also help manage their orders more efficiently and reduce the workload on their staff.

Whether you're a seasoned WooCommerce user or just starting out, this free tutorial will guide you through the process of setting up a restaurant ordering system step by step. By the end, you will have a fully functional online food ordering system. It will allow customers to place their orders, select their pickup or delivery options, and make payments securely.

WooCommerce restaurant plugin
And the best part?

Your WooCommerce for restaurants ordering system will be 100% yours. You own your data, and you get to keep 100% of your profits.

Sound good? Let’s get started!

Why a WooCommerce for restaurants plugin is the best (and cheapest) way to take food orders online

Before we dive into the tutorial, let's look at why a WooCommerce food plugin for restaurants is the best option for taking food orders online.

Many restaurants use hosted third-party services like Just Eat, Uber Eats, Deliveroo and Grubhub. By listing your restaurant with these platforms, you have access to a huge market of potential online food delivery customers. However, it’s not ideal for everyone.

Hosted platforms take a big cut of the revenue from your online restaurant orders. For example, Just Eat takes 14% at the time of writing. Whilst they have a massive user base, you're competing with other restaurants on the same platform, so it's easy for your restaurant to get lost.

As with any hosted system, you don't have full control over your customer data. You have no control over the functionality of your online restaurant ordering system - you can't customize it or add new features.

WooCommerce restaurant plugin with opening hours

If you’re looking for a low-cost Just Eat alternative without the fees, this tutorial will teach how you to create a bespoke online food ordering system.

We'll do it using a WordPress food delivery plugin. This means that you don't have to worry about the problems of affiliating to a third-party platform. In addition, having a WooCommerce for restaurants food ordering system on your main restaurant website will make your business appear more professional. It encourages customers to spend more time on your site, building loyalty.

What will my WooCommerce for restaurants ordering system cost?

Online food delivery system integrated with kitchen

There are financial advantages to getting a WordPress site for your restaurant. Almost all of the costs are fixed one-off, upfront fees. As a result, rather than losing a percentage of every sale, the benefit improves with every order you receive. You start saving money almost immediately.

These are the costs of building the food ordering website described in this tutorial:

  • WordPress content management system – free of charge.
  • WooCommerce plugin – free of charge.
  • WooCommerce Restaurant Ordering plugin.
  • WordPress theme – free of charge (you could buy a premium WooCommerce restaurant theme for ~$65, but this tutorial will show you how to add the best online ordering for restaurants website using a free theme).
  • Ongoing web hosting – web hosting comes at all different price points to suit any size of business. We recommend Kinsta's premium WordPress hosting which is ideal for an ecommerce website with an online restaurant ordering system. For lower budgets, SiteGround is also good.
  • Payment processor fees – if offer online payment methods (which isn’t essential) then your payment gateway will take a percentage of the fees. This is normally a few percent - much cheaper than Just Eat’s 14%.

As you can see, setting up a WordPress food delivery system plugin yourself is far cheaper than using a third-party platform such as Just Eat.

Still not convinced? Let me show you how simple it is to set up a WooCommerce for restaurants ordering system.

Should I create a DIY WordPress food delivery website, or hire a developer?

Below, I'm going to tell you how to create a WooCommerce for restaurants ordering website using a simple WordPress food delivery system plugin. This is a great option and you don't need any technical know-how.

If you'd rather have someone else set up the website for you, just forward this tutorial to any WordPress developer.

To build your own WooCommerce for restaurant order system, keep reading and I'll show you how.

How to create a WooCommerce for restaurant ordering website

In this video tutorial, you can watch me create a restaurant online food ordering system. Build yours alongside me, or read the written tutorial below.

The following tutorial covers every step of setting up a WooCommerce restaurant website:

  1. Create a WordPress websiteWordPress is the world's web building platform. It powers your overall website and makes it easy to add pages and edit content.
  2. Install WooCommerceWooCommerce is the world’s top e-commerce platform, powering over 41% of online stores. We'll use WooCommerce to add products and categories, take payments online (including PayPal and credit card), and add delivery and collection.
  3. Install WooCommerce Restaurant OrderingThis plugin converts your WooCommerce store into a fully-fledged food ordering system, displaying your products in a user-friendly one-page restaurant ordering system so that customers can browse, pick, and customize their orders. It also lets you set opening times and prevent ordering when you're closed.
  4. Add options to your food productsI'll show you 2 easy ways to add extra options for your food items, such as size choices or selling pizza toppings.
  5. Delivery and collectionWe'll discover how to add a range of delivery and collection options.
  6. Bonus tipsFinally, I'll share some extra tips on perfecting your WooCommerce restaurant ordering system. This includes accepting tips online to increase your average order value; selling discounted meal deals; and online ordering for multiple restaurant chains.

1. Create a WordPress website

This tutorial assumes that you already have a WordPress website for your restaurant. If not, there are loads of online resources to help you get started with WordPress.

Since this tutorial is aimed at non-coders, I recommend using a WooCommerce-ready theme for the design of your website. The screenshots in this article were all created using Storefront. This is a high-quality, free WP theme from the makers of WooCommerce. If you prefer, then you can use a WooCommerce restaurant theme such as Delicio.

Delicio theme uses Woocommerce Restaurant Ordering plugin by Barn2
The WooCommerce Restaurant Ordering plugin with the Delicio theme

2. Install and set up WooCommerce

Once you’ve got a WP website with a WooCommerce-ready theme installed, it's time to install WooCommerce. This will be the core of your online restaurant food ordering system and the basis for installing your WordPress food delivery system plugin, providing behind-the-scenes e-commerce features such as the shopping cart, checkout, and online payments.

However, we won’t be using Woo to display your food menu items. You’ll need WooCommerce Restaurant Ordering for that, which we’ll cover in Step 3.

2a. How to install WooCommerce

  1. Log into the WordPress dashboard for your website.
  2. Go to Plugins → Add New.
  3. Search for 'WooCommerce', and install and activate the plugin.
  4. A button will appear towards the top of the WordPress admin prompting you to enter the WooCommerce setup wizard. Go through the wizard and enter your currency, tax details, etc. (Ignore shipping as we'll do this in step 5). Tell the wizard to create the basic pages needed for WooCommerce such as Shop, Cart, and Checkout.
  5. In the payment options section of the setup wizard, choose 'PayPal Payments Standard' and enter your PayPal email address. This is the quickest way to get started and you can always set up other payment options later. If you don’t want to take online payments, select 'Cash on delivery' and your restaurant staff or delivery drivers can take payment instead. To take credit/debit card payments without PayPal, then select 'Stripe' and follow the onscreen instructions.

2b. Create product categories for your restaurant menu

Online restaurant ordering WooCommerce categories
Most restaurant menus are divided into sections: Starters, Pizza, Salads, Desserts, Drinks, and so on. You need to create a separate WooCommerce product category for each section of your restaurant menu:

  1. Look at how your food delivery menu is structured and write a list of categories.
  2. In the WordPress admin, go to Products → Categories.
  3. In the 'Add New Product Category' section on the left, create a category for each section on your online menu. Add a Name and Slug, plus a description if you want to display some introductory text for the category on the food order form.
  4. Click the blue 'Add New Product Category' button.

The WooCommerce product categories you’ve just created for your menu will appear in a list on the right-hand side of the page.

2c. Add each dish or meal as a WooCommerce product

Next, add each food from your restaurant menu as a WooCommerce product.

In the WordPress admin, go to Products → Add New. Add the information highlighted in the screenshot below:

  1. Title – The name of the dish to appear in the online restaurant ordering system.
  2. Long Description (optional) – This can appear in the lightbox popup for each food (if you enable lightboxes in step 3). It's ideal for listing allergens and nutritional information.
  3. Product Data – Choose a product type. If your restaurant only offers 1 version of the dish then choose 'Simple Product' and add the price. If you offer choices (e.g. Small, Medium, and Large), choose 'Variable Product' and add the remaining information in step 4.
  4. Product Short Description (optional) – Use this to display extra information about the meal. This can appear on your one-page restaurant order form. It's a good place to list nutritional symbols, such as "GF, VG" for a dish that is Gluten Free and Vegan.
  5. Product Categories – Tick the menu category that the food should appear in. (WooCommerce lets you select multiple categories but most online restaurant ordering systems would have 1 category for each food, just like a printed menu.)
  6. Product Image (optional) – Click 'Add Featured Image' and upload a picture of the food. Restaurant food photography is a skill and it’s worth getting this done professionally. If your online restaurant order form will have small images then keep the file sizes small.
  7. Publish – Click the blue 'Publish' button.
WooCommerce restaurant ordering system

3. Install WooCommerce Restaurant Ordering

By now you've set up WooCommerce, added your dishes and structured them into the sections on your restaurant menu. Next, it's time to create a one-page food order form so that hungry customers can quickly build their meals and order online.

We'll do this using the powerful WooCommerce Restaurant Ordering plugin. WooCommerce provides its own layouts but they're not suitable for an online food ordering system. As a WordPress food delivery plugin, WooCommerce for Restaurant Ordering lists your menu in a one-page order form which is perfect for food ordering.

3a. Install WooCommerce Restaurant Ordering

  1. Buy the WooCommerce Restaurant Ordering plugin.
  2. Download the plugin files and copy your license key from the order confirmation page or email.
  3. In the WordPress admin, go to Plugins → Add New → Upload.
  4. Upload the zip file for WooCommerce Restaurant Ordering and activate the plugin.
  5. Go to WooCommerce → Settings → Restaurant and enter your license key. Here, you can also choose the default settings for your restaurant food order forms. Use these to configure the order forms. Also add opening times so that people can only order food while you're open.
WooCommerce Restaurant Ordering plugin settings

3b. View your restaurant ordering page

When you activated WooCommerce Restaurant Ordering, the plugin automatically created a one-page food ordering system for you. This lists all your food products, divided by category.

Find the page under the Pages section of the WordPress admin, and see how it looks!

WooCommerce resturant plugin flexible food order forms
These are just some of the many ways you can list foods with WooCommerce Restaurant Ordering

Next, you need an easy way for customers to review and complete their restaurant orders. The best way to do this is to install the WooCommerce Fast Cart plugin. This adds a floating cart popup so that customers can make changes, enter their details and check out without leaving the page. It's really flexible and you can choose whether to open the popup automatically as soon as customers add foods to their order or to display a clickable floating cart icon instead. 

WooCommerce restaurant floating cart
A website using WooCommerce Restaurant Ordering with the Fast Cart plugin.

2c. Create more food order forms (optional)

So far, you've learned how to use the default restaurant ordering page, which lists all your foods by category. If you need more flexibility, then you can also create food order forms individually.

You can do this by adding a [restaurant_ordering] shortcode anywhere on your site. Use the shortcode options to choose which categories to include, and customize the settings. This might be useful if:

  • You're listing foods on more than one page of your website, for example with one page per category.
  • You'd like to use different settings for each food order form, such as showing images or descriptions for some categories and not others.

4. Add options to your food products

If you only offer 1 version of each dish, you can ignore this section. If you want to give customers a choice – for example to choose a size or select pizza toppings – then you need product variations or add-ons.

Variable products are built into WooCommerce. You can list each type of variation as a dropdown list alongside each product in your online restaurant ordering system. Customers can select 1 variation from each list.

If you want customers to be able to make multiple selections, then you need add-ons instead. You can add more flexible options with the WooCommerce Product Options plugin. It works perfectly with WooCommerce Restaurant Ordering plugin we're using for the food order system. You can use it to add checkboxes, radio buttons, multi-select dropdowns, text input fields where the customer can type a special message, and more. For example, a WooCommerce pizza restaurant will need Product Options so that customers can order as many extra toppings as they like.

WooCommerce restaurant variations and add-ons
An example of a pizza with product variations for Pizza Size, and add-ons for Crust Style and Extra Toppings.

Next, I'll show you how to add both types of extra product options. You can use them separately or together in your WooCommerce restaurant ordering system.

Adding product variations

  1. Select 'Variable product' in the 'Product Data' section of the 'Add/Edit Product' page.
  2. Go to the 'Attributes' tab, add the product information that customers will be choosing between, and tick 'Used for variations'.
    WooCommerce restaurant ordering system
  3. Go to the 'Variations' tab.
  4. Either select 'Create variations from all attributes' from the dropdown, or add each variation individually and click 'Go'.
  5. Click the little triangle arrow that appears when you hover over a variation and add the variation price and any other information.
    Add Variation WooCommerce restaurant ordering system
  6. Finally, click 'Save changes'. When customers click on food in the restaurant order form, they can choose the variations from a lightbox before adding it to the cart.

How to create Product Add-Ons

  1. Buy, install, and activate the WooCommerce Product Options plugin.
  2. Go to Products → Product Options in the WordPress admin.
  3. Add as many options as you like, structured into groups.
  4. When customers click on a food product in your WooCommerce restaurant order form, the add-ons will appear for them to select in a lightbox.
WooCommerce restaurant order form with extra options

5. Set up delivery, collection and delivery time slots

WooCommerce offers lots of delivery options, which are perfect for restaurants. The free WooCommerce plugin lets you set up delivery areas and delivery or collection options. You can also use an additional plugin to let customers choose a specific delivery time or collection slot.

5a. Delivery areas and options

You can find these in the WooCommerce → Settings → Shipping section of the WordPress admin.

Here are some suggested shipping options that are useful for online restaurant ordering:

  • Shipping zonesCreate one or more shipping zones for your different delivery areas. For example, if you offer free shipping for certain zip codes and charge for delivery in other areas, then set up 2 shipping zones. If you also offer collection, add a third shipping zone so that people can 'click and collect' wherever they live.
  • Shipping optionsAdd one or more delivery options for each shipping zone. For example, your 'Local Delivery Area' shipping zone might have a 'Free Delivery' option for orders over $20, a $5 'Flat Rate' option for lower value orders, and a 'Local Pickup' option for customers wishing to collect their takeout meal.
WooCommerce restaurant delivery options
An example of WooCommerce delivery options for a typical restaurant

Let customers check the delivery area before they start ordering

To make your online restaurant ordering system more user-friendly, I recommend adding details of your delivery area elsewhere on your site. Here are some ideas on how you can do this:

  • Woo Delivery Area Pro pluginAdd a 'Delivery Area' page to your restaurant website.
  • If your website has a sidebar (right or left column), add a widget about your restaurant's delivery area. Or even better, add a custom Google map showing your online food delivery area.
  • Install the Woo Delivery Area Pro plugin so that customers can check they're in your delivery area before they start building their meal.

5b. Delivery time slots

Some restaurants like to deliver their online orders as soon as they're ready. Others let customers order in advance and choose a specific time slot. As a restaurant, you might want to take up to 5 online food orders in each half-hour period, and make sure they order at least 15 minutes in advance of their time slot. You can do this with the WooCommerce Opening Hours & Chosen Times plugin.

This excellent plugin lets customers choose a delivery date and time slot, subject to your restaurant's opening hours and capacity. You can restrict the number of bookings per time slot. You can specify how long customers must place their orders before their time slot, giving the kitchen plenty of time to prepare the meal.

6. Bonus tips

Before we finish, I'll share some more top tips for perfecting your WooCommerce restaurant ordering system. You'll learn how to accept tips online, sell meal deals, and more. If you operate a chain of restaurants, then you'll also learn how to adapt this tutorial to set up the best online ordering for restaurants for multiple sites.

Encourage customers to leave a tip

All over the world, restaurant customers expect to leave a tip. Don't miss out just because you're selling online! You can add tipping to your WooCommerce restaurant website using the WooCommerce Donation Or Tip On Cart And Checkout plugin.

This handy plugin adds a 'Tip' field to the WooCommerce checkout page. Customers can enter the value of their tip, significantly increasing your average order value.

Most restaurant customers add a tip of 10-15% of the total order value, depending on your country. Use the plugin to set a default tip as a percentage of the order value. To encourage bigger tips, set the default tip at the upper end of the usual amount in your country. Customers can then override the suggested tip as required.

Manage your delivery drivers

Most WooCommerce restaurant ordering systems use local drivers to deliver the orders.

You can manage your delivery drivers outside of the website. Alternatively, you can save time with the free Delivery Drivers for WooCommerce plugin. This WordPress plugin automates many of the manual tasks, connecting your drivers with your online systems and the customer.

Sell restaurant meal deals

WooCommerce Quantity Manager restaurant plugin

Lots of WooCommerce for restaurants websites provide special offers and meal deals. These are fantastic incentives to encourage customers to buy more.

Use WooCommerce for restaurants ordering with the Quantity Manager plugin to control how many items customers can buy from each category. For example, you might sell a meal deal for two people where they can buy 2 starters, 2 mains, and spend up to $15 on side dishes.

You can also use the official WooCommerce Dynamic Pricing plugin to create restaurant deals and special offers. For example, you can create buy one get one free (BOGOF) meal deals, or buy one pizza and get 50% off your second one. These deals can be global or specific to a category, so you can offer deals on pizzas or sandwiches while keeping the side dishes and desserts at full price, and so on.

Mobile ordering for restaurants

WooCommerce doesn't come with a mobile app for customers to order via their smartphones. However, most WordPress themes are fully responsive, which means they're mobile-friendly and look great on any device.

This means that your customers can view your foods and order from your restaurant online using their device of choice - no need to worry about setting up a separate mobile app!

Managing orders in your WooCommerce for restaurants' food ordering system

There are many ways to manage the online food orders that your restaurant receives in WooCommerce:

Email notification of new restaurant orders

When you receive an order, you will receive an email notification from WooCommerce. Your kitchen staff can monitor this email address and be notified as soon as an order arrives.

If you have a busy restaurant with many online orders, then keep the WordPress admin open on your screen during your restaurant opening hours. Train your staff to refresh the WooCommerce → Orders page regularly so they can take action as soon as a food delivery order is received.

WooCommerce for restaurants mobile app

The official WooCommerce iOS mobile app lets you view and manage restaurant orders from any Apple iPhone or iPad. It's often more convenient for restaurant owners and staff to use mobiles or tablets than desktop computers.

Auto-print new food orders to the kitchen

You can integrate your WooCommerce for restaurants' food ordering system with a GPRS printer. This will automatically print new online restaurant orders as soon as they're received. We recommend the WooCommerce Automatic Order Printing plugin.

Receive an alert when you receive a WooCommerce for restaurants order

Use YITH WooCommerce Desktop Notifications to automatically play a sound alert on your desktop computer, laptop, or tablet whenever you receive a new order.

If you'd rather receive a text when you receive a new order from your WooCommerce for restaurant website, try the SMS Alert Order Notifications plugin. You can also use the Twilio SMS Notifications plugin to send the customer a text when their order is ready.

WooCommerce can be integrated with many external systems. If you're using a specific system to manage your restaurant orders, look up how this can be integrated with WooCommerce.

Think creatively and you'll be surprised how easy it is to integrate your WooCommerce for restaurant ordering system with your existing kitchen processes.

Online ordering for multiple restaurants

So far, we've talked about creating a WooCommerce restaurant ordering system for a single location, using a WordPress food delivery plugin. With a couple of tweaks, you can extend this to take orders for multiple restaurants or entire restaurant chains. There are 2 ways to achieve this:

Method 1 – WordPress multisite, with a separate site for each restaurant

You may want to keep your WooCommerce for restaurants really separate, with unique content for each one (e.g. a different homepage, about page and contact us). If so, you can use WordPress multisite to create a separate sub-site for each restaurant in the chain. This is better than having completely separate websites because you get the best of both worlds: a single WordPress food delivery plugin installation with shared hosting and maintenance costs; with unique content for each restaurant.

WooCommerce for restaurant ordering will be active on each site. However, each site will have its own set of products and order notification settings, avoiding any crossover.

WPBeginner has an excellent article on How to install and set up WordPress Multisite Network. This is compatible with all the steps in the above tutorial.

Method 2 – Single website, with separate categories & order notifications for each restaurant

A simpler option is to take orders for each restaurant from your main WordPress website. There are two ways you can do this:

  • Create separate product categories for each restaurant. On the online food ordering system page for each restaurant, use WooCommerce Restaurant Ordering to list products from the appropriate categories.
  • Alternatively, use either the official Product Vendors add-on or the Dokan Multivendor plugin to add products from multiple vendors (treat each restaurant as a separate vendor). Each vendor has their own product categories. Enable the 'Category pages' option in WooCommerce Restaurant Ordering and the beautiful food order form layout will be used for each vendor's products.

Whichever method you choose, you can use the WooCommerce Multiple Email Recipients Notifications plugin to send order notifications to a different email address depending on which category the customer has ordered from. This lets you ensure that the new order emails are sent to the correct restaurant. As a result, your entire WooCommerce restaurant online  food ordering system remains on a single website - while taking orders from multiple restaurants.

Online Chinese takeaway ordering system

Case study: Online Ordering for Ciao Italia

Ciao Italia is an Italian restaurant in the US that started offering curbside pickup to its customers during the COVID-19 pandemic. They use our WooCommerce Restaurant Ordering plugin to let customers place their orders online from home.

Ciao Italia Ristorante one-page food order form

The restaurant displays its entire menu (including food, beverages, and a gift card) on a one-page order form. It does this by sorting the food items under different categories and displaying all of the categories on the menu page. Customers can simply click the (+) icon to add food items to the cart. When a customer adds an item to their cart, they see additional purchasing options in a lightbox.

Food order form lightbox with purchasing options

For example, you can use the lightbox to choose the quantity of food or beverages. If you're buying a gift card, then you can choose the value in any denomination. (Tip: They sell gift cards using the 'Customer Defined Price' option in the Product Add-Ons plugin.)

The one-page food order form makes it quick and easy for customers to place their orders and proceed to the checkout page.

Adam Tracksler from Bryce Creative developed the website. He was delighted with WooCommerce Restaurant Ordering:

A Perfect Plug-in for Today’s Needs
In today’s environment of having to act nimbly for clients, the WooCommerce Restaurant Ordering plugin is the perfect solution for getting a website running quickly. We were able to launch on day one with the help of this plugin. It took all the heavy lifting out of the equation and let us focus on design. If you are debating whether or not this is the solution for getting a restaurant going — look no further, this is the plugin you want. The support is also top-notch!

Want to set up online ordering for your restaurant in 15 minutes?

And there you have it! If you follow all the steps in this tutorial then you can create a complete online food ordering system with an easy-to-use WordPress food delivery plugin.

You've learned how to install and set up the WooCommerce platform to handle all of your menu's food products. You've also seen how you can use the WooCommerce Restaurant Ordering plugin to create customizable food order forms. Customers can choose their selections from each customer, and then place their order and pay online.

By using a WordPress food delivery plugin and WooCommerce as an alternative to Just Eat or other systems, your restaurant can save many thousands of dollars or pounds. It's easy to set up, easy to manage and will look really professional.

  • Easy plug-and-play setup.
  • Comes with full support and expert advice.
  • 30-day money back guarantee - love it or your money back!

Get WooCommerce Restaurant Ordering here, and start selling food online TODAY →


  1. Your blog brilliantly illustrates how to optimize food ordering using WooCommerce. It's a valuable guide for businesses, showcasing the path to a smoother and more satisfying customer journey. Well done!

    • Hi! Thank you so much for your kind words! I'm happy to hear that you found the blog post helpful and informative. If you happen to have any questions, please do not hesitate to reach us through our Support Center. Have a great day!

  2. Hey.. how does the software deal with VAT tax on items that are Zero rate if taken out or delivered but 12.5% standard rate if eaten in the restaurant? A cold sandwich is a good example?

    • Hi Richard, Thank you for the comment. Our plugin's (WooCommerce Restuarant Ordering) main functionality is to display your WooCommerce products (dishes) in an easy-to-use order form. It has little to no impact on pricing and tax computation. It will follow/implement whatever price you set in WooCommerce plus other relevant plugins you might be using to manage prices/taxes on your store. If you have further questions, please do not hesitate to contact us through our Support Center. Thank you.

  3. Hi. My name is Danial, I'm from Malaysia. I'm not really a website whizz in fact I'm still noob. So I'm sorry if my question are hard to understand.

    I use Lalamove for my delivery. Can this plugin be use together?

    If yes, let say if my customer order in advance, let say for 12pm tomorrow, when will the system execute the order for delivery? 12pm tomorrow or after the customer complete the order?

    Thank you.

    • Hi, Danial. Thanks for your comment. You would need to check if there's a plugin that allows you to integrate Lalamove as a shipping method in WooCommerce. You can refer to this topic in the WooCommerce Support Forum on - How to add Lalamove shipping method with Woocommerce? I hope this helps point you in the right direction. Cheers!

  4. Hi Katie! Thank you so much for your detailed and well-written article. I was wondering what you think about crypto payments and whether this type of payment is good for restaurants. I saw that you can use Woocommerce with crypto

    • Hi, James. Thanks for your feedback. We've received a couple of requests from our own customers for an option to pay via cryptocurrency (e.g. Bitcoin) at our checkout page and are tracking its demand to help determine if and when we implement it. I imagine that this is a similar case for restaurants who offer online payment options - the primary factor to put crypto payments up for consideration would be to see a large enough demand for it from customers.

  5. Hello there,
    How can I save all online orders for later review? Is there any separate plugin for that?
    Thank you,

  6. Anyway to have a hover over affect on menu list of items/pics ?

    • Hi Ajmal,

      We also replied to your email regarding the same concern. Please, could you reply back with more details about this?

      Looking forward to your response. Should you have any other questions/concerns, kindly fill up a form at our Support Center so we can get back to you much sooner.

  7. We are a bunch of volunteers and starting a new scheme in our community.

    Your site provided us with useful info to work on. You have done a formidable task and our entire neighborhood will probably be thankful to you.

  8. Do you know if this works with WCFM multivendor plugins?


    • Hi, Paul. Thanks for your comment. We have a knowledge base article about how to set up restaurant ordering for multiple restaurants, which includes information about multi-vendor plugins including WCFM Marketplace.

  9. Hello there
    First of all, big respect for your work with the tutorial, it looks good and has a simple an understandable structure.
    Unfortunately I couldn't find a solution to my last issue on my Homepage.
    As an example, a clients orders various goods from 4 different categories and their subcategories (Huerto/Pesc, Raconet/Boca, Semana/Temak and Faro/Entra). Each main-category costs 3.-€ for delivery, independent of the amount of goods from the specific subcategory. At the checkout it should show the 4 different categories summed up to 12.-€ in total on top of the bill for the goods. After days and weeks of crowling through the internet, I landed on your page.
    Is there a free plugin available or do you have an idea if this can be sorted and how?
    For now, big thanks in advance and looking forward to find a solution for my issue, then I can start working properly.
    Huge cheers

    • Hi Claude, WooCommerce is designed to treat each product individually and doesn't collate the categories on the checkout in this way. You can use our WooCommerce Restaurant Ordering plugin to list the foods from the different categories on your website, and all the foods in the order would be listed individually on the checkout. If you wanted to separate them out on the checkout then you would need to hire a developer to do this as a custom feature.

  10. Hi,
    How can I use a table number instead of a customer name for orders coming from inside the restaurant?

  11. Hello,

    Thanks for the tutorial, it has lots of useful details!

    My question is if your plugin allows for ordering Menus as Formulas. I mean, picking one of six starters, one of six main dishes, one of six desserts, all with a fixed price.

    Thank you!

    • Hi, Marc. My apologies for the late reply. Thanks for your comment, I'm glad to hear our tutorial was helpful.

      I suggest you use the YITH Woocommerce Minimum Maximum Quantity plugin, as it is the only plugin that we know of that supports category-level minimum and maximum quantities. You can put your dishes in different product categories according to each type and then use this plugin to set the maximum quantity to 1 so that customers can only order 1 dish from each category.

      Let me know if you have any other questions. You can also get in touch with us sooner via our dedicated Support Center.

      Best regards,

  12. I was trying out the online restaurant ordering system in action and reached the checkout page of the WooCommerce Restaurant Ordering plugin demo site. Is there a way to make some of the required fields, like address, non required if meal is not being delivered to customer as she/he picking up the order? Thanks.

    • Hi, Phil. The checkout page is part of the WooCommerce plugin itself. You can add/create/edit the fields on that page using the Checkout Field Editor plugin by WooCommerce.

      Let me know of you have any other questions via our Support Center. Thanks!

  13. Hi,
    First, thank you for this tutorial
    Can you tell me whether I must choose ecommerce mode to setup my wordpress website or take another one? Because it's write on this tutorial that wordpress is free of charge

    • Hi, Makiadi. Thanks for your comment. I'm happy to hear this tutorial was helpful. I believe the options that you mention are merely specific packages or predetermined site configurations that your web hosting provider or the software that they use or have set up on their web server(s) use or call them.

      Basically, what you need to start following this tutorial are just a WordPress website with the free WooCommerce plugin installed on it.

      Let me know if you have any other questions. You can get in touch with us quicker at .

  14. Hi,
    how can we use the API for redirecting the orders to third party apps. The integration is pretty easy, but how can I determine which restaurant goes to which POS system. Currently, I just can chose every order to one single POS system but this doesnt make sense. Hopefully someone can help.

    Thanks a lot!


    • Hi, Shive. My apologies for the late reply, as what you're asking about is no longer what our plugin is built for nor part of it. What our plugin does is allow you to display/list the exact same WooCommerce products data pulled directly from the WordPress database of your site and display the exact or as-is values in columns of a dynamic table that you can filter, sort, and search. This allows users to find/see/locate the products they want and add them to the cart more efficiently and quickly than in the default WooCommerce shop grid layout. The cart and checkout pages, and orders are then part of the WooCommerce plugin itself.

      That being said, for what you would like to achieve, I suggest you consider using a WordPress Multisite Network to keep the orders for different restaurants separate at the site level. This way you can easily chose which POS system each separate site in the multisite network is integrated with.

      Alternatively, you can simply create an entirely separate site for each POS system to integrate the WooCommerce orders with.

      I hope this makes sense and helps. Let me know if you have any other questions. You can get in touch with us quicker via our dedicated Support Center.

      Best regards,

  15. One more thing..
    Is it possible for the restaurant to "accept" orders somewhere? So the restaurant can chose the time they will have the order ready?

    • This would be something to be implemented outside of our plugin. I suggest you approach WooCommerce support about this, as they are more likely to have info for a possible solution. I hope this makes sense and helps point you in the right direction.

  16. Hi! Great tutorial. Thank you so much. 
Is it possible to have 1 menu with lots of different options, but then at check-out the customer will chose the pick-up location? We have 2 sushi places, and only want pick-up and not delivery. But it is the exact same menu at both places.

    • Hi, Frederikke. I'm glad our tutorial was useful to you and sorry for the late reply. You can get in touch with us quicker via our dedicated Support Center.

      You can use WooCommerce Restaurant Ordering to create your food menu from which customers will choose/place their orders from, and indicate/specify via a notice on the page(s) where you display the menu that it is intended only for pick-up and not delivery. We have an article about how you can take online orders for restaurant chains with multiple branches/locations:

      On the other hand, since the way that you're asking about is to be at checkout, this would be provided by WooCommerce itself rather than WooCommerce Restaurant Ordering. For this, I suggest using the Checkout Field Editor plugin by WooCommerce, which allows you to to add, edit, and remove fields shown on your WooCommerce checkout page. Fields can be added and removed from the billing and shipping sections, as well as inserted after these sections next to the standard ‘order notes’.


  17. Hello! I was wondering if it would be possible to have 2 restaurant locations - both of them will be able to order for local pickup but only 1 of the locations will be able to deliver.

    Is that possible?

    • Additionally, I suggest that you create a separate category (or group of categories) for each location and put all your products in the appropriate category. You would then need to create two shipping classes (one for each location) which would each include the different shipping methods (pickup or delivery), and assign all the products to the appropriate shipping class. For more details, please see the WooCommerce Docs > Product Shipping Classes article. Thanks!

    • Hello, Marc. You can do this with the Conditional Shipping and Payments plugin, which works with WooCommerce Restaurant Ordering. Set it up to allow shipping for all product categories, and only offer delivery when the cart contains products from the category for the location where you're offering delivery.

  18. which plugin i can use for multiple restaurant

  19. Hi,
    first of all many thanks for sharing this tutorial, it is great!
    I was wondering if it is possible with this plugin to implement a kind of option at the checkout process that will allow clients to choose if they want their order to be received at home or if they want to take it by their self at the restaurant. So that the final price will be different if you choose one option or the other. Something like deliver method?
    Thanks in advance.

    • Yes, WooCommerce lets you add multiple shipping options which customers can choose from. This can include home delivery and local pickup (which you can rename to anything you like).

  20. hello,
    I am looking to find a system for managing the orders once they are received. We are a meal prep company, so production is once a week and so far i have found zapier to transfer order details to a good spreadsheet, but im not fully happy with it because our menu changes weekly, so the order variations are constantly changing. My goal is for 1 system to tell me client name, dishes they chose to order out of all the variations, revenue, taxes, delivery/shipping address, which would all be automated from woo commerce.
    TIA :)

  21. Hello Katie,

    Thank you for this awesome tutorial. We want to have two separate pages for the cuisines of two different countries. Also, we want to send an email to the customer when we accept the order. Do we have this option real time?

    • Hi Basit, you can create 2 separate ordering pages (one for each country) and list different products on each one - for example, based on which category they are in.

      Woocommerce will automatically send an order to the customer when the order is received. If you mark the order as completed in the WordPress admin then this will send them a further 'Order Completed' order.

  22. Hi Katie,

    That is a great tutorial, we want to use something similar it for our drop-off catering company, But as each order is for the next day we wanted something that would split the products down into an ingredient shopping list so we can order them and also create a work order for the kitchen - are you aware of a plugin that can do that?

    • Hi Kate, glad you found it helpful. Unfortunately I don't know of any plugins that would automatically let you create a list of ingredients based on the products purchased each day.

  23. Hi Katie,

    Amazing tutorial, I will give it a try. One question, do you know if it is possible to for customers to save the order history so they can do repeat orders next time?

  24. Hi Katie,
    after watching your tutorial I purchased the Restaurant Ordering plugin! I was so happy to follow just your instruction and be able to have my ordering table ready to go, but unfortunately, when I started to create the page code (Dessert, column price etc...) nothing appears as your instructions, it is like we have a different version of the plugin!!! Please could you help me, I'm desperate!!!

    • Hi Sabine, it sounds like something on your site is different from the example, such as the category names and fields. We'll be happy to help you to get it working for your specific setup. Please could you send more information such as a link to the page where you're using the restaurant ordering system, and details of the shortcode you've used to create the food order forms (if you're not using the default page created by the plugin).

  25. Hello Katie,

    Thanks for the great tutorial. I was trying your tutorial to create a site for a client but then I found another plugin called RestroPress(

    I am now a bit confused if I should use your method or that plugin. What are the pros and cons to that?

    • Hi, I've had a look at RestroPress and it looks as if it was released very recently, and is a basic food ordering system for WordPress. If your needs are very simple and your restaurant isn't generating significant revenue then it would be worth trying, or if you're dealing with more orders or need the sophistication of a WooCommerce-based solution then WooCommerce with WooCommerce Restaurant Ordering will be more flexible for you. For example, WooCommerce lets you integrate with almost any payment gateway and has various delivery add-ons suitable for restaurant ordering. WooCommerce Restaurant Ordering displays foods in a more professional way, and has lots of customization options. Hope this helps!

  26. Is it possible to hide certain products? Like for example, if certain products would be available one week but not another week. Would there be an easy method for hiding X amount of products from the order menu (as creating a new category every time is impractical). Thanks

    • Hi Benny, there are a few ways to do this. One option is simply to change the products to 'Draft' or 'Private' status when you want to hide them. If your WooCommerce settings are set to hide out of stock products then you can mark products as out of stock on the weeks they're not available, and they will disappear from your food order forms. You can also use the exclude or exclude categories option to exclude specific products from the table - for example, perhaps you could create a category that is permanently excluded from the order form and move products in and out of this category on the weeks they're not available.

  27. Hello, Great tutorial on creating online ordering. Just one questuon about the product addons. I see the picture above. the product addons radio button is not by default select a option. If it possible to pre-select an radio option, so for most popular option customers don't need to pick one. Thank you.

    • Glad you liked the tutorial. The Product Add-Ons plugin comes with an option to set required add-ons, but not a default selection. have provided some developer documentation on how you can do this, which you can read here.

  28. Hi
    If I have a restaurant with several branches and I want the order to appear at the branch nearest to the customer by address via notification or email, is that possible?

  29. Would love too see an integration between Woo Commerce and Menugo so that I could pull my menu right in. I'm currently switching over to Woo Commerce from WordPress in hopes to maintain more sales during the course of the day, especially to local businesses. We cater our lunch menu to business owners.

    • You're right, WooCommerce and Menugo seem to be completely separate systems and no one has developed an integration between them. Menugo seems to be quite a closed system and doesn't have an API, so maybe that's why no one has done it. It looks like you will have to add your foods as WooCommerce products and do it that way.

  30. Hi, thanks for this great article.

    I am wondering if you have known any real implementation of multi-restaurant online order application by using WooCommerce (product vendor extension), as you suggested in the article?

    I looked at it, seems to me there are a lot of gaps, but that could be due to my lack of experience/expertise of WooCommerce and the extension.



    • Hi John, unfortunately I don't know the addresses of anyone using the WooCommerce Restaurant Ordering/Product Vendor combination although we have helped several customers with it. I can tell you about other restaurants using the system (e.g. there are some in our plugin showcase) outlined in this tutorial, but not restaurants using the Product Vendor extension.

      Quite a few of our customers use WooCommerce Restaurant Ordering to take orders for multiple restaurants without Product Vendors, simply by creating a separate category (or multiple categories) for each restaurant and listing their foods on a different page. You can then send the order confirmation for each restaurant to different a email address using the Advanced Notifications extension.

      You might also like our knowledge base article about how to create an online ordering system for multiple restaurants.

  31. Great Article,

    Wondering if you know any way we can have multiple choice of delivery dates per product (not just per order).
    We sell many products and require the customer to choose what time they prefer delivery for each product they are purchasing.
    We will be using your table plugin to list the products, then require the customer to be able to choose the time in the same page.

    • Hi Jack, I haven't seen any plugins that let you choose a separate delivery date per product. However, you could achieve this using the Product Add-Ons plugin, which integrates with WooCommerce Restaurant Ordering. This adds extra options to each individual product, not the order as a whole. You would need to create a delivery date add-on where customers can select their required date (e.g. from a dropdown).

  32. hello katie,
    I would like to know if you WooCommerce Restaurant Ordering support quick view plugin like Quick View WooCommerce or Woocommerce Quick view. Like a link on the table, click it and a pop up shows up. Thank you.

    • Hi Steve, WooCommerce Restaurant Ordering comes with its own quick view lightbox, so you don't need to use a separate plugin for this.

  33. You have provided a very informative tutorial. I liked it. You have mentioned details very well. through this customer can book the table and they don't need to wait for having food.

  34. how does it display on mobile phone. on the sample website, it shows name and image only. you have to click the + for more info to be display. I only need name, price and add to cart. can all 3 show at the same time on mobile phone. Thank you.

    • Hi Steve, WooCommerce Restaurant Ordering is fully responsive and the food order form will automatically just to fix all screen sizes.

  35. Hi Katie,
    Thank you for sharing details .. currently, I have a website with WordPress, As my business grows in future I will have to go for my own code and database implementation and deploy it into my own servers. am I allowed to data migration to my own database? please let me know.

    • Hi Pranay, the method described in this tutorial uses the self-hosted version of WordPress ( This means that you can host the website on your own servers and will have full control over the MySQL database.

  36. Hi Katie,
    I like your article and interesting in your plug in. Just couple more questions. I have a restaurant and lunch time is from 11am to 3 pm. I don't want customers to order lunch outside this time frame. Is there any way to hide or restrict either the lunch products or category automatically so customers can order only between 11am to 3pm daily. I can do it manually in backend to disable/unpublished the lunch menu but want to have a way to do it automatically. another question is about the shipping to different local area. right now I am using gloria food ordering that I can select from google map where I want to delivery and set different delivery charge and different minimum order amount. By using table rate shipping I can setup different minimum order amount and different delivery charges to different zip code I choose. but some zip code cover a big area. I only want to delivery part of the zip code area.
    another plug in I use WooCommerce Shipping Distance Matrix, I can setup delivery rate by distance but cannot set a minimum order required for delivery. Also try the minimum order requirement coding to function. php. It works globally, affecting the pick up option as well. Anyway, What I want is to set different distance or area with different delivery rate and minimum requirements. not by zip code. if It can't be achieved. at least a minimum requirement for all area and ONLY the delivery option. so I can use WooCommerce Shipping Distance Matrix. Thank you in advance. I look forward to purchase your plug in if my questions can be solve.

    • Hi Steve, Simba Hosting have a WooCommerce Opening Hours & Chosen Times plugin that lets you specify opening/delivery times per category, so you could use this to restrict your lunch category automatically.

      Our WooCommerce Restaurant Ordering plugin simply lists products in a restaurant-friendly layout and doesn't make any changes to the cart/checking/shipping. This means that you can use it with any WooCommerce shipping plugin, including ones that automatically calculate shipping based on distance rather than postcode. It's worth reaching out to the author of the Distance Matrix plugin to ask if this can be enabled per shipping option so that it doesn't affect local pickup (which doesn't make any sense anyway, so they should improve their plugin to fix this). If that's not possible, then you might need to do some custom development for this part of your project.

  37. it's nice technology but the restaurants sometimes not delivering quality foods that is the most problem people are facing while doing online food ordering.

  38. Hi Katie,

    How about each restaurant open and close time if I'm using Dokan.

    • Hello Winalan,

      Currently, Dokan does not have store-opening/closing time functionality. But you will be happy to know that this feature is on the way and very soon, it will be available in Dokan plugin. Each vendor would be able to insert their opening/closing time and this status would be visible on the store page :)


      • Thanks Nayem, that will be a good solution for anyone creating a restaurant ordering system with Dokan instead of using the Opening Hours plugin mentioned in this article.

    • Hi, I'm not sure how the Opening Hours plugin mentioned in this tutorial works with Dokan - you would need to reach out to either Dokan or Simba Hosting to ask if they have tested these plugins together. Realistically, I doubt they have tested them together so you might just need to try and see how you get on!

  39. Hello Katie:

    Thank you for the amazing tutorial.

    If I want to do online orders and then do delivery and local pick up what plugins do you suggest?

    Also, if I want to print out a pick list - i.e. a consolidated list by categories e.g. 5 orders of Cake, 6 orders of main course etc. then which plugin should I use.

    Finally, how do I sort out the orders by delivery location?

    Thanks again.

    • Hi Andrea

      You don't need any extra plugins to do online orders with delivery and local pick up, as these options are all built into WooCommerce itself.

      Regarding your other questions, I don't know any plugins that do this. If you don't want to develop this as a custom feature then the best option is probably to use the WooCommerce Customer/Order CSV Export plugin to export your orders each day, and open them in a spreadsheet where you can quickly sort by delivery location, product, etc.

  40. Please may I ask if the restaurant ordering system is mobile responsive.? I tried to use the demo on my own mobile but couldn't find the shoping cart. The problem is likely at my end - but I would like confirmation before purchase that it is mobile ready.

    • Hi Ian, thanks for your interest in WooCommerce Restaurant Ordering. Yes, the plugin is fully responsive. When someone adds products to the cart, a View Cart link will appear at the top of the page. Your theme might also add cart links to the header and if there's a sidebar on the page then you can add the WooCommerce Cart widget.

  41. With products with more than one option (Cheese Pizza 9", 12"), how does one go about ordering one of each? It appears in your video that they would be forced to select one or the other and that they don't have the ability to select both. Is this true?

    • Hi Mark, this is a limitation of WooCommerce variable products - you can only choose 1 option. A lot of WooCommerce pizza stores use the Product Add-Ons plugin with our WooCommerce Restaurant Ordering plugin to add checkboxes instead of variations. You can tick as many checkboxes as you want to add different sauces, toppings etc. You can read more about how to do this here.

  42. I am going to give this a try! really looking forward to it! I currently use and their service is top notch even though it is a completely free to use if you don't need to take payments online!

    of course has its limitations here and there, but it is excellent for anyone looking for a quick fix!

    JustEat asking 14% in the uk! that's not too bad!
    They want 30% here in Canada!!!

  43. Seems Wicked but I have multiple rooms available with different prices This seems to just do one price for the one room for one night and i cant seem to find how to add more rooms or different prices

    • Hi Ray, you can offer extra price options either by using variable products, with each option as a separate variation - or by using WooCommerce Restaurant Ordering with the official WooCommerce Product Add-Ons plugin, which you can read about here.

  44. Hi Katie,
    This is Daisy Here from Marylebone and first of all, I would like to say Thanks for delightful content. I would like to know that is there any theme which is compatible with any other multi-vendor platforms for an online restaurant?
    Thanks, Daisy Walker

    • Hi Daisy, multi-vendor plugins should be compatible with any WooCommerce-ready theme. You can then list the products for each vendor in a restaurant order form using the WooCommerce Restaurant Ordering plugin.

  45. Hello, thanks for the notes but how can I change currencies. As in from dollars to other currencies, for example, to Uganda Shillings.

  46. Hi Katie, and thanks for the excellent tutorial. I'm implementing a food ordering system for a large campus and your tutorial and plugin was exactly what I needed. I have a small feature I need, and I was hoping you might be able to point me in the right direction.
    This is a corporate setting, and employees are ordering from the company cafeteria. When they submit their order, they don't actually pay, as the payroll dept will deduct their purchase amounts from their payroll check every two weeks. Thus, I need to generate sales reports (preferably CSV export), by customer, showing their purchases over a set period.
    Do you know of a Woocommerce plugin/extension that will allow that, or any other way to accomplish that? I've been searching and haven't found exactly what I'm looking for. Any help is appreciated.


    • Hi Dave, I'm glad you enjoyed the tutorial. I recommend that you contact Support with this question to see if any of their export plugins are suitable. For example, they have a WooCommerce Customer / Order CSV Export extension but it's not clear from the documentation whether you can export orders for a specific customer.

      Everything in this tutorial will work with any order/customer export plugin, as the plugins I recommend don't make any changes to the WooCommerce order process. They just affect how your foods are displayed in WooCommerce.

  47. Thank you for such a fantastic article with brilliant suggestions. I have a problem with a multi-vendor site I am working on for a client that you may be able to help me with. The client requires the delivery drivers to get a notification when their assigned order is ready for pick up. This means the drivers will need their own, separate front-end login that the vendors assign orders to. Perhaps you have a suggestion for a plugin?

    • Hi Eainne, I haven't seen any plugins that can do anything like this. I had a quick look and didn't spot anything along these lines. Your options are to either build a custom plugin that adds this extra functionality to WooCommerce orders, or integrate with a 3rd party system that can automatically import your orders from WooCommerce and do these extra tasks. I'm afraid I don't know of any systems that allocate orders to delivery drivers in this way, but it probably exists outside of WordPress.

      • Thanks Katie! With your suggestions in the article, I could also suggest the driver just receives an email notification and then the order will have the printed delivery details attached upon collection. Do you suggest the Advanced Notifications plugin will work for this?

        • Hmm, it depends on how you allocate orders to each driver. Advanced Notifications lets you send order notifications to a different email address based on product, category or shipping class - so if one of these is suitable for you then it's the right plugin, otherwise you might need to do something more bespoke (or manual).

  48. Hi Katie, I am looking at hooking this up to a printer which automatically prints email orders. However, the printer also supports a "callback" function where the restaurant staff can refuse the order, or send back the expected time for collection/delivery, 20 mins, 30 mins, etc.... Can any plugin support this?

    • Hi Chris, I haven't seen this function on any of the order printing plugins I have looked at. It's worth doing some more research to see if you find anything (let me know if you do and I will add it to this article!), otherwise you may need to develop something bespoke for this. You can still do everything else in this tutorial, but the system where staff can edit orders from outside of the WordPress admin would need to be bespoke.

  49. Hello, How can set the attributes default, as you know when I add some options, in the Front-end page shows: choose an option, but I need the first option I have be default not the "choose an option" ?
    Thank you

    • Hi Ahmad, I'm afraid it's not possible to set a default in the variations dropdown - the customer has to choose their attributes from the list. You can read about the options for controlling the variations in the table here.

  50. Great article guys, it really answered a lot of questions I had. I was wondering if you had any experience of using WooCommerce and the plugins you have mentioned on any of the WordPress to App platforms, such as AppPresser? If so, are there any pitfalls or issues? Thanks again.

    • Hi Chris, no I haven't tried any platforms that generate apps based on a WooCommerce website. If you do this, I'd love to hear how you get on!

      • I'm planning on trying it and I'd be happy to share my results. Do you have a link to any live restaurant site using the platform, plugins, etc... that you mentioned in this post? I can use that as a tester if so. Thanks.

  51. Hello, Katie Keith
    great job,
    I'm thinking about is how the restaurant can manage the waiting time of delivery after an order is placed.

    • Hi Ashley, you will get each customer's email address when they place an order. The easiest way to update them on the expected delivery time is to send update emails.

  52. looks great but there is no map ?
    no map for clients to select location only address
    so no good where post codes dont work or when they cover a big area like in spain

    needs a map for delivery drivers to follow

    • Hi Sohel, please see the section of this article called 'Managing orders in your online restaurant ordering system'. This includes some recommendations on plugins to print your WooCommerce orders to a GPRS printer.

  53. Hello Katie!
    Thanks for this helpfull article, great job!

    The only thing I'm thinking about is how the restaurant can manage the waiting time of delivery after an order is placed. Thanks to the email notifications we can confirm the received order to the client, but how can we customize the delivery time choosen by the restaurant?

    Thanks in advance for your time

    • Hi Tam, glad it was useful to you in taking bookings for your restaurant. Please see the section about delivery time slots in section 1f of the tutorial, this should answer your question.

  54. Postcode Based Order Restriction for WooCommerce plugin has not been updated for 2 years, Do you have an alternative for this plugin? i actually want to use a feature like this to restrict my users from seeing the restaurants that are outside a certain area.

    • Hi Yesha, you're right - it is worrying that it is no longer updated or supported so I shouldn't really recommend this plugin. I have rewritten section 1g of this tutorial to recommend some different options for restricting delivery, I hope this is helpful for you. These won't restrict users from seeing restaurants outside their area (I recommend doing this by creating intuitive area-based navigation links etc.), but it lets users check that you will deliver to them.

  55. one more thing, let say I want to sell wings +pizza + drink. I would assume to get WC addons to make selecting options and making special requests easy. How can I make it in a way that after getting this item from the product page the costumer be redirected to the shop page when pressing add to cart,. meaning when he choose the option the costumer come back to the shop page with the updated cart.
    you are a great help, thank you

  56. So being a restaurant that delivers, I'm worried about how the checkout process says "shipping" and not delivery...There doesn't seem to be a an easy way to ask for the customers "delivery address". What are your thoughts this?

    • Hi Matt, that's a fair point. You can change the wording of 'shipping' to 'delivery' via the code. If you don't have a developer who can do this for you, then the cheapest way to find someone suitable is probably to post a job on Codeable and use one of their WordPress experts.

  57. Does WooCommerce Restaurant Ordering work well with Listify; I am making a website with listings and selling products through those listings. It would be perfect if I can use your plugin with woocomerce to make the purchasing more convenient. I would also like to know how can I make a popup add-owns when they choose something; like lets say a soda, I want them to choose what kind and what size.

    • Hi Mostafa, yes the plugin will work with Listify. However, it's worth clarifying exactly what you want to list in a table. If you want to list directory listings that are a different post type (e.g. if the theme has a 'Listings' post type) then you will need our other plugin, Posts Table Pro. This can list other types of WordPress content in a table.

      WooCommerce Restaurant Ordering supports product variations and add-ons.

      • Thank you for your help; is there is a way that I can add a pickup or delivery per order button; also how can I limit orders to be only from one specific restaurant. Best,

        • Yes, you can do this by adding product variations: 1 variation for pickup and another for delivery. If each restaurant has its own category of products then you can create tables listing products from a specific category.

  58. Great article. I was hoping to get your opinion, if I have a restaurant with 2 locations, and following your articles for online ordering for pick up or delivery, how do I go about specifying which restaurant the order should go to? Should I use multisite in this case?

    • Hi Nathan, yes you can use multisite. However, I will also suggest a simpler option.

      Create separate categories for each restaurant. On the online food ordering page for each restaurant, use WooCommerce Restaurant Ordering to list products from the correct category/ies only.

      You can then use the Advanced Notifications plugin to send the order notifications to a different email address depending on which category the customer has ordered from. Use this to ensure that the new order emails are sent to the correct restaurant.

    • Hi James, no problem - I have updated the link in the article. Good luck with selling the plugin outside of CodeCanyon, sounds like a good move! In my experience, if your plugin is quite niche (as yours is) then it's not too hard to market it without using a big marketplace, and you can charge a more sensible amount that reflects the amount of work you put in.

  59. hi congrats for your article this is great, thanks, i got a question, do u know about a similar system but for multi retaurant? is there a solution with woocomerce and wp? thanks in advance and congrats again. my email is

    • Hi Carlos, what do you mean by multi restaurant? If you have multiple restaurants then you can have a page for each restaurant, with their specific products displayed in a food order form on the page. You can create one or more categories for each restaurant and create order forms for each restaurant that just display products from that category. Please let me know if I have misunderstood.

      • Hi Katie, is a pleasure to greet you, i mean multi restaurant as one web site where there are many restaurantes and any one of they can update their own data as menu, logo, name, direction, etc., this from their own backend and the final user will can search their food, and so the web site will show the search results, i hope explain myself. Thanks again.

        • Hi Carlos, it sounds like you might want a multi-vendor plugin, e.g. Product Vendors. Once this is set up and restaurants can add their own products (i.e. menu items) etc., you can use the steps in this tutorial to create a food ordering page for each restaurant. You might need to create an extra custom taxonomy or something like that to label which products relate to which vendor - you can then use WooCommerce Restaurant Ordering to display products for the correct vendor on their page.

  60. thanks for this great tutorial its been really helpful for me as i am trying to create a system that allows customers to book a full meal consisting of multiple products online, reserve a date and time to come and eat at the restaurant and confirm this booking by paying a percentage of the cost via paypal or woocommerce. i use another plug in called bookly that does some of this really well but i am not sure how to achieve both the multiple items order alongside the functionality of making a reservation, do you have any tips or can you please point me in the right direction?

    • Hi Joel, you could use the WooCommerce Bookings plugin to let people make a reservation for their chosen slot. They can order the multiple products using the order form method described in this tutorial, and also buy a 'bookable product' (from WooCommerce Bookings) to make the actual reservation. This will all work nicely together, but you will need to create a very intuitive navigation structure to guide customers through the process of adding the reservation slot to their cart and then choose the foods and add them to the cart too.

  61. Hi, can u help me pls, I need the orders from woocommerce to be print automatically!? It's that possible and if can u help with
    Thank u

    • Hi Mo, the section in this articles about printing orders includes plugins that can print WooCommerce orders automatically. Hopefully you should be able to find one that works in the way you're looking for.

  62. Great tutorial. Currently looking at this as an option for an online takeaway delivery service - will this allow us to restrict purchases by time - ie only allow ordering between 5pm-10pm for example?

    • Hi Richard, you can add opening times restrictions using another WooCommerce plugin such as WooCommerce Opening Hours & Chosen Times. This is compatible with WooCommerce Restaurant Ordering. The messages and restrictions in the cart and checkout will work with everything I've mentioned in this tutorial. I will add a link to this plugin to the tutorial to help other people who want to do this.

      • one more thing, how can I add options to a product that when a costumer is choosing, let's say I am selling a compo of wings, pizza, and drink. I would assume I would need WC addons to make this in the product page, to choose flavors and special requests. How can I let the costumer go back to the shop page with the updated cart.
        you were a great help to me, thank you

  63. Well done, Katie, very thorough, Not many tutorials available that detail as you have. I am searching for several solutions to issues and hope you may shed some light. My site prepares family style meals for busy folks and delivers them. I do use the post-code restriction plugin however I offers gift certificates and have run into a situation where customers outside the delivery range want to buy gift certificates for families inside the range. The plugin can restrict payment by shipping but I can't seem to figure out how to configure it to do so. Any suggestions?

    • Hi Edward, glad the tutorial was useful for you. I would suggest sending a support request to the developer of the postcode restriction plugin to ask them whether it's possible to do something like exclude a specific category from the restriction. If so, you could put the gift certificates in a different category from your meals but it depends on whether the plugin has any options like this.

  64. This is awesome, love the detail you've gone to - must've take a while! :-)

    Quick question - I'm looking at doing a healthy 'ready meal' delivery service for a friend, and we need to incorporate such things as minimum order numbers, postcode restriction and so on. Have you got any plugin or setup suggestions for those?

    Cheers again, nice work.

    • Hi Austen, glad it was useful.

      The methods in my tutorial should work with WooCommerce plugins that can add the other features you need such as WooCommerce Min/Max Quantities.

      I believe there are various postcode restriction plugins you could use. All WooCommerce Restaurant Ordering does is display your WooCommerce products in a table, so anything that restricts the ordering side of things such as postcode restriction should work fine. The way the postcode restriction plugins tend to work is that anyone can add the products to the cart but you can't actually check out if you're in the wrong postcode area. For this reason, I would recommend adding a sidebar to the page where you add the healthy ready meals order form with a prominent notice showing your delivery area, to avoid disappointment.

  65. Hi Katie, You are a life saver.. Currently I m working on the exact project online food ordering system with "wordpress multisite". with restaurant wise sub-domain option. And also I've seen your comment on WooCommerce plugins that can automatically print your orders am really going to use one of those plugins.

    I would like to know one more thing
    * Once Order is Accepted on Printer Terminal - Customer should receive a Confirmation Text message on Mobile & Email.

    Are their any plugins to achieve this functionality.
    Thanks in advance.

    • Hi Vinay, I'm really pleased the tutorial was what you were looking for. You can do everything I described in the tutorial using WordPress multisite. You will need a separate license for WooCommerce Restaurant Ordering for each sub-site - if you contact us then we can give you a discount for more than 3 licenses.

      I'm afraid I don't know whether any of the order printing plugins offer SMS/email confirmation but it's worth checking the descriptions for these plugins.

      Alternatively, it's probably easier to add a plugin that will send SMS confirmation to the customer when you mark an order as completed in WooCommerce. There are a few plugins to do this including WooCommerce Twilio SMS Notifications or YITH WooCommerce SMS Notifications. (WooCommerce itself sends order completion emails to the customer so you don't need a separate plugin for that.)

  66. Hi Katie, this was an excellent tutorial thank you. Can it be set up so that if someone scrolls over the menu item or the photo that the larger image of the item shows up on the page? Other than that, this is exactly what I needed to know.

    • Hi Marie, glad you found the tutorial helpful. At the moment you would need to do some custom coding to achieve this - I can send you a quote under our customisations service if you don't know how to do this yourself. I will add this to our feature request list and if lots of people ask for the same thing then we will probably add it to the plugin in the future. Thanks!

  67. Hello

    Great plugin just few questions: The shortcodes are in ENG, must need translate the plugin into a other language or this will be by default automaticly?

    Just to be sure before purchase the plugin!



    Netherlands, Amsterdam

    • Hi Robert, WooCommerce Restaurant Ordering doesn't currently include other languages but you can do this yourself using the .pot file which lists all the translateable strings.

  68. Hi - great read, thanks for taking the time to make the guide! Just wondering if I used this guide. Would the customers make and account with me so I would then be able to collect there details I.e - phone, email & previous orders? Thanks again

    • Hi James, glad the tutorial was useful for you. Yes you can do this. If you disable guest ordering in the WooCommerce settings then an account will be created for each user which will store their address, phone no., previous orders etc. for when they re-order. You can even add a plugin to integrate your store with MailChimp or another mailing list service so that new customers are added to your mailing list for marketing purposes.

  69. Thank you for explaining how to setup online ordering system. Currently I m doing a project for course for creating online food ordering system. Therefore it's help me a lot how to do it. I would like to know one more things whether I can buy a gprs printer and setup in the restaurant or takeway so that customers order come straight to the restaurant or takeaway? Is it possible do it?
    Please let me know about this.

Please share your thoughts...

Your email address will not be published. Required fields are marked *