WhatsApp Message Templates
Templates allow you to send messages outside the 24-hour customer service window.
Understanding Templates
Why Templates?
WhatsApp enforces a 24-hour messaging window:
- Within 24 hours: Free-form messages allowed
- After 24 hours: Only approved templates allowed
Templates ensure businesses don't spam customers.
Template Categories
| Category | Purpose | Approval |
|---|---|---|
| Utility | Transactional updates | Easier |
| Marketing | Promotional content | Stricter |
| Authentication | OTP, verification | Standard |
Creating Templates
Template Structure
Header (optional)
────────────────
Body (required)
────────────────
Footer (optional)
────────────────
Buttons (optional)
Variables
Use {{1}}, {{2}}, etc. for dynamic content:
Hello {{1}},
Your order #{{2}} has been {{3}}.
Expected delivery: {{4}}
Header Types
| Type | Example |
|---|---|
| Text | Order Update |
| Image | Product photo |
| Video | How-to video |
| Document | Invoice PDF |
Button Types
| Type | Example |
|---|---|
| Quick Reply | "Track Order" |
| URL | Link to tracking page |
| Call | Click to call |
Template Examples
Order Confirmation
Category: Utility
Name: order_confirmation
Header: Order Confirmed ✓
Body:
Hi {{1}},
Thank you for your order!
Order #: {{2}}
Total: {{3}}
We'll notify you when it ships.
Footer: Reply STOP to unsubscribe
Buttons:
- [View Order] → URL
Shipping Update
Category: Utility
Name: shipping_update
Header: 📦 Shipped!
Body:
Hi {{1}},
Great news! Your order #{{2}} is on its way.
Carrier: {{3}}
Tracking: {{4}}
Expected: {{5}}
Buttons:
- [Track Package] → URL
Appointment Reminder
Category: Utility
Name: appointment_reminder
Body:
Hi {{1}},
Reminder: Your appointment is scheduled for:
📅 {{2}}
⏰ {{3}}
📍 {{4}}
Buttons:
- [Confirm] → Quick Reply
- [Reschedule] → Quick Reply
Cart Abandonment
Category: Marketing
Name: cart_reminder
Header: IMAGE (cart icon)
Body:
Hi {{1}},
You left some great items in your cart!
🛒 {{2}}
💰 Total: {{3}}
Complete your order before they're gone.
Buttons:
- [Complete Order] → URL
Submitting Templates
Via Meta Business Manager
- Go to WhatsApp Manager → Message Templates
- Click Create Template
- Fill in all fields
- Submit for review
Via Twilio
- Go to Messaging → Content Template Builder
- Click Create template
- Select WhatsApp
- Fill in details
- Submit
Approval Timeline
| Status | Typical Time |
|---|---|
| Pending | Submitted |
| In Review | 1-24 hours |
| Approved | Ready to use |
| Rejected | See reason, resubmit |
Template Best Practices
Content Guidelines
✓ Do:
- Be clear about message purpose
- Include opt-out instructions
- Use appropriate category
- Keep messages concise
✗ Don't:
- Send promotional content as utility
- Use misleading language
- Include prohibited content
- Exceed character limits
Variable Guidelines
- Don't use variables for entire message
- Variables should be specific data
- Don't change template meaning with variables
Example of Good vs Bad
Good:
Hi {{1}}, your order #{{2}} has shipped.
Bad:
{{1}} // Entire message is a variable
Sending Templates
In Fyncall
Templates are sent automatically when:
- Customer hasn't messaged in 24 hours
- You need to initiate conversation
- Workflow triggers template
Manual Send
- Open conversation
- Click Send Template
- Select template
- Fill in variables
- Send
Automated Send
Configure in workflows:
IF order.status changes to "shipped"
THEN send template "shipping_update" with:
{{1}} = customer.name
{{2}} = order.number
{{3}} = shipment.carrier
{{4}} = shipment.tracking
{{5}} = shipment.expected_date
Template Limits
Message Limits
Templates count toward your daily messaging limit.
Template Count
| Account Type | Max Templates |
|---|---|
| Standard | 250 |
| Verified | 250 |
Rate Limits
Templates are subject to WhatsApp rate limits based on your tier.
Troubleshooting
Template Rejected
Common reasons:
- Wrong category selection
- Missing opt-out option
- Variable used for entire message
- Policy violation in content
Fix: Review rejection reason, modify, resubmit.
Template Not Sending
- Check template is approved
- Verify variables are filled
- Confirm customer number is valid
- Check messaging limits
Low Delivery Rate
- Check phone numbers are valid
- Verify customers haven't blocked you
- Review content for spam triggers