A rebuilt WhatsApp template builder, plus per-contact media
Creating and editing WhatsApp templates now happens in a completely rebuilt builder with a live phone preview, so what you see while you author is what your contact actually receives. And media headers no longer need a hard-coded URL: point them at a dynamic value and the right image, video, or document resolves per contact at send time.

> 📎 Send every customer their own invoice, ticket, or personalised image from a single template. No more cloning a template for every asset and waiting on Meta to approve each copy.
🎨 A rebuilt create and edit experience

📱 Live phone preview while you build
🔗 Dynamic media URLs, the big one
-
Media that changes per contact:
Media header fields now accept custom fields and dynamic values, not just one static public URL. At send time the value resolves for that specific contact and Meta receives a concrete URL for that message.
-
One template instead of many:
Previously, a different image or document meant a different template, and every new template goes to Meta for approval. Now a single approved template serves every contact’s unique asset.
-
Works across your send surfaces:
Workflows and automations, conversations, bulk actions, calendar appointments, reputation review requests, and missed call text back all support dynamic media headers.
🖼️ Personalised images in bulk, the use case worth stealing
-
Every contact gets their own image, from one send:
Pair dynamic media with an image personalisation service like NiftyImages and a single bulk action renders a unique image for every recipient. Build the design once with a name placeholder, and let the URL resolve per contact at send time.
-
What your contacts actually see:
Shaun opens WhatsApp to an image reading “Here’s a special offer for you, Shaun.” Varun gets the same design reading “Here’s a special offer for you, Varun.” Robin gets his. One template, one bulk send, thousands of individually rendered images.
-
Beyond names:
The same approach works for personalised discount codes, event tickets with the attendee’s seat, course certificates, renewal dates, or a product image matched to what that contact last bought.

✅ Failures you can actually diagnose
-
No silent wrong media:
A dynamic value that resolves to a valid public URL sends normally. One that resolves to something invalid or empty fails clearly, so you never discover that the wrong document went out by hearing it from your client.
-
Template builder:
Sub-account →
Settings → WhatsApp → Templates → Create
or
Edit
-
Reputation:
Reputation → Settings → WhatsApp Requests → Open WhatsApp Template Builder
-
Missed call text back:
Settings → Phone System → Voice → Voicemail & Missed Call TextBack → Missed Call Text Back → Customize

For per-contact documents (invoices, contracts, IDs):
- Store a publicly reachable HTTPS URL on a contact custom field.
- In your template’s media or header field, map to that custom field instead of pasting a fixed URL.
- Send from a workflow, bulk action, or conversation. Each contact receives their own file.
For personalised images at scale:
- Create your image design in a service like NiftyImages, with a placeholder for the contact’s name or any other detail.
- Use the personalised image URL as your media header value, with the contact’s detail supplied dynamically.
- Run a bulk action. Every contact receives an image rendered just for them.
One requirement worth noting:
the resolved value must be a publicly reachable URL that Meta can download. Private Drive links, URLs behind a login, and empty fields will fail.

Why this matters for your business
Personalised media used to carry a hidden tax. Every variation meant another template, and every template means another round of Meta approval before you can send anything. That made per-customer invoices, tickets, certificates, and personalised campaign images impractical for most agencies, so they either skipped them or built fragile workarounds.

-
Run personalised image campaigns at bulk scale
instead of sending the same flat creative to everyone
-
Send genuinely personalised documents
without multiplying your template library
-
Skip the approval queue
for asset changes, since the approved template stays the same and only the resolved URL varies
-
Keep automations stable
, because workflows reference a dynamic value rather than a URL you hand-edit after every clone
-
Catch layout mistakes before Meta sees them
, with a preview that matches the real message
Open Settings → WhatsApp → Templates, build one, and try a personalised image on your next bulk send.

