Creating templates
What templates are, the formats, how to create one, variables, and how they adapt across channels.
Written By Bram Haenraets
Last updated About 7 hours ago
Templates are the reusable messages you send. They're used by both Guest Journeys (sent automatically across the stay) and Campaigns (one-off broadcasts) — build a template once, use it in either.
Finding templates
Open Templates from the sidebar. The library lists your templates, grouped into tabs: Active, Drafts, Pending approval, Rejected and Archived. Search and filter to find one quickly.

What a template contains
A format (plain message, photo, buttons, list, and more).
Content in your primary language — header, body, footer, buttons.
An automatic SMS fallback and, where relevant, an RCS version.
Auto-translations into your active languages, reviewed when you publish — see Reviewing and translating messages.
An approval state, because WhatsApp must approve templates before they send.
Template formats
Pick the format that fits what you're sending. This table shows which channels each works on and what it's best for.
List picker and Location pin only send inside an active 24-hour conversation. In a Guest Journey or campaign, place them after a step where the guest taps a button — never as the opening message to a guest who isn't already chatting. Viqal won't block you, so sequence them correctly.
You don't pick the Card format — the editor switches to it automatically when your content goes beyond what a simpler format allows: when you add a header, footer, and/or buttons (beyond plain text for a plain message, or beyond a single photo + text for a photo + message). As your content grows, the format follows.
Every business-initiated format needs WhatsApp approval first — see Template approval and why Meta rejects templates.
Creating a template
The template editor walks you from format to finished message, with a live preview as you go.
Start from a preset or from blank
Select New template, then choose how to begin:
Use a preset — opens the Template library. Filter by purpose (Welcome, Pre-arrival, Check-in, Upsell, In-stay, Check-out, Post-stay) and by channel, then click a preset to clone it into your Drafts and edit.
Start from blank — opens the editor with an empty template.

Either way, you then work through the editor:

1. Pick a format
Choose the format at the top (see the table above). The content blocks below change to match it. A preset already has a format chosen — change it here if you need to.
2. Fill in the content
Write your primary-language content — header, body, footer and any buttons. Insert variables (like the guest's name or check-in time) where you want details filled in automatically — see Inserting variables below.

Buttons make a message tappable. A template can have at least 1, and up to 5 quick replies, 2 link buttons and 1 call button:
Quick reply — a tappable canned reply; when the guest taps it, the button's text is sent back as their reply (handy for "Yes" / "No" or "Tell me more").
Link button — opens a URL when tapped (your booking page, a menu, directions).
Call button — dials a phone number when tapped.
Template connector — a button for your workflows that triggers another template when tapped (for example, a "Leave feedback" button that sends your feedback template). The connector ID shown next to it is for developers.
3. Set channels
WhatsApp is always on. Add RCS and SMS as needed; the editor warns you when a rich format won't carry over cleanly to a simpler channel (see Channels and fallbacks below).
4. Preview
The live preview shows the message as a guest would see it. Toggle between WhatsApp and SMS to check both.
5. Submit for approval
When it's ready, select Submit for approval and choose the template's category — Utility or Marketing (some formats are automatically classed as Marketing). Depending on what needs checking, this either opens a short review (see Reviewing and translating messages) or submits straight to WhatsApp for approval (see Template approval and why Meta rejects templates).
Inserting variables
Variables are placeholders you drop into a template that automatically fill with each guest's own details when the message sends. Write {{guest.name}} once, and every guest sees their own name. They're what makes an automated message feel personal — and accurate, because the details come straight from the booking instead of being typed by hand.
There are two kinds: guest & reservation variables (name, email, phone, reservation number, check-in/out dates — filled per guest from the booking, read-only) and property variables (Wi-Fi, breakfast hours, your check-in policy — which you configure in Property → Variables). To insert one, use the personalisation picker in the editor — look for Add personalisation — and it's dropped in at your cursor, so you don't type the exact name by hand.
If a guest doesn't have a value for a variable — say there's no email on file — it renders as blank, so write your message to read cleanly if a variable comes out empty. For the full list of variables and to create your own, see Property → Variables.
Channels and fallbacks
You write a template once, and Viqal adapts it to each channel so the guest always gets a usable message — even if they're not on WhatsApp. Viqal tries channels in order: WhatsApp (primary) → RCS → SMS, stepping down to the next if a guest can't be reached. (Email and Instagram / Facebook Messenger are on the roadmap this year — not part of the fallback chain yet.)
WhatsApp is the primary channel, where rich formats look their best. RCS closely mirrors WhatsApp, so its version is usually identical and publishes automatically when it matches. For SMS/MMS, the channel depends on the format: a plain-text message goes by SMS; a photo or file goes by MMS (carrying the image or document), not plain SMS. Rich formats degrade gracefully — a carousel or list becomes text, a location becomes its address. Viqal auto-generates the SMS/MMS version from your WhatsApp content, and you can switch it to custom to edit the wording; the editor flags where a format degrades so you can check it still reads well. The publish review makes sure the fallback versions are right before anything sends.