# WhatsApp Business setup for PopMCP

You paste one value into PopMCP: a System User access token from Meta Business Settings that never expires and has the WhatsApp permissions. Add your app's App secret only if the app requires it. PopMCP finds your WhatsApp accounts and numbers, and you pick the number to connect.

- Auth: API credentials
- Setup time: 6 min
- API base URL: https://graph.facebook.com/v26.0
- Credentials screen: https://business.facebook.com/latest/settings/system_users
- Provider docs: https://developers.facebook.com/documentation/business-messaging/whatsapp/access-tokens

## Approval required before this works

Meta reviews what your business sends, not your app: every message template has to be approved before it can start a conversation, and a new business portfolio reaches at most 250 people a day outside customer service windows until Meta verifies the business. Your own number needs no App Review.

- Typical wait: Template review usually takes minutes, and Meta says it can take up to 24 hours. Meta publishes no time for Business Verification; it commonly takes a few business days. Once verified the limit rises to 2,000, then grows automatically, within 6 hours of qualifying.
- Cost: Free to apply. Meta bills the WhatsApp account per delivered template message by category and country, and since October 1, 2026 per service reply after the first 1,000 each month per number, so a payment method has to be on the account.
- Blocked until approved: Business-initiated messages. Until a template is approved nothing can reach a customer who has not messaged you in the last 24 hours, and until the business is verified templates reach at most 250 unique people per rolling 24 hours across every number in the portfolio.
- Works meanwhile: Connecting, reading the account, numbers, templates and analytics, replying inside the 24-hour customer service window, uploading media and submitting templates for review. Meta's test number in the App Dashboard sends to the recipient numbers you add there, with no review.

## Before you begin

- A Meta business portfolio where you are an admin. Only admins can create system users and generate their tokens
- A Meta app at developers.facebook.com/apps with the Connect with customers through WhatsApp use case, linked to that portfolio. Creating one also gives you a free test number
- A business phone number on the WhatsApp Business Platform (Cloud API), shown in WhatsApp Manager under Phone numbers. A number still in use on WhatsApp has to be deleted from the app before it can be registered
- A payment method on the WhatsApp account before you send templates or more than 1,000 service replies a month from a number. Meta bills the account, not PopMCP

## Get your credentials

### 1. Check that your number is on the platform

Open WhatsApp Manager, then Account tools, Phone numbers. The number you want the AI to use should be listed with status Connected. No app or number yet? Create an app at `developers.facebook.com/apps` with the Connect with customers through WhatsApp use case and add a number under WhatsApp, API Setup. The free test number there works too, for up to 5 recipients you add.

Screen: https://business.facebook.com/latest/whatsapp_manager/phone_numbers

### 2. Create a system user

In Meta Business Settings open Users, System users and click Add. Name it `PopMCP`, choose the Admin role and click Create system user. An admin system user can reach every WhatsApp account in the portfolio; an employee one needs each WhatsApp account and Messaging account assigned to it by hand.

Screen: https://business.facebook.com/latest/settings/system_users

### 3. Give the system user your app

Select the new system user and click Assign assets. Choose Apps, tick the app that has WhatsApp, turn on Manage app (full control) and click Assign assets. Reload the page until the app shows under the system user's assets; it can take a few minutes.

Screen: https://business.facebook.com/latest/settings/system_users

### 4. Generate a token that never expires

On the system user, click Generate token. Select your app, set Token expiration to Never, and tick `whatsapp_business_messaging`, `whatsapp_business_management` and `business_management` (search for business to find them). Click Generate token.

Screen: https://business.facebook.com/latest/settings/system_users

### 5. Copy the token now

Meta shows the full token once. Click the copy icon and keep it somewhere safe until you paste it into PopMCP. Tokens start with `EAA`.

### 6. Paste the token into PopMCP and pick the number

In PopMCP, paste the token into System user access token. Only if your app has Require app secret turned on (App Dashboard, App settings, Advanced), also paste the App secret from App settings, Basic. PopMCP lists every number the token reaches; pick the one this connection should use and the workspace it belongs in.

## Fields PopMCP asks for

- System user access token (accessToken) [required]: In Meta Business Settings open System users, create a system user (Admin) or pick one, Assign assets: your app (full control) and your WhatsApp account (full control). Then Generate token: choose the app, expiry Never, and tick whatsapp_business_messaging and whatsapp_business_management (add business_management for business-level tools). Copy the token: Meta shows it once.
- App secret (only if your app requires it) (appSecret): Only when your Meta app has Require app secret switched on (App Dashboard, App settings, Advanced). Copy it from App settings, Basic. Stored encrypted.

## Verify

PopMCP marks the WhatsApp Business connection Verified, labelled with the number's display name and number, such as Lucky Shrub (+1 555-010-0100). Notes under it flag what would fail: a token that expires, a missing permission, a test number, a number that is not connected yet, a declined display name or an account with no payment method. Asking the AI for your approved templates lists them by name and language.

## Troubleshooting

### "Meta did not accept this access token: it is wrong, expired or was revoked."

Cause: The token was copied incompletely, was revoked, or was a temporary token from the App Dashboard's API Setup page, which expires within a day.

Fix: Generate a new token on the system user with expiry **Never** and paste it in one piece.

### "This token lacks whatsapp_business_management, which is needed to find your phone numbers and templates."

Cause: The token was generated without that permission ticked.

Fix: Generate the token again with `whatsapp_business_messaging` and `whatsapp_business_management` ticked. If they are not in the list, add the WhatsApp use case to the app first.

### "This token cannot see any WhatsApp Business account."

Cause: The system user is an employee and has no WhatsApp account assigned, or the app does not belong to the portfolio that owns the account.

Fix: In **System users**, choose the system user, click **Assign assets** and give it your WhatsApp account and Messaging account with full control, or use an admin system user. Then connect again with the same token.

### "Your WhatsApp Business account has no phone number yet."

Cause: The account exists but no number has been added and verified on it.

Fix: Add a number in WhatsApp Manager under **Phone numbers**, or on the app's **WhatsApp**, **API Setup** page, verify it with the code Meta sends, then connect again.

### Sending free-form text fails with error 131047

Cause: More than 24 hours have passed since the customer last messaged the number, so only a template can reach them.

Fix: Send an approved template with whatsapp_send_template_message. whatsapp_list_templates shows which templates are approved.

### Calls fail with error 200 or "does not have permission"

Cause: The token works but the system user has no access to this WhatsApp account, or the token is missing a permission.

Fix: Run whatsapp_check_token, which names the missing permission or access, then fix it in **System users** and generate the token again if permissions changed.

### Templates reach only some customers, or error 131049

Cause: Meta limits marketing messages per user, does not deliver marketing templates to WhatsApp users in the United States, and caps a new portfolio at 250 unique people a day outside customer service windows.

Fix: Wait at least a day before resending to the same person, use a utility template where the message is transactional, and verify the business in **Security Center** to raise the daily limit.

---

Source: https://www.docs.popmcp.com/docs/integrations/whatsapp-business/