Context
These WhatsApp message templates are registered in Meta's WhatsApp Manager for NeetoCal. This document lists every template's exact key, its components (header, body, footer), and the variables it supports, so the development team can trigger the right template on each booking event.
Conventions
Every WhatsApp template is made of three separate components — Header, Body, and Footer. They are kept distinct on purpose (Meta treats them as separate parts); do not merge them into a single blob, as that gets confusing.
Header — the short bold title line (e.g. "Your meeting is scheduled.").
Body — the greeting and meeting details, including all variables.
Footer — the fixed line "Please do not reply to this message." (same across every template).
Templates come in host and client variants (
..._for_the_host/..._for_the_client) because the two recipients need different content (and, later, different action buttons).No raw links in the body. We do not paste full URLs into the message. Meta does not recommend it — it looks spammy, can make the message seem illegitimate, and multiple links read poorly. Actions are referenced as "from your dashboard". Link actions (reschedule/cancel) will be added later as proper WhatsApp buttons with a redirect domain — tracked in a separate issue.
Category: Utility. Language: English (en) for v1. Top-5 languages to be added later.
Variables reference
Variable |
Meaning |
|---|---|
|
Host's name (greeting) |
|
Client / booker's name (greeting) |
|
Meeting / event-type title |
|
Meeting date & time in the host's timezone |
|
Meeting date & time in the client's timezone |
|
Client's timezone (shown on host templates only) |
|
List of attendees |
|
Location / join link |
|
Booking identifier |
Templates
1. booking_confirmation_for_the_host
Trigger: a new booking is confirmed — notify host
Variables:
host_name,meeting_name,host_meeting_time,client_time_zone,attendee_list,meeting_location,booking_id
Header: Your meeting is scheduled.
Body:
Hi {{host_name}},
A new meeting has been successfully scheduled. Here are the details:
What: {{meeting_name}}
When: {{host_meeting_time}}
Client timezone: {{client_time_zone}}
Who: {{attendee_list}}
Where: {{meeting_location}}
Booking ID: {{booking_id}}You can manage this booking from your dashboard.
Footer: Please do not reply to this message.
2. booking_confirmation_for_the_client
Trigger: a new booking is confirmed — notify client
Variables:
client_name,meeting_name,client_meeting_time,attendee_list,meeting_location,booking_id
Header: Your meeting is scheduled.
Body:
Hi {{client_name}},
You have successfully scheduled a meeting. Here are the details:
What: {{meeting_name}}
When: {{client_meeting_time}}
Who: {{attendee_list}}
Where: {{meeting_location}}
Booking ID: {{booking_id}}Thank you.
Footer: Please do not reply to this message.
3. booking_reminder_for_the_host
Trigger: upcoming-meeting reminder — notify host
Variables:
host_name,meeting_name,host_meeting_time,client_time_zone,attendee_list,meeting_location,booking_id
Header: Your meeting is coming up.
Body:
Hi {{host_name}},
This is a reminder for your upcoming meeting. Here are the details:
What: {{meeting_name}}
When: {{host_meeting_time}}
Client timezone: {{client_time_zone}}
Who: {{attendee_list}}
Where: {{meeting_location}}
Booking ID: {{booking_id}}You can manage this booking from your dashboard.
Footer: Please do not reply to this message.
4. booking_reminder_for_the_client
Trigger: upcoming-meeting reminder — notify client
Variables:
client_name,meeting_name,client_meeting_time,attendee_list,meeting_location,booking_id
Header: Your meeting is coming up.
Body:
Hi {{client_name}},
This is a reminder for your upcoming meeting. Here are the details:
What: {{meeting_name}}
When: {{client_meeting_time}}
Who: {{attendee_list}}
Where: {{meeting_location}}
Booking ID: {{booking_id}}Thank you.
Footer: Please do not reply to this message.
5. booking_reschedule_for_the_host
Trigger: a meeting is rescheduled — notify host
Variables:
host_name,meeting_name,host_meeting_time,client_time_zone,attendee_list,meeting_location,booking_id
Header: Your meeting has been rescheduled.
Body:
Hi {{host_name}},
A meeting has been rescheduled. Here are the updated details:
What: {{meeting_name}}
When: {{host_meeting_time}}
Client timezone: {{client_time_zone}}
Who: {{attendee_list}}
Where: {{meeting_location}}
Booking ID: {{booking_id}}You can manage this booking from your dashboard.
Footer: Please do not reply to this message.
6. booking_reschedule_for_the_client (deferred)
Status: to be created on Aug 11, 2026 (Meta requires ~4 weeks before the same template name can be reused).
Expected variables (mirror of client confirmation/reminder):
client_name,meeting_name,client_meeting_time,attendee_list,meeting_location,booking_idHeader / Body / Footer: to be finalized when the template is created.
7. booking_cancellation_for_the_client
Trigger: a meeting is cancelled — notify client
Variables:
client_name,meeting_name,client_meeting_time,attendee_list,booking_id
Header: Your meeting is cancelled.
Body:
Hi {{client_name}},
Your meeting has been cancelled. Here are the details of the cancelled meeting:
What: {{meeting_name}}
When: {{client_meeting_time}}
Who: {{attendee_list}}
Booking ID: {{booking_id}}Thank you.
Footer: Please do not reply to this message.
8. booking_cancellation_for_the_host
Trigger: a meeting is cancelled — notify host
Variables:
host_name,meeting_name,host_meeting_time,client_time_zone,attendee_list,booking_id
Header: Your meeting is cancelled.
Body:
Hi {{host_name}},
A meeting has been cancelled. Here are the details of the cancelled meeting:
What: {{meeting_name}}
When: {{host_meeting_time}}
Client timezone: {{client_time_zone}}
Who: {{attendee_list}}
Booking ID: {{booking_id}}You can manage this booking from your dashboard.
Footer: Please do not reply to this message.
9. booking_awaiting_approval_for_the_client
Trigger: booking submitted, pending host approval — notify client
Variables:
client_name,meeting_name,client_meeting_time,attendee_list,booking_id
Header: Your meeting is pending approval.
Body:
Hi {{client_name}},
Your meeting request has been received and is awaiting the host's approval. Here are the details:
What: {{meeting_name}}
When: {{client_meeting_time}}
Who: {{attendee_list}}
Booking ID: {{booking_id}}You will be notified once the host responds.
Thank you.
Footer: Please do not reply to this message.
10. booking_awaiting_approval_for_the_host
Trigger: booking submitted, pending host approval — notify host
Variables:
host_name,meeting_name,host_meeting_time,client_time_zone,attendee_list,booking_id
Header: A meeting is awaiting your approval.
Body:
Hi {{host_name}},
A new meeting request needs your approval. Here are the details:
What: {{meeting_name}}
When: {{host_meeting_time}}
Client timezone: {{client_time_zone}}
Who: {{attendee_list}}
Booking ID: {{booking_id}}You can approve or decline this request from your dashboard.
Footer: Please do not reply to this message.
11. booking_rejected_for_the_client
Trigger: host declines a pending request — notify client
Variables:
client_name,meeting_name,client_meeting_time,attendee_list,booking_id
Header: Your meeting request has been declined.
Body:
Hi {{client_name}},
The host has declined your meeting request. Here are the details:
What: {{meeting_name}}
When: {{client_meeting_time}}
Who: {{attendee_list}}
Booking ID: {{booking_id}}You can book a new slot that works for you.
Thank you.
Footer: Please do not reply to this message.
Status summary
# |
Template |
Recipient |
Status |
|---|---|---|---|
1 |
|
Host |
Created |
2 |
|
Client |
Created |
3 |
|
Host |
Created |
4 |
|
Client |
Created |
5 |
|
Host |
Created |
6 |
|
Client |
Pending — Aug 11, 2026 |
7 |
|
Client |
Created |
8 |
|
Host |
Created |
9 |
|
Client |
Created |
10 |
|
Host |
Created |
11 |
|
Client |
Created |