How to Build a Complete Restaurant Reservation System using Gravity Forms

Learn how to build a restaurant reservation system in Gravity Forms just as complete as a full-course feast.

  1. What we’ll need
  2. Step 1: Configure Calendar
  3. Step 2: Set Up Time Slots
  4. Step 3: Set Up Available Seats
  5. Step 4: Set Up Reminder Notification

Looking to manage reservations at the coziest hobbit-hole restaurant this side of the Shire? 

After retiring from his adventures and hanging up his ring-bearing days, Bilbo Baggins has transformed Bag End into Middle-Earth’s most exclusive dining establishment: Bilbo Baggins Bites (BBB)—where second breakfast is always on the menu and elevenses is considered fashionably early.

As Bilbo’s newly appointed tech-savvy nephew (and part-time maütre d’), I’ve been tasked with modernizing our reservation system. Gone are the days of ravens delivering booking requests and wizards showing up unannounced with thirteen dwarves in tow. With Gravity Forms and a few Gravity Wiz spells, I’ve created a booking system so smooth, even the Elves are impressed—though they still insist on having their own table in the garden under the stars. ✹

Let me show you how I transformed our chaotic booking scroll into a streamlined digital system that would make even Gandalf say: “Now that’s magic!”

Note: No rings of power were harmed in the making of this booking system. 💍

Here’s the list of features this restaurant reservation form will explore:

  • A calendar to pick the day of the reservation.
  • A way to define time slots for each day.
  • A way to define the number of seats available for each time slot.
  • A reminder that will be sent automatically the morning of each reservation.

Let’s get started!

What we’ll need

Ready? Let’s set up our Bilbo Baggins Bites Reservation Form!

Step 1: Configure Calendar

First, insert a Date field and name it “Reservation Date” (this will be important later!). Scroll to the Perks tab, where all the magic happens:

  • Minimum Date: We don’t want people to be able to book in the past, so we’ll set up our Date field’s minimum date to Current Date.
  • Maximum Date: Since adventure may knock at Bilbo’s door at any time, we only want to permit reservations 30 days in advance—so we’ll set up our Date field’s maximum date to Current Date “+30 days”.
  • Days of the Week: Bilbo likes long weekends and will be open only from Tuesday to Friday.

For ease of use, let’s also tick Enable Inline Date Picker.

Step 2: Set Up Time Slots

Let’s add our time slots. In order to do that, let’s insert a Product field, name it “Reservation Time,” and select Drop Down as our field type. Then, add the time slots by pressing the Edit Choices button.

Step 3: Set Up Available Seats

Now for the tricky part: let’s head to the Perks tab of that Product field to set up GP Inventory with our seats.

Start by setting the Inventory Type as Advanced, then click on Add under Resource.

In the Add Resource window, we’ll name our resource “seats” and click on Add Scope. There, write “Reservation Date.” Once you’re done, click Add.

Back in the Perks tab, select the Reservation Date field in our newly created scope and add a few finishing touches:

  • Inventory Insufficient Message: “Oh, my precious guest! We currently only have {available} seats available at this time slot, not the {requested} you requested.”
  • Inventory Exhausted Message: “Gracious me! This time slot is as full as a hobbit’s pantry after harvest!”

We will also tick Show Available Inventory and add this message: “{available} {seat|seats} available.” Voilà!

One last thing! We need to go back to our field choices and define how many seats we want available per time slot. Now that we have activated GP Inventory for the field, a wild “Inv.” column appeared! Let’s set our inventory to 20 seats per slot.

With that, we’re done with the Product field. The last piece we need to set up for seat reservation is a Quantity field to set how many seats will be booked.

  • Product Field Mapping: Choose the Product field we just finished setting up (Reservation Time).
  • Field Type: I chose Drop Down, but Number would work too.

Time to Edit Choices. I’ll create six to let fellowships reserve from one to six seats at a time.

Step 4: Set Up Reminder Notification

For the final touch, let’s create a notification to remind our clients they have a reservation for the current day. To send a notification at 8AM on the day of the reservation, we’ll choose 8 hour(s) after 12:00 am on Reservation Date.

And there you have it, as simple as stealing a dragon’s cup! With this booking system in place, BBB runs smoother than butter on a hobbit’s morning toast. No more scheduling conflicts, no more unexpected parties of dwarves, and definitely no more wizards marking our doors with mysterious runes! 🧙

In a follow-up article, we’ll explore how to create a restaurant voucher you can gift any Middle Earth citizen!

Leave a Reply

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

  • Trouble installing this snippet? See our troubleshooting tips.
  • Need to include code? Create a gist and link to it in your comment.
  • Reporting a bug? Provide a URL where this issue can be recreated.

By commenting, I understand that I may receive emails related to Gravity Wiz and can unsubscribe at any time.

Grab a bundle of free Gravity Forms plugins

Enter your email and receive our most popular free plugins and snippets, plus access to hundreds of others.

This field is for validation purposes and should be left unchanged.