WhatsApp Admin Automation 🟑 BETA

Automated WhatsApp Business Account provisioning and management

Automation Ceiling

WhatsApp Business API provisioning has one unavoidable human step β€” the initial OTP SMS/voice verification. Everything else is fully automatable.

StepAutomatableMethod
Meta Business Manager creation❌ NoRequires human identity verification
Initial Meta account❌ NoToS requires a human actor
OTP (SMS/voice) verification⚠️ OnceCan be internalized with SIM infrastructure
WABA creation (BSP path)βœ… YesPartner-initiated endpoint
Phone number additionβœ… Yesadd_phone_numbers endpoint
2SV PIN setupβœ… YesTwo-Step Verification API
Final registrationβœ… YesRegister API
Webhook configurationβœ… YesGraph API subscription endpoints
Message template creationβœ… YesTemplate Management API
System user tokenβœ… Yes (one-time)Long-lived, non-expiring tokens
Credit line assignmentβœ… YesCredit Line API (BSPs)

Implementation Strategy

BSP Path (maximum automation)

  1. Obtain BSP approval from Meta
  2. Build a pre-verified number pool
  3. Use Partner-Initiated WABA Creation API
  4. Automate: WABA β†’ number β†’ register β†’ webhook β†’ template

Standard Business Path

  1. Integrate Embedded Signup flow into onboarding UI
  2. Build server-side token exchange endpoint
  3. Wire post-signup automation hooks (webhooks, templates)

API Endpoints

EndpointMethodPurpose
/{api-version}/{waba-id}/phone_numbersPOSTAdd phone number
/{api-version}/{phone-number-id}/registerPOSTRegister number
/{api-version}/{phone-number-id}/two_step_verificationPOSTSet 2SV PIN
/{api-version}/{app-id}/subscriptionsPOSTConfigure webhooks
/{api-version}/{waba-id}/message_templatesPOSTCreate templates
/{api-version}/{waba-id}/credit_linesPOSTAssign credit

Key Concepts

System Users

System Users generate permanent, non-expiring access tokens essential for production automation. Standard user tokens expire and require refresh.

BSP (Business Solution Provider)

BSPs can achieve near-zero human interaction by combining Partner-Initiated WABA Creation with a pre-verified number pool. The OTP is the only truly unavoidable step.

Webhooks

Webhooks replace polling and enable reactive, event-driven architecture for message status updates, incoming messages, and template quality reviews.

Configuration

In config.csv:

whatsapp-bsp-mode,true
whatsapp-system-user-id,<id>
whatsapp-system-user-token,<permanent-token>
whatsapp-preverified-pool,./pools/numbers.json

References