Steps to Migrate Your Verified WABA From a BSP to Your Own Meta App
Confirm Ownership & Admin Access
Log into Business Manager with an admin role for the business that owns the WABA.
Go to Business Settings → Accounts → WhatsApp Accounts
Make sure the verified WABA is visible and shows your business as the Owner.
If it shows the old BSP as the owner, you’ll need them to release it first. Without that, Meta won’t let you migrate.
Request BSP Release (If Needed)
If GoHighLevel is still linked:
Contact their support and request WABA migration to self-hosted Cloud API.
They’ll “unlink” your number from their BSP in Meta’s backend.
Migration can usually be done without losing the verified status, but the BSP must initiate it.
If they refuse or are unresponsive, you’ll need to open a Meta Business Support ticket and provide proof you own the number and the business.
Set Up Your Own Meta App
Go to Meta for Developers
Create a new app → Choose Business App.
In App Dashboard, go to Add Product → WhatsApp.
Follow the setup steps until it prompts you to connect a WhatsApp Business Account.
Link Your Existing Verified WABA
When prompted, choose “Select an existing WhatsApp Business Account” — you should see your verified one in the dropdown.
If you don’t see it, it’s still tied to the BSP and needs to be migrated first (Step 2).
Generate a Permanent Access Token
In App Dashboard → WhatsApp → API Setup, click “Generate Token” and choose your verified phone number.
Make sure to grant required permissions (whatsapp_business_messaging, whatsapp_business_management).
Store this token securely — this will be your auth in n8n.
Connect to n8n
In n8n, use the WhatsApp Cloud API node.
Paste in your permanent token, your phone number ID, and WABA ID (both visible in App Dashboard).
For incoming messages: set up a Webhook node and configure the Webhook URL in your Meta App’s Webhook settings to subscribe to messages.
Test & Deploy
Send a test message from your personal WhatsApp to the business number.
Check if n8n receives the incoming webhook event.
Send a reply using the Send Message action in n8n to confirm outbound is working.
Key Warnings
If the BSP is still active, Meta will block Cloud API connections for that number until it’s released.
During migration, inbound messages may pause for a few hours — plan it outside of peak hours.
Keep your old verified number — you don’t need to reverify if you migrate correctly.