Skip to main content
profClaw integrates with WhatsApp through the official Meta WhatsApp Business Cloud API. This is the production-grade approach using a dedicated business phone number.

Capabilities

FeatureSupported
1:1 messagingYes
Group messagingNo (API limitation)
Media messagesYes
Interactive buttonsYes (limited)
TemplatesYes
WebhooksYes
Read receiptsYes

Requirements

  • Meta Business account
  • WhatsApp Business app verified
  • A phone number (not already on WhatsApp personal)
  • Business verification for scaling

Setup

1

Create a Meta App

Go to developers.facebook.com and create a new app. Select Business type.
2

Add WhatsApp Product

Under your app, add the WhatsApp product. Go to WhatsApp > Getting Started.
3

Get your credentials

Copy:
  • Phone Number ID (not the phone number itself)
  • WhatsApp Business Account ID
  • Access Token (temporary or permanent)
4

Configure webhook

Under WhatsApp > Configuration, set:
  • Webhook URL: https://your-domain.com/webhooks/whatsapp
  • Verify token: your custom string
Subscribe to messages and messaging_handoffs events.
5

Configure profClaw

WHATSAPP_PHONE_NUMBER_ID=1234567890
WHATSAPP_BUSINESS_ACCOUNT_ID=0987654321
WHATSAPP_ACCESS_TOKEN=EAABwzLixnjYBO...
WHATSAPP_WEBHOOK_VERIFY_TOKEN=my-verify-token

Environment Variables

WHATSAPP_PHONE_NUMBER_ID
string
required
Phone Number ID from Meta Developer portal (not the phone number itself).
WHATSAPP_BUSINESS_ACCOUNT_ID
string
required
WhatsApp Business Account ID.
WHATSAPP_ACCESS_TOKEN
string
required
Meta access token (system user or user token).
WHATSAPP_WEBHOOK_VERIFY_TOKEN
string
required
Your custom verify token for webhook setup.

Configuration Example

WHATSAPP_PHONE_NUMBER_ID=1234567890
WHATSAPP_BUSINESS_ACCOUNT_ID=0987654321
WHATSAPP_ACCESS_TOKEN=EAABwzLixnjYBO...
WHATSAPP_WEBHOOK_VERIFY_TOKEN=my-custom-verify-token

Message Format

profClaw sends responses as plain text messages. For interactive messages:
{
  "messaging_product": "whatsapp",
  "to": "+1234567890",
  "type": "interactive",
  "interactive": {
    "type": "button",
    "body": { "text": "Please confirm:" },
    "action": {
      "buttons": [
        { "type": "reply", "reply": { "id": "yes", "title": "Confirm" } }
      ]
    }
  }
}

Notes

  • WhatsApp API requires a public webhook URL with HTTPS.
  • Messages to users require them to initiate contact first (24-hour messaging window).
  • Outside the 24-hour window, you must use pre-approved message templates.
  • Business verification required to message more than 250 unique users per day.
  • A permanent access token from a system user is recommended for production.