1. Home
  2. Knowledge Base
  3. WooCommerce Restaurant Ordering
  4. Setting Up Your Restaurant Ordering System

Adding delivery and collection to your restaurant ordering system

WooCommerce Restaurant Ordering lists your food items in a quick one-page order form. Once customers have selected their foods and added them to the cart, the checkout process is provided by WooCommerce itself. This means that you can use all the amazing features which are built into WooCommerce, including letting customers order food for home delivery or collection.

This article explains how to add delivery and collection options. It also shows you how to allow customers to choose a time slot for delivery during your restaurant opening hours, using the WooCommerce Opening Hours & Chosen Times plugin by Simba Hosting.

Delivery zones

Many online restaurants offer home delivery within a specific area only, while allowing anyone to order food for collection or curbside pickup regardless of their location. You might have a free delivery radius and a paid delivery area. You can do all this using WooCommerce Shipping Zones.

For example, the below screenshot shows how you might set up shipping zones and delivery/collection options for a typical online restaurant:

WooCommerce shipping zones restaurant delivery collection

In this example, we created 2 WooCommerce shipping zones and added shipping options to each zone as follows:

  • Shipping Zone 1 - 'Free Delivery Area' - This is used for customers in UK postcode areas PL1 and PL2, and gives a choice of free home delivery or local pickup.
  • Shipping Zone 2 - 'Paid Delivery Area' - This is used for customers in UK postcode areas PL3-6, and gives a choice of paid delivery or local pickup.
  • Other locations - Customers outside of the above locations can choose local pickup, but can not order food for home delivery.

Delivery costs and free delivery

You can offer free delivery and set shipping costs by adding shipping methods to each zone. This allows you to do perform tasks such as charging for delivery, or offering free shipping for orders over a certain value.

WooCommerce provides a choice of delivery options:

  • Flat rate - Use this for paid delivery.
  • Free shipping - You can offer this to everyone in the shipping zone, or select a minimum order value. Free shipping will only be offered when the cart contents are above the minimum value.
  • Local pickup - Allows customers to avoid paying for delivery by collecting their food order from the restaurant.
WooCommerce restaurant delivery options
Delivery options for a particular shipping zone - this example offers paid home delivery, free delivery over a certain order value, and local collection
WooCommerce restaurant free delivery minimum order value
You can use the free shipping option to offer free delivery for all orders over a certain value

Can customers choose a delivery or collection time slot?

Many online restaurants need a way for customers to choose when to receive their food delivery, or when they can collect their order from you in person.

To add these features, we recommend the WooCommerce Opening Hours & Chosen Times plugin by Simba Hosting. WooCommerce Restaurant Ordering provides the front-end food order forms, while this plugin allows customers to choose a date and time slot when you are open. You can also set different delivery and collection times per category (for example, for your lunchtime and evening menus).

Instructions - WooCommerce Opening Hours & Chosen Times

  1. First, install and set up WooCommerce Restaurant Ordering.
  2. Next, get WooCommerce Opening Hours & Chosen Times and install it on your WordPress site.
  3. Go to WooCommerce → Opening Times and add your opening hours and available delivery and time slots. It's really flexible and there are lots of options:
    • Choose what happens when the restaurant is closed. The options are:
      • Allow the customer to place the order, but force them to choose a time slot when you are open (recommended).
      • Allow the customer to place the order, but display a notice that the order will be fulfilled when the restaurant is next open.
      • Prevent customers from placing an order while you are closed.
      • Always force the customer to choose a time slot when ordering, regardless of whether the restaurant is open.
    • Either add your opening hours and time slots globally, or offer different slots for each shipping method (e.g. delivery and collection).
    • Add holiday dates or specific days of the week when you are always closed.
    • Set the maximum number of orders per slot in order to manage the capacity for your kitchen and delivery drivers.
    • Add a minimum order fulfilment period (e.g. 30 minutes) to make sure the kitchen always has time to prepare the meal.
  4. Customers will see a calendar with a list of time slots for each day on the WooCommerce checkout page.

Can customers check they're in the right area before they start ordering?

To avoid disappointment, we recommend making your delivery area clear to customers before they start selecting foods. There are several ways you can do this:

  • Create a 'Delivery Area' page and link to it from your main navigation menu.
  • If your restaurant ordering page has a sidebar, add a widget about the delivery area - either containing text or a custom Google map.
  • Install the Delivery Area plugin and add a widget allowing customers to check whether you will deliver to them.

Related Articles

If searching the knowledge base hasn't answered your question, please contact support.