Overview
As a Tech Provider, you build the onboarding experience into your own product. The end-customer clicks a button in your portal, completes Meta’s embedded signup flow, and your backend receives the resulting WABA ID and phone number ID. You then register the WABA with Telnyx so that it can use Telnyx’s messaging infrastructure. Telnyx offers two integration paths: a hosted signup option where Telnyx manages the signup UI and backend processing, and a custom integration option where you embed Meta’s Facebook SDK directly into your own portal. WhatsApp Business App coexistence is currently supported only through the custom integration path. See Step 3 for a comparison.Tech Provider vs. Direct Customer
Prerequisites
Before you begin, make sure you have:- A Meta Business Account with admin access
- A Meta Tech Provider App that has been approved by Meta with the following permissions:
whatsapp_business_messagingwhatsapp_business_management
- The Tech Provider onboarding process completed in Meta App Dashboard
- A Telnyx account with an API key
Step 1: Create and configure your Meta Tech Provider App
Create a Meta App
Add WhatsApp product
Request required permissions
Complete Tech Provider onboarding
Submit for App Review
Step 2: Link your Meta App to Telnyx
Once your Meta App is configured, you need to link it to Telnyx so that WABAs created through your embedded signup flow are registered on Telnyx’s infrastructure.Switch your app to Live mode
Contact Telnyx
- Your Meta App ID (found in your app’s dashboard)
- Your business name as registered with Meta
Accept the partner invitation
Verify the app link and record your solution ID
app_id matches your Meta app, solution_id is populated, and enabled is true. Pass the returned solution_id in extras.setup.solutionID on every custom signup. Solutions are also listed under Partner solutions in the Meta App Dashboard.If the request returns 404 or enabled is false, contact Telnyx support with your Telnyx account UUID and Meta App ID. A 404 can mean that the app link is missing or that the App ID is linked to a different Telnyx account.Switch back to Development mode
Step 3: Choose your integration path
After your Meta App is linked to Telnyx, you have two ways to onboard your end-customers’ WABAs. Choose the path based on whether the number must remain active in the WhatsApp Business app.- Option A: Hosted signup (recommended)
- Option B: Custom integration
Step 3A.1: Generate an onboarding URL
Call the Telnyx API to create a JWT-authenticated onboarding URL for your end-customer. The URL is valid for up to 3 days.Request body parameters
Response
Step 3A.2: Share the URL with your end-customer
Send theurl to your end-customer via email, SMS, or embed it as a link in your own portal. When the customer visits the URL:- Telnyx validates the JWT and renders a signup page branded with your app’s Meta configuration
- The customer clicks Get Started to launch Meta’s embedded signup popup
- The customer signs in to Facebook, creates or selects a WABA, and verifies their phone number
- On completion, Telnyx automatically handles the backend: code exchange, webhook subscription, credit line sharing, and phone number registration
GET /v2/whatsapp/signup/{session_id}/status to track progress and surface it in your own dashboard.Step 3A.3: Check signup status (optional)
status, state, waba_id, and any errors. Use this to build a progress indicator in your portal or trigger downstream workflows when onboarding completes.What happens after signup
When the end-customer completes the hosted signup:- Credit line is applied: The WABA is associated with your Telnyx billing account
- WABA is registered: The WhatsApp Business Account is linked to Telnyx’s messaging infrastructure
- Webhooks are subscribed: Telnyx subscribes to Meta webhook events on the WABA’s behalf
- Number is ready for messaging: The phone number can send and receive WhatsApp messages through Telnyx
Granting Telnyx access to an existing WABA
If a WABA was created before you started passingsolutionID, Telnyx has no access to it
and registration fails. Passing the solution ID fixes every subsequent signup, but it does
not apply retroactively, so an affected WABA has to be shared with Telnyx once by hand.
This is done in Meta Business settings by the business portfolio that owns the WABA.
For a WABA created through your embedded signup, that is usually your end-customer, not you.
Open Business settings
Go to Partners
Select or add Telnyx
1770378036525495.Assign the WABA
Grant full control
Confirm before retrying
Coexistence behavior and limitations
Troubleshooting
I didn't receive the Meta partner invitation email
I didn't receive the Meta partner invitation email
- Verify that your app was in Live mode when you contacted Telnyx
- Check your spam and junk folders
- Ensure the email associated with your Meta Business account is correct
- Confirm with your Telnyx representative that they initiated the invitation
- The invitation typically arrives within 1–2 business days
Meta App Review was denied
Meta App Review was denied
- Review Meta’s rejection reasons carefully in the App Review section of your dashboard
- Common reasons include: insufficient permissions justification, unclear use case description, or missing screencast
- Update your submission with clearer documentation and resubmit
- Ensure your app is functional and testable during the review period
FB.login() doesn't open the embedded signup dialog
FB.login() doesn't open the embedded signup dialog
- Confirm the Facebook SDK is loaded before calling
FB.login() - Check that your
config_idis correct and matches a WhatsApp Business Configuration in your app - Ensure your app has the
whatsapp_business_messagingandwhatsapp_business_managementpermissions - Open your browser’s developer console for error messages from the SDK
The hosted signup request fails before Meta opens
The hosted signup request fails before Meta opens
- Call
GET /v2/whatsapp/foreign_appswith the same Telnyx API key used to create the signup - Confirm that the response contains your Meta App ID, a
solution_id, andenabled: true - If the request returns
404, contact Telnyx support with your Telnyx account UUID and Meta App ID - If the returned App ID belongs to a different Telnyx account or the link is disabled, ask support to correct or enable the link
The coexistence option is missing or Meta says the number is already in use
The coexistence option is missing or Meta says the number is already in use
- Switch to the custom integration path in Option B
- Pass
featureType: 'whatsapp_business_app_onboarding' - Pass
sessionInfoVersion: '3' - Handle the
FINISH_WHATSAPP_BUSINESS_APP_ONBOARDINGsession event - Send that event name,
waba_id,phone_number_id, and yourapp_idto the Tech Provider registration endpoint
The embedded signup completes but no WABA ID is returned
The embedded signup completes but no WABA ID is returned
- Read the WABA ID and phone number ID from Meta’s
WA_EMBEDDED_SIGNUPbrowser message, not theFB.login()authorization callback - Confirm that your listener accepts Meta’s documented origins and safely parses string and object event data
- For coexistence, handle only
FINISH_WHATSAPP_BUSINESS_APP_ONBOARDING - Verify that the user completed all steps in the Meta signup flow
Registration fails because Telnyx cannot access the WABA
Registration fails because Telnyx cannot access the WABA
- If you integrate with the Facebook SDK directly, confirm you passed
solutionIDinsideextras.setupwhen callingFB.login() - Ask your Telnyx representative to confirm your solution is active and that your Meta app is linked
- For a WABA that was already created without the solution ID, follow Granting Telnyx access to an existing WABA. Passing the solution ID prevents this for subsequent signups but does not apply retroactively
The hosted signup URL shows 'Missing Signup Token'
The hosted signup URL shows 'Missing Signup Token'
- Ensure you’re using the full URL returned by
POST /v2/whatsapp/hosted_signups, including the?token=query parameter - Check that the JWT has not expired. Tokens are valid for a maximum of 3 days from creation
- If the token has expired, generate a new one via the API
The phone number verification code never arrives
The phone number verification code never arrives
- Verify the phone number entered by the end-customer is correct and can receive SMS
- Check that the phone number is not already registered with another WhatsApp account
- Try requesting the verification code via phone call instead of SMS
- Ensure the end-customer’s phone carrier is not blocking Meta’s verification messages