Skip to main content
This guide covers WhatsApp Business messaging, account setup, message types, and integration with Plivo.

Overview

WhatsApp Business API enables direct customer communication on WhatsApp with:
  • Real-time messaging
  • Global reach (2+ billion users)
  • Rich media support
  • Message templates
  • Delivery receipts

Key Features

FeatureDescription
Business ProfileDisplay business info (address, website, email)
Message TemplatesPre-approved messages for initiating conversations
Rich MediaImages, documents, videos, audio
Interactive MessagesButtons, lists, quick replies
Delivery StatusReal-time delivery and read receipts

Getting Started

Prerequisites

  1. Meta Business Account
  2. Business verification with Meta
  3. WhatsApp Business Account (WABA)
  4. Phone number for WhatsApp

Setup Process

  1. Create WABA: Through Plivo’s embedded signup flow
  2. Verify Business: Complete Meta business verification
  3. Register Phone Number: Use existing or rent from Plivo
  4. Configure Display Name: Set business name for WhatsApp
  5. Create Templates: Submit templates for approval
  6. Integrate API: Connect your systems
See WhatsApp concepts for detailed setup.

WhatsApp Business Account (WABA)

What is WABA?

A WhatsApp Business Account contains:
  • Your phone numbers
  • Message templates
  • Business profile
  • Messaging configuration
When onboarding with Plivo, a WABA is created with Plivo as the partner.

Business Verification

Complete Meta business verification to:
  • Improve WABA approval chances
  • Get higher messaging limits
  • Get higher phone number limits
  • Display verified business name
See Meta’s business verification guide.

Phone Number Requirements

Requirements

  • Must receive OTP via SMS or voice call
  • Will be visible to customers on WhatsApp
  • One number per WhatsApp registration

Options

OptionDescription
Rent from PlivoUse Plivo phone number (where available)
Bring your ownUse existing number
MigrateTransfer from another provider

Number Migration

If you have a number registered with another WhatsApp provider:
  1. Request migration through Plivo
  2. Follow Meta’s migration requirements
  3. Number transfers to your new WABA

Display Name

The business display name appears in:
  • Chat thread headers
  • Chat lists
  • Business profile

Requirements

  • Business must complete Meta verification
  • Display name approved by Meta
  • Set during embedded signup flow

Change Display Name

Contact Plivo support to update your display name after initial setup.

Message Types

Template Messages

Required to initiate conversations.
Template TypeUse Case
AuthenticationOTPs, verification codes
UtilityOrder updates, shipping notifications
MarketingPromotions, offers, announcements

Session Messages

After customer responds, you have a 24-hour window to send free-form messages without templates.

Supported Content

  • Text messages
  • Images
  • Documents
  • Videos
  • Audio
  • Interactive buttons
  • List messages

Message Templates

Template Approval

Templates must be approved by Meta before use. Status flow:
  1. Submitted → Pending review
  2. Approved → Active (Quality pending)
  3. Rejected → Edit and resubmit or appeal

Create Templates

Templates are created through Meta’s WhatsApp Manager:
  1. Access WhatsApp Manager
  2. Navigate to Message Templates
  3. Create template with required components
  4. Submit for approval

Template Guidelines

  • Follow Meta’s content policies
  • Use correct categorization
  • Include required variables
  • Avoid prohibited content
See Meta’s template guidelines.

View Templates

View your templates in the Plivo console: Messaging > WhatsApp > Templates

API Integration

Send Messages

Use Plivo’s existing Messaging endpoint:
curl -X POST "https://api.plivo.com/v1/Account/{auth_id}/Message/" \
  -u "{auth_id}:{auth_token}" \
  -H "Content-Type: application/json" \
  -d '{
    "src": "whatsapp:+14151234567",
    "dst": "whatsapp:+14157654321",
    "type": "whatsapp",
    "template": {
      "name": "your_template_name",
      "language": "en"
    }
  }'

Webhooks

Configure webhooks at WABA level:
  1. Navigate to WhatsApp settings
  2. Set webhook URL
  3. Select events to receive
  4. Save configuration
Webhooks apply to all numbers and templates under the WABA.

SDKs

Use Plivo’s Server SDKs for WhatsApp integration:
  • Node.js
  • Python
  • Ruby
  • PHP
  • Java
  • .NET
  • Go

Monitoring and Logs

View Messages

  1. Navigate to Messaging > Logs
  2. Filter by WhatsApp messages
  3. View delivery status, pricing, destination

Log Details

FieldDescription
Message UUIDUnique identifier
StatusDelivery status
DestinationRecipient number
PriceMessage cost
CallbacksStatus updates received

Export Logs

Download logs at:
  • Individual message level
  • Aggregate by time duration

Troubleshooting

Common Issues

IssueSolution
Template rejectedReview guidelines, edit and resubmit
Message not deliveredCheck error code, verify number
WABA not approvedComplete business verification
Number migration failedVerify requirements met

Error Codes

Review Plivo error codes for detailed descriptions and next steps.

Support

For unresolved issues:
  1. Note the message UUID
  2. Gather relevant details
  3. Contact Plivo Support