FeatureNew

WhatsApp booking automation: let customers book without leaving the chat

One booking, followed from the first message to the day-before reminder. We build it for a made-up dog groomer so you can see every piece, what it costs in effort, and where it still needs a human.

6 min read

Most bookings by message go like this. "Are you free Thursday?" "Which Thursday?" "The 5th, afternoon." "We have 2:30." "Can't do 2:30." Eleven messages later someone writes it on a calendar, and half the time the customer has already forgotten.

WhatsApp booking automation shortens that to one tap: the customer opens a short form inside the chat, sees only the times that are free, picks one, and gets a confirmation. This walk-through shows the whole journey, using a hypothetical dog groomer called Barkside. Barkside isn't a real customer. It's just a way to follow one booking from start to finish with Avox's tools.

The pieces behind WhatsApp booking automation

Four things make this work, and you may already have two of them:

  • A Flow. A WhatsApp Flow is a structured form that opens inside the chat. Meta describes Flows as a way to build structured interactions for business messaging.
  • Two tables. One for the times you offer, one for the bookings that result.
  • Automations. One to send the Flow, one to confirm the booking, one to remind.
  • Approved templates. Messages that go out later, after the 24-hour window has closed, must be templates.

Step 1: the tables

Avox ships premade tables for this. Time slots holds the free times: a date, a time, a service, who it's with, how many places there are and how many are taken. Appointments is where each booking lands: booking number, customer, phone, service, date, time and status (Booked, Confirmed, Completed, Cancelled or No show).

Barkside adds its slots by hand: Thursday 5th at 10:00 with Priya for a bath, one place; 11:00, one place; and so on. This is the fiddly part. The slots are yours to maintain, so keep them a week or two ahead and don't expect them to appear from nowhere.

Step 2: the Flow

In Avox, open Flows and start from the premade Appointment booking Flow, listed under the ones that work live with your tables. It has three screens:

  1. Date. The customer types their name and picks a preferred day.
  2. Time. A dropdown shows only the free times for that day, read from your Time slots table. Booked ones don't appear.
  3. Confirm. The customer sees the day, time and service, can add a note, and presses Confirm booking.

Behind the scenes, Avox's own endpoint answers each screen from your tables, so you don't run a server. When the customer picks a time, Avox holds it for 10 minutes. On confirm, it books the place and saves a row in Appointments with status Booked. Two people can't get the same last place. If someone else grabbed it first, the customer is told and asked to pick again.

Use Validate to check the Flow with Meta, then Create & publish. Send it to your own phone and complete it twice before any customer sees it. Note that a published Flow can't be edited in place: you make a new version and retire the old one.

Step 3: send the Flow when someone asks

Make an automation with a Keyword trigger on words like "book" and "appointment", and add a Use Flows action with your published Flow and a button label such as "Book now". Sending a Flow costs 3 automation credits each time.

Because the customer just messaged you, the 24-hour window is open and the Flow can go out as a normal message. Meta lists Flows among the message types you can send while the window is open.

Step 4: confirm automatically

Avox's premade automation Booking confirmation from your calendar starts when a booking is added to your Appointments table, whether it came from a Flow, the API or a person typing it in. It sends a confirmation template with the service, day, time and booking number, and tags the contact booked.

It needs an approved template, so create one from the template library (the Booking confirmed template is written for it), submit it to Meta, and wait for Approved before switching the automation on. Our guide to template approval covers the usual snags.

Step 5: the day-before reminder

A second premade, Reminder a day before each booking, watches the date and time in each Appointments row. Twenty-four hours before the booking, it sends a reminder template with two buttons, Confirm and Reschedule.

  • Confirm changes the row's status to Confirmed and sends a thank-you.
  • Reschedule notifies your team and asks the customer for a better day and time.
  • Cancelled bookings are skipped.

Reminders go out when the window has usually closed, so this must be a template. Meta charges templates by category and country. Check the rate card for your market, and read our notes on what Meta charges before you estimate a month.

What it won't do

Being honest about limits saves you a bad Saturday.

  • It isn't a calendar sync. The Time slots table is the source of truth for what's free. If your real diary lives in Google Calendar, you can connect it separately (see connected apps), but the Flow offers what your table says.
  • Cancelling doesn't return the slot. The premade cancel automation marks the booking row Cancelled. As shipped, it doesn't put the place back in Time slots, so add a step to lower the slot's Booked count if you want that time offered again.
  • Every send has a cost. Credits for the automation steps, plus Meta's charge for templates. Neither is large for one booking, but they add up over a month, so check your plan's credits on the pricing page.
  • Plans set limits on how many Flows, tables and automations you can have, so confirm yours before you design anything big.

Questions people ask

Do I need a developer?

Not for this setup. The premade Flow uses Avox's own endpoint and your tables. If you want slots from your own system, a Flow can instead call a server you run, which takes a developer.

Can customers book outside opening hours?

Yes, because the Flow only shows times you've added. The customer can start the Flow at midnight; they'll just see the free times you listed.

What if two people pick the same slot?

Avox holds a picked slot for 10 minutes and confirms it only once. The second person sees that it was just taken and goes back to choose another.

How do I test it?

Walk through it on your own phone with a slot you create for the purpose: ask to book, complete the Flow, confirm, and wait for the reminder. The Flow guide and the automation docs cover the screens.

Your next step: add five time slots for next week to a Time slots table, create the Appointment booking Flow, and book yourself in before you tell a single customer.

Thanks for reading!

Thanks for reading

How did this land? 0 reactions

Was this helpful?

Try it yourself

Set up WhatsApp booking automation with a Flow, a table and a reminder: customers pick a free time in the chat and the booking confirms itself. A full walk-through.

Share this story

Follow Avox on Google

Pick Avox as a preferred source and Google shows our stories more often in Top Stories and its search results.

Add Avox as a preferred source on Google(opens Google)

Related articles

More stories on the same topics, picked for you.

Bring your team onto Avox today

No switch, no lost history just faster replies from day one.

Signing up also gets you product updates, now and then. Unsubscribe any time. Privacy