Back to Blog Index WABA API & Setup

Step 2: How to Get Meta WABA API Keys, System User Tokens & WABA IDs

By Patify Engineering • • • 4 min read
TL;DR Executive Summary

To connect Patify under Bring Your Own Key (BYOK) architecture, you need three core credentials: a permanent System User Access Token with whatsapp_business_messaging permissions, a WhatsApp Business Account ID (WABA ID), and a Phone Number ID.

Step 2: How to Get Meta WABA API Keys, System User Tokens & WABA IDs

Before proceeding, ensure you have completed Meta Developer Account registration and created your Business App — these are prerequisites for generating System User tokens.

Introduction: The 3 Core Credentials Required for WABA Integration

Under Patify's BYOK (Bring Your Own Key) architecture, your business connects directly to Meta's Cloud API without relying on third-party middleware or paying vendor markups. To establish this direct connection, you require three specific credentials from Meta Business Manager. Here is exactly what they look like so you don't confuse them:

  1. Permanent System User Access Token: A very long alphanumeric string that always starts with EAAG...
  2. WhatsApp Business Account ID (WABA ID): A 15-digit number (e.g. 102345678901234).
  3. Phone Number ID: A different 15-digit number specifically assigned to your phone number (e.g. 109876543210987).
⚠️ Common Mistake: Do NOT use the temporary 24-hour user token shown in the Meta Developer Console (which starts with EAAL... or similar). You MUST generate a System User token from the Business Settings dashboard that starts with EAAG....
Figure 2.1: Meta System User Token Configuration with Permanent Scope Checks
Figure 2.1: Meta System User Token Configuration with Permanent Scope Checks

Step 1: Create a Permanent System User in Meta Business Manager

Standard developer user tokens generated in Graph API Explorer expire after 24 hours. For automated production servers, you must create a dedicated System User whose token never expires:

  1. Navigate to business.facebook.com/settings.
  2. In the left sidebar, expand Users > System Users.
  3. Click Add, enter a descriptive system name (e.g., Patify-Production-Bot), and assign the Admin role.

Step 2: Assign Meta Business App Assets to System User

After creating the System User account, you must explicitly delegate full control of your WhatsApp Business App:

  • Click Add Assets under the System User details panel.
  • Select Apps > choose your Meta App created in Step 1.
  • Toggle Full Control (Manage App) to ON and click Save Changes.

Step 3: Generate the Permanent Access Token with Mandatory Scopes

Click Generate New Token under your System User panel:

  1. Select your Meta Business App from the app dropdown.
  2. Set Token Expiration to Never (so your automated campaigns run 24/7 without token renewal errors).
  3. Check the following two mandatory permission scopes:
    • whatsapp_business_messaging (Required for dispatching templates & live chat)
    • whatsapp_business_management (Required for syncing templates & webhooks)
  4. Click Generate Token and copy the resulting string. Store this token securely!

Step 4: Locate Your WABA ID & Phone Number ID

In Meta Developer Console, navigate to WhatsApp > API Setup in the left sidebar menu:

  • Locate the WhatsApp Business Account ID field (a 15-digit number).
  • Locate the Phone Number ID field directly below the phone selector dropdown.

Step 5: Add Your Live Phone Number & Complete Verification

By default, Meta provides a temporary sandbox number with strict limits. To use WABA in production, you must link your own phone number:

  1. In the Developer Console under WhatsApp > API Setup, scroll down and click Add Phone Number.
  2. Enter your company's display name, category, and business description.
  3. Enter the phone number you want to use (it must be capable of receiving an SMS or Voice call for OTP verification).
  4. Complete the OTP verification. Your new Phone Number ID will now appear in the dropdown menu.
💡 Tip on Business Verification: To send more than 250 messages per day and unlock the "Official Business Account" green checkmark, you will eventually need to complete Business Verification in your Meta Business Settings (Security Center).

Step 6: Configure Webhooks for Inbound Messages & Status Updates

To receive inbound customer replies and track "Delivered/Read" statuses, you must tell Meta where to send event data:

  1. In the Developer Console, go to WhatsApp > Configuration.
  2. Under Webhooks, click Edit.
  3. Enter the Callback URL and Verify Token provided by Patify (found in your Patify Settings > WhatsApp).
  4. Click Verify and Save.
  5. Click Manage under Webhook Fields and subscribe to messages and message_template_status_update.

Step 7: Connect Credentials into Patify (Zero-#133010 Onboarding)

Log in to your Patify Tenant Dashboard, navigate to Settings > WhatsApp, and paste your 3 keys (Token, WABA ID, Phone Number ID). Patify's Zero-#133010 Onboarding Engine automatically performs two-step phone activation (POST /{phone_number_id}/register) with dynamic 6-digit random PIN generation, eliminating Meta Error #133010: Account not registered on new numbers. Your platform is now connected and ready to run high-volume broadcast campaigns with 0% Meta markup.

We value your privacy

We use cookies to analyze site traffic and optimize your platform experience.