On this page

Once WhatsApp's 24-hour customer service window closes on a conversation, VGraple CRM automatically replaces the free-text composer with a searchable list of your Meta-approved templates, so you can reopen the conversation the only way Meta allows. This article covers how to search, fill variables, and send one directly from the inbox.
Send templates from inbox: first 5 of 7 steps
- 1Open a conversation where the window has
- 2Search for the template you need
- 3Review each result
- 4Send a template with no variables
- 5Fill variables for a template that needs
Before you start
- You need at least one Meta-approved template before this screen has anything to show; see creating your first template if you have none yet.
- Sending from the inbox needs the "Send messages" permission (
inbox:send), the same permission needed to send a normal reply. - Templates with a media (image, video, document) or location header, a carousel layout, or a limited-time-offer strip cannot be sent from here; these are campaign-shaped templates that need a value chosen per send, and belong in a broadcast or a flow instead.
- This applies to WhatsApp conversations only. Web chat has no 24-hour window at all, and Instagram or Messenger use Meta's separate 7-day Human Agent window rather than templates.
Steps
- Open a conversation where the window has closed. The composer area shows an amber notice reading "24-hour window closed, send a pre-approved template to re-open it," replacing the normal text box entirely.

Search for the template you need, if you have more than a handful approved. The search box matches against the template's display name, its body text, and its category.
Review each result. Every row shows the template's name, its category (Marketing, Utility or Authentication), a badge counting how many variables it needs if any, and a preview of the body text. Hovering a row opens a full WhatsApp-style preview panel beside the list.
Send a template with no variables by clicking its "Send" button directly; it goes out immediately with no further steps.
Fill variables for a template that needs them. Click "Fill & send" to expand an input for each variable, labelled "Value for {{1}}," "Value for {{2}}" and so on. The send button only activates once every field has a value.
Click "Send template." The message goes out, appears in the thread like any outbound message, and the conversation's window status updates once WhatsApp delivers it.
If no templates are approved yet, the picker shows "No approved templates" with a "Create one" link straight to the template builder, so you are never stuck without a way forward.
Why the composer switches automatically instead of showing an error
Meta's WhatsApp Business Platform enforces the 24-hour customer service window at the API level: a free-form message sent after it closes is simply rejected, with error 131047. Many WhatsApp tools let an agent type a full reply, press send, and only then show that rejection, wasting the time spent typing and, worse, letting an agent believe a message went out when it did not. VGraple CRM checks the window before you start typing, not after, and replaces the composer itself so a doomed send is never attempted in the first place.
Example
A travel agency's customer asks about a package on Monday morning and the agent replies within the hour. The customer goes quiet for two days deciding. When the agent wants to follow up on Wednesday, the composer shows the template picker instead of a text box, because the window closed roughly 24 hours after the customer's last message. The agent searches for and sends a "Following up on your enquiry" utility template, which both reaches the customer and reopens the window for a normal conversation once they reply.
What you will see
The composer replaces its normal text box entirely with the template list the instant a conversation's window closes, and switches back to free text automatically the moment the window reopens, with no manual toggle either way. A sent template appears in the thread exactly as the customer receives it, including header media, body with variables already filled in, footer and buttons, matching the live preview you saw before sending. Attempting to send a campaign-shaped template (media header, carousel, limited-time offer) shows a plain-language explanation instead of a raw Meta error, telling you to use a broadcast or a flow for that template instead.
Settings and options
| Behaviour | What it does | Notes |
|---|---|---|
| Window-closed detection | Switches the composer to the template picker automatically | No manual toggle |
| Template search | Filters by display name, body text and category | Live as you type |
| Variable count badge | Shows how many {{n}} placeholders a template needs | 0 means "Send" sends immediately |
| Hover preview | Shows the full rendered template beside the list | Header, body, footer, buttons |
| Campaign-template block | Refuses media header, carousel and limited-time-offer templates with an explanation | Send those from a broadcast or flow |
| Authentication template | Requires its one variable and auto-attaches the required code button | Cannot send with no value |
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| The template I need is not in the list at all | It has a media or location header, is a carousel, or has a limited-time offer | Send it from a broadcast or a flow instead; the inbox intentionally does not support these |
| The send button stays greyed out after I fill variables | One or more variable fields is still empty or only whitespace | Every {{n}} in the body needs a non-empty value before it will send |
| Sending failed with a message about the template being disabled | Meta paused or disabled the template, often after quality issues | See template paused or disabled |
| Nothing shows in the picker at all | Your organisation has zero Meta-approved templates | Use the "Create one" link to build and submit your first template |
| The composer switched back to free text unexpectedly | The customer replied, which reopens the 24-hour window automatically | This is expected behaviour, not an error |
Related reading
If you send templates from the inbox often, review template categories and pricing to understand what each send costs, and message types and media to see how a sent template renders in the thread afterward.