Getting Started with WhatsApp
SendSeven integrates with the WhatsApp Business API to let you send and receive messages on WhatsApp at scale. This guide covers the key concepts you need to understand before building your WhatsApp integration.
Prerequisites
- A SendSeven account with a WhatsApp channel configured
- An API token with
messages:createandchannels:readscopes - A Meta Business Account with a verified WhatsApp Business phone number
Setting Up WhatsApp
WhatsApp Business API channels are configured through the Embedded Signup flow in the SendSeven dashboard:
- Log in to SendSeven
- Navigate to Settings > Channels
- Click Add Channel > WhatsApp
- Complete the Facebook Embedded Signup flow
- Select your WhatsApp Business phone number
Once connected, SendSeven automatically handles webhook registration, message routing, and delivery status updates.
During setup you choose between API mode (the number is fully migrated to the Cloud API) and Coexistence mode (the number stays linked to the WhatsApp Business App on your phone, and SendSeven runs in parallel). If you are unsure which one to pick, read WhatsApp Coexistence vs. API-Only first.
Key Concepts
The 24-Hour Messaging Window
WhatsApp enforces a 24-hour customer service window. The rules are:
| Scenario | What You Can Send |
|---|---|
| Customer messaged within the last 24 hours | Any message type (text, media, interactive) |
| No customer message in 24 hours | Only approved template messages |
The 24-hour window reopens every time a customer sends you a message. Outside this window, you must use a pre-approved template message.
Attempting to send a non-template message outside the 24-hour window will fail with a validation error from the WhatsApp Business API.
Templates
Templates are pre-approved message formats that Meta reviews before you can use them. They are the only way to initiate a conversation with a customer or re-engage after the 24-hour window closes.
Templates can include:
- Header -- text, image, video, or document
- Body -- the main message text with variable placeholders (
{{1}},{{2}}, etc.) - Footer -- smaller text below the body
- Buttons -- URL or quick-reply buttons
See Understanding Templates and Send a Template Message for details.
You do not have to write your first template yourself. Meta publishes a catalog of ready-made UTILITY and AUTHENTICATION templates in many languages — adopt one unchanged and it lands in your WhatsApp Business Account already approved, so you can send it straight away. See Meta Template Library.
The SendSeven app has an in-app WhatsApp guide (dashboard, WhatsApp settings, and the template screens) with a setup checklist, a short quiz for choosing between Coexistence and the API, and answers to the common questions — the 24-hour window, what a template is, and when Meta needs a payment method on your account. There is also a step-by-step WhatsApp setup guide on our website.
Template Categories
Meta classifies templates into categories that affect review timelines and pricing:
| Category | Use Case | Examples |
|---|---|---|
UTILITY | Transaction-related | Order confirmations, shipping updates, appointment reminders |
MARKETING | Promotional | Offers, product announcements, newsletters |
AUTHENTICATION | Login/verification | OTP codes, two-factor authentication |
Message Types on WhatsApp
WhatsApp supports a rich set of message types through SendSeven:
| Type | Within 24h Window | Outside 24h Window |
|---|---|---|
| Text | Yes | Template only |
| Image | Yes | Template only |
| Document | Yes | Template only |
| Audio | Yes | Template only |
| Video | Yes | Template only |
| Interactive (buttons/list) | Yes | No |
| Carousel | Template only | Template only |
| Contact card | Yes | No |
| Sticker | Yes | No |
| Reactions | Yes | No |
Quick Start: Send a WhatsApp Message
Within an active 24-hour window, send a text message:
curl -X POST "https://api.sendseven.com/api/v1/messages" \
-H "Authorization: Bearer s7_api_a1b2c3d4e5f6789012345678abcdef00" \
-H "Content-Type: application/json" \
-d '{
"contact_id": "contact_xyz789",
"channel_id": "channel_wa_001",
"text": "Hi! Your order #5678 has shipped. Estimated delivery: Feb 15.",
"message_type": "text"
}'
To initiate a conversation outside the 24-hour window, use a template:
curl -X POST "https://api.sendseven.com/api/v1/whatsapp-templates/tpl_abc123/send" \
-H "Authorization: Bearer s7_api_a1b2c3d4e5f6789012345678abcdef00" \
-H "Content-Type: application/json" \
-d '{
"contact_id": "contact_xyz789",
"channel_id": "channel_wa_001",
"language": "en_US",
"variable_values": ["John", "ORD-5678", "Feb 15, 2026"]
}'
Next Steps
- Understanding Templates -- template structure, categories, and language support
- Meta Template Library -- pre-approved templates you can adopt and send immediately
- Send a Template Message -- sending template messages with variables
- WhatsApp Interactive Messages -- buttons and lists on WhatsApp
- 24-Hour Messaging Window -- detailed window rules