Skip to main content

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:create and channels:read scopes
  • 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:

  1. Log in to SendSeven
  2. Navigate to Settings > Channels
  3. Click Add Channel > WhatsApp
  4. Complete the Facebook Embedded Signup flow
  5. 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:

ScenarioWhat You Can Send
Customer messaged within the last 24 hoursAny message type (text, media, interactive)
No customer message in 24 hoursOnly 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.

danger

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.

New to WhatsApp Business?

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:

CategoryUse CaseExamples
UTILITYTransaction-relatedOrder confirmations, shipping updates, appointment reminders
MARKETINGPromotionalOffers, product announcements, newsletters
AUTHENTICATIONLogin/verificationOTP codes, two-factor authentication

Message Types on WhatsApp

WhatsApp supports a rich set of message types through SendSeven:

TypeWithin 24h WindowOutside 24h Window
TextYesTemplate only
ImageYesTemplate only
DocumentYesTemplate only
AudioYesTemplate only
VideoYesTemplate only
Interactive (buttons/list)YesNo
CarouselTemplate onlyTemplate only
Contact cardYesNo
StickerYesNo
ReactionsYesNo

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