WhatsApp has become one of the most important communication channels for businesses worldwide. With Meta's WhatsApp Cloud API, developers can integrate WhatsApp messaging directly into their applications without managing their own WhatsApp infrastructure.
However, many developers find the initial setup confusing because multiple Meta components are involved:
- Facebook Account
- Facebook Page
- Meta Business Portfolio
- Meta Developer Account
- Meta App
- WhatsApp Business Account (WABA)
- System User
- Access Tokens
- Webhooks
- Message Templates
This guide walks through the complete end-to-end setup process, from creating the required Meta assets to sending production WhatsApp messages through the Cloud API.
What You Will Build
By the end of this guide, you will have:
✅ Verified Meta Business Portfolio
✅ Meta Developer Account
✅ Meta App with WhatsApp Product
✅ WhatsApp Business Account (WABA)
✅ Verified Production Phone Number
✅ Permanent Access Token
✅ Webhook Configuration
✅ Approved Message Templates
✅ Production-Ready WhatsApp Cloud API Integration
WhatsApp Cloud API Architecture
Facebook Account
│
▼
Facebook Page
│
▼
Meta Business Portfolio
│
▼
Meta App
│
▼
WhatsApp Business Account (WABA)
│
▼
Phone Number
│
▼
Cloud API
│
▼
Your Application
1: Prerequisites
Before starting, ensure the following are available:
Required
- Personal Facebook Account
- Facebook Page
- Business Name
- Business Email Address
- Business Website
- Business Verification Documents (GST Certificate, Certificate of Incorporation, Udyam/MSME Certificate, Business PAN, or other valid business proof)
- Mobile Number for WhatsApp (preferably a new number, should not be banned/restricted, and ideally not used with unofficial WhatsApp tools)
- Debit/Credit Card (for billing setup)
- Domain Name and HTTPS-enabled Public Server (for webhook configuration)
2. Facebook Account Creation and Facebook Page Linking
Before setting up a Meta Business Portfolio or WhatsApp Business Platform, you must have:
Facebook Personal Account
A Facebook Personal Account is the standard Facebook user account used to access:
- Meta Business Portfolio (Business Manager)
- Meta Business Suite
- Meta Developer Portal
- WhatsApp Business Platform
No special configuration is required. A normal Facebook account is sufficient.
Recommended
- Verify email address
- Verify mobile number
- Enable Two-Factor Authentication (2FA)
Meta may consider the trust level and history of the Facebook account during business verification and account reviews.
Facebook Page
A Facebook Page represents your business or brand on Meta platforms.
A WhatsApp Business Account (WABA) is typically linked to a Facebook Page for business identity and management purposes.
Recommended Page Information
Configure the following details on the Facebook Page:
- Page Name (Business/Brand Name)
- Profile Picture (Company Logo)
- Cover Photo
- Business Description
- Business Website
- Business Email Address
- Business Phone Number
- Business Address (Optional)
These details help establish business identity and may assist during review and verification processes.
Scenario 1: No Facebook Account and No Facebook Page Exist
Step 1: Create a Facebook Personal Account
- Go to Facebook.
- Click Create New Account.
- Enter your personal details.
- Verify your email address and mobile number.
- Complete your profile information.
- Enable Two-Factor Authentication (2FA).
Step 2: Create a Facebook Page
- Log in to your Facebook account.
- Navigate to Pages.
- Click Create New Page.
- Enter:
- Page Name
- Category
-
Description
- Add a profile picture and cover image.
- Publish the page.
- Facebook Personal Account created.
- Facebook Page created.
- The Facebook account automatically becomes the Page Admin.
Scenario 2: Facebook Account Exists, but No Facebook Page Exists
Step 1: Log in to Facebook
Use the existing Facebook account that will manage the business assets.
Step 2: Create a Facebook Page
- Navigate to Pages.
- Click Create New Page.
- Enter:
- Page Name
- Category
-
Description
- Add a profile picture and cover image.
- Publish the page.
- Existing Facebook Account is used.
- New Facebook Page is created.
- The Facebook account becomes the Page Admin.
Scenario 3: Facebook Account Exists and Facebook Page Already Exists
In this scenario, the Facebook Page is already owned or managed by another user or organization.
Step 1: Create or Use Your Facebook Account
Use the Facebook account that will be used for Meta Business Portfolio and WhatsApp Business Platform setup.
Step 2: Existing Page Admin Grants Access
The current Page Admin must:
- Open the Facebook Page.
- Navigate to:
Settings → Page Access
- Click Add New under Facebook Access.
- Search for the user's Facebook profile.
- Send the invitation.
Step 3: Accept the Invitation
The invited user must:
- Open Facebook notifications.
- Review the Page access invitation.
- Accept the invitation.
- The user's Facebook account is linked to the existing Facebook Page.
- The user can manage the Page according to the permissions granted by the Page Admin.
3. Create Meta Business Portfolio and Complete Business Verification
Create Business Portfolio
- Go to:
https://business.facebook.com
- Log in using your Facebook account.
- Click Create Account.
- Enter:
- Business Name
- Business Email
- Your Name
- Click Submit.
This creates your Meta Business Portfolio (formerly Business Manager).
Link Business Assets
Link Facebook Page
Navigate to:
Business Settings → Accounts → Pages
Add:
- Existing Facebook Page
or
- Create a New Facebook Page
Optional assets:
- Instagram Account
- Ad Account
Confirm Business Email
Meta sends a verification email to the business email address.
Open the email and confirm ownership.
Complete Business Verification
Navigate to:
Business Settings → Security Center
Click Start Verification.
Provide:
- Legal Business Name
- Business Address
- Business Phone Number
- Business Website (recommended)
Upload supporting documents such as:
- Certificate of Incorporation
- GST Registration Certificate
- Udyam (MSME) Registration
- Business License
- Utility Bill or Bank Statement (if requested)
Verify Contact Information
Meta may ask to verify:
- Business Email
- Business Phone Number
- Domain Ownership (if website is provided)
Verification Status
Track verification from:
Business Settings → Security Center
Business verification typically takes between 1 and 7 days.
4. Create Meta Developer Account and Meta App
- Go to:
https://developers.facebook.com
- Log in using your Facebook account.
- Accept the Meta Developer Terms.
- Complete email verification if prompted.
- Navigate to:
My Apps → Create App
- Select Business as the app type.
- Enter:
- App Name
- Contact Email
- Business Portfolio
- Click Create App.
Add WhatsApp Product
- Open the newly created app.
- Click:
Add Product → WhatsApp → Set Up
Meta provides:
- Test WhatsApp Business Account (WABA)
- Test Phone Number
- Temporary Access Token
These resources are intended for development and testing purposes. You can immediately test WhatsApp Cloud API requests before configuring production assets.
5. Add Production Phone Number
Navigate to:
https://developers.facebook.com
Developer Console → Select App → WhatsApp → API Setup
Click Add Phone Number.
Provide:
- Business Name
- Display Name
- Business Category
- Phone Number
Complete verification using:
- SMS OTP
- Voice Call OTP
Important Notes
The phone number:
- Must not already be registered with a personal WhatsApp account
- Must not already be registered with WhatsApp Business App
If the number is already registered with WhatsApp, it must be migrated before it can be used with WhatsApp Cloud API.
After successful verification:
- Phone number is associated with the WABA
- Meta reviews the display name
- Application can use the number through Cloud API
6. Check Display Name Status
Navigate to:
Business Settings → Accounts → WhatsApp Accounts → Phone Numbers
or
WhatsApp Manager → Phone Numbers
Display Name Status:
- Approved
- Pending Review
- Rejected
Only approved display names can be used for production messaging.
If rejected, update and resubmit the display name.
7. WhatsApp Business Account (WABA)
A WhatsApp Business Account (WABA) is the container that manages all WhatsApp Business Platform assets.
Meta typically creates or associates a WABA during the onboarding process when a production phone number is added.
Manage WABA from:
- Business Settings → Accounts → WhatsApp Accounts
- WhatsApp Manager
WABA Management Features
Business Information
- WABA Name
- Business Portfolio
- Business Details
Phone Numbers
- Add or Remove Phone Numbers
- Display Name Status
- Quality Rating
Message Templates
- Create Templates
- Submit Templates for Approval
- View Template Status
Users & Permissions
- Add Admins
- Assign Access
Messaging Limits
- View Messaging Limits
- Monitor Quality Rating
Billing
- Payment Method
- Billing Information
- Usage and Charges
8. Create a System User
Navigate to:
https://business.facebook.com
Business Settings → Users → System Users
- Click Add
- Enter a name
- Select Admin System User
- Click Create
System Users are used for server-to-server authentication and generating permanent access tokens for API Integratios.
9. Assign Assets to the System User
Select the System User.
Click:
Assign Assets
Assign:
WhatsApp Business Account (WABA)
Permissions:
- whatsapp_business_management
- whatsapp_business_messaging
Meta App
Permissions:
- Full Control (Recommended)
Save changes.
10. Generate a Permanent Access Token
- Open the System User.
- Click Generate New Token.
- Select the Meta App.
- Select permissions:
- whatsapp_business_management
- whatsapp_business_messaging
- Generate the token.
- Securely store it.
This permanent access token is used by your application to access the WhatsApp Cloud API in production.
11. Configure Billing
Navigate to:
WhatsApp Manager → Billing
Configure:
- Payment Method
- Billing Information
Billing allows you to:
- Add payment methods
- View conversation charges
- Monitor usage and costs
- Manage billing information
12. Configure Webhooks
Navigate to:
https://developers.facebook.com
Developer Console → Your App → WhatsApp → Configuration
Configure:
Callback URL
The endpoint that receives webhook events from Meta.
Example:
https://yourdomain.com/api/method/whatsapp.webhook
Verify Token
Custom secret token used during webhook verification.
Subscribe to Webhook Fields
Recommended:
- messages
- message_status
- message_template_status_update
Webhook Use Cases
Receive:
- Incoming Messages
- Delivery Reports
- Read Receipts
- Message Status Updates
- Template Status Updates
Webhook configuration is required for two-way messaging and real-time event processing.
13. Create Message Templates
Navigate to:
WhatsApp Manager → Message Templates
Create templates for:
- OTP Messages
- Welcome Messages
- Notifications
- Payment Reminders
- Appointment Reminders
- Marketing Campaigns
After creating a template:
- Select the template category (Marketing, Utility, Authentication).
- Configure the message content and variables.
- Submit the template for Meta review.
Template Status
- Pending
- Approved
- Rejected
Template approval typically takes from a few minutes to several hours, although it may take longer in some cases.
Only approved templates can be used to initiate conversations.
14. Test WhatsApp API Integration
Use:
- Phone Number ID
- Permanent Access Token
Testing Methods
Postman Testing
Postman Collection:
https://www.postman.com/meta/whatsapp-business-platform/collection
Provide:
- Phone Number ID
- Permanent Access Token
This is the most common method used for API testing and troubleshooting.
Application/API Integration Testing
Integrate the WhatsApp Cloud API into your application and test using your application code.
Examples: Python, Node.js,Java
Validate complete end-to-end integration.
Test the Following APIs
Send Message API
Send a basic text message.
Template Message API
Send an approved template.
Media Message API
Send:
- Images
- Documents
- Audio
- Video
Verify Integration
Confirm:
- Messages are delivered successfully.
- Incoming messages are received.
- Webhooks are triggered correctly.
- Delivery status updates are received.
- Read receipts are received.
- Template messages are delivered successfully.
- Media messages are delivered successfully.
Resolve any API, webhook, permission, or configuration issues before moving to production.
15. Go Live
After all configurations are complete and verified, your WhatsApp Cloud API integration is ready for production use.
Go-Live Checklist
- ✓ Business Verification Completed
- ✓ Approved Display Name
- ✓ Verified Production Phone Number
- ✓ Approved Message Templates
- ✓ Permanent Access Token Generated
- ✓ Webhooks Configured and Working
- ✓ Billing Configured
- ✓ API Integration Tested Successfully
- ✓ Required Users and Permissions Configured
Once the checklist is complete, the WhatsApp Business Platform can be used for production messaging.
16. Production Integration Credentials Reference
After completing the WhatsApp Cloud API setup, collect and securely store the following credentials.
| Credential | Purpose | Required For |
|---|---|---|
| App ID | Unique identifier of the Meta App | API management and token generation |
| App Secret | Secret key associated with the Meta App | Server-to-server authentication and security operations |
| Business Portfolio ID (Business Manager ID) | Identifier of the Meta Business Portfolio | Business asset management |
| WhatsApp Business Account ID (WABA ID) | Identifier of the WhatsApp Business Account | Template management and account management APIs |
| Phone Number ID | Identifier of the WhatsApp-enabled phone number | Sending messages through Cloud API |
| Permanent Access Token | Authentication token generated for the System User | All production API requests |
| Verify Token | Custom token configured during webhook setup | Webhook verification |
| Webhook Callback URL | Public HTTPS endpoint that receives Meta events | Incoming messages and status updates |
Resources 👍
Meta WhatsApp Business Platform Documentation
https://developers.facebook.com/documentation/business-messaging/whatsapp/overview
Postman Collection
https://www.postman.com/meta/whatsapp-business-platform/collection
Conclusion
Setting up WhatsApp Cloud API involves several Meta services, including Business Portfolio, WABA, Developer Apps, System Users, Access Tokens, and Webhooks. While the onboarding process may initially seem complex, once configured correctly, it provides a scalable and reliable platform for integrating WhatsApp messaging into business applications.
Following this guide will help you move from a simple Facebook account to a fully production-ready WhatsApp Cloud API integration.

