E-mail is a tried and tested way to reliably send information and works perfectly for many applications. But what if you need to be notified of an order FAST?
Are e-mail notifications the best option when every second counts?
Depending on your WordPress hosting, e-mails can take up to two minutes to arrive in your inbox. But if your setup relies on relays, or software that periodically checks the server, the delay can be much longer. At times, high server loads or routing issues can mean even further delays. Occasionally, e-mails are even deleted when falsely flagged as spam.
If your internet connection goes down, you lose all access to incoming messages. In a time sensitive environment, you need to be 100% sure that you get all messages as fast as possible, no matter what.
The real-life limitations of e-mail notifications
E-mail probably isn't the best solution. I discovered this when building a website for my favorite local takeaway. My friend Randy had built a local business serving the best traditional southern fried chicken, homemade fries, and freshly made pizza. His big selling point (apart from the fantastic food) was his delivery service. Being in rural Ireland, some deliveries were up to 20 minutes away from the restaurant. He knew that any delay in the ordering system, especially for the customers further away, would mean a drop in his customer satisfaction score. Every second really did matter.
That's why, when he approached me about a website for his business, he wasn't very enthusiastic about online ordering. While it would streamline workflow for his staff and reduce the time spent on phone orders (and mistakes due to mis-hearing an order) - the possibility of an extra delay made it a no-go area. Until I told him about the Twilio integration for Formidable Forms.
SMS notifications as an alternative to e-mail
Twilio uses the power and speed of SMS notifications to make sure you get your notifications as fast as possible. It is perfect for online food ordering.
I'm not going to go into the details of how I set up the forms on that website as every business in this sector is unique. But I will say that I was pleasantly surprised with the resulting user experience using Formidable.
Unlike some e-commerce systems where every online restaurant menu item has its own product page and you have to navigate back and forward to add different items to your order, the single form gives a much simpler and quicker ordering experience. Now that multi-page forms support a progress bar/rootline, it's even easier. Use a page for each of the main menu options, divided up into sections just like the printed menu.
Get more detail about how to set up the SMS notifications in the docs.
Step one - Plan the pizza order form
Since every restaurant is unique, a tutorial on building this form would probably be too specific, and not apply to most readers. Instead, this is more of a general overview of how it could be done.
I'm going to base this on building a form for a Pizza restaurant. A multi-page order form with one page for each section of the menu will give a better user experience. Use separate values throughout the food order form in order to easily calculate the total price at the end.
Page one is the pizza order form with options to customize the size and toppings. Then repeatable sections allow the customer to order multiple pizzas and customize each one. And the best way to do this is with an order form plugin (like Formidable Forms).
Also check out the guide on how to dynamically show product images based on selections. Product photos in every section of the form could make it very big and adversely affect the user experience. But used correctly in appropriate places, it can look great.
Pages two, three, and four of my form will be for gourmet burgers and homemade fries, followed by sides and salads, and then drinks. These sections are much simpler, so repeatable sections aren't needed. I'll just use number fields next to each menu choice (that default to zero) and the customer increases the number on the items he wants to order.
Step two - Calculate the order total and checkout
Even with separate values, the final calculation can get a bit complex when a menu has 100 or more items! To simplify matters, use a hidden field for a subtotal at the bottom of each page. If you discover an error in testing, this will make it easier to track down. It will also make is much easier to add and remove menu items. Keeping each form page a sensible size and using subtotals is definitely the way to go!
Once you're happy with the calculations, setup the Paypal Standard add-on or the Stripe Payment add-on to process payments.
The final page will be the checkout page. On the checkout page, include fields for postal/delivery address, email address, cell number for SMS notifications, and a paragraph field for directions for the delivery driver.
Step three - Setup the notifications
One of my favorite things about Formidable payments is the ability to choose when notifications are triggered. Notifications don't have to be sent as soon as the submit button is clicked. Instead, the trigger action can be set to "Successful Payment". This means you ONLY get notified when the order is properly completed and paid for - an essential feature in the food service business if you don't want to give away free pizza every day!
Setup four notifications:
- A short SMS to the customer. Thank them for their order, give them an approximate delivery time (30 - 45 minutes), and tell them they will be emailed a receipt.
- An email to the customer. Because more info can be included in an email, set this up as a full receipt. Maybe include a time limited coupon code or links to special offers or new menu items too.
- An SMS to the restaurant. Include the full order details in the most compact form possible.
- An email to the restaurant. A backup in the unlikely event that the SMS service goes down!
Step four - Let your customers know!
An online pizza order form can save your staff time, reduce mistakes, and get orders out for delivery quicker. Don't be afraid to shout about it! Make a big deal about it in your next newsletter. Shout about it on social media. Even get it printed on your napkins!
** Bonus ** Build your mailing list
You already know the value of a highly targeted mailing list for your business. But did you know that your new system to order pizza online can help you grow this list? Use our Mailchimp add-on to capture details from online orders and add customers to your Mailchimp list! Utilizing this list to promote new menu items, seasonal specials or even local events that you're sponsoring can be a great way to boost your sales and increase community involvement.
JR says
When I received the Formidable EDM with the title 'Read the SMS Text with Twilio tutorial' , I was excited to click to see how the experts do it.
Instead, I saw this post, which gives a great overview of the idea and some general hints on the process, with lots of links to other paid add-ons.
How much more useful would this post be if you had added some screenshots, and even a downloadable file (an opportunity to show how cool exporting and importing data from FMPro can be).
There was actually no Twilio setup information at all.
I was going to check out the other articles, but, on the strength of this one, didn't.
Nathanael Jones says
Hi JR,
The Twilio add-on is actually quite simple to steup, so we decided that an overview of how it could be used in a real world situation would be better than a step by step tutorial for this one - - there are screenshots and loads of setup info in the official docs.
JR says
I guess you've missed the point of my comment, Nathanael - the EDM mentions 'tutorial', not 'overview'. The difference is fairly plain to me.
Nonetheless, this link to the Twilio setup improves the content immensely, thank you.
Still, it would be awesome if these kind of 'tutorials' actually had some source files.
jpw94 says
Nathaniel, where is the sample of that completed pizza form?
Nathanael Jones says
Unfortunately the business closed down recently & the website & form are gone. 🙁
Jason says
What form would I use to make something similar to a pizza order form? For example, let's say I want to make a form to order a computer. So I would pick the base computer, and then I want to add on options like an extra space hard drive, or an upgraded graphics card.
Nathanael Jones says
Yep - you could use the same principles, but customize the fields to suit your exact needs. You probably wouldn't need the instant notifications for a computer order form - but you may make more extensive use of field calculations.