This topic describes how to register a WhatsApp Business Account (WABA) using Meta's official registration tool. Embedded Signup consolidates all steps into a single, integrated flow, reducing the registration process from days to minutes.
Before you begin
Before you use Embedded Signup, complete the following:
Register an Alibaba Cloud account and complete enterprise identity verification.
Register as a Tech Provider with WhatsApp. See the official WhatsApp documentation for instructions: Become a Tech Provider.
Procedure
Meta is rolling out a new version (Version 2) of the Embedded Signup flow. You can use the optional version parameter in the extras object to control which version of the embedded interface the user sees.
Version 1 is the initial Embedded Signup flow, and Version 2 is the new flow. If you do not specify a version, users see the new flow.
If you do not specify a version or if you specify Version 2, you can proceed directly to Bind the WABA.
Meta will deprecate Version 1. For more information, see the official Meta documentation.
Call the Embedded Signup flow
After you register as a Tech Provider, use the Facebook SDK for JavaScript to implement the embedded flow.
Code sample
const onRegisterButtonClick = ()=>{
// const { appId , configId } = this.state;
// Initialize the SDK
window.fbq &&
window.fbq("trackCustom", "WhatsAppOnboardingStart", {
appId: <APP_ID>,
feature: "whatsapp_embedded_signup"
});
// SDK callback function
const sessionInfoListener = event => {
if (event.origin !== "https://www.facebook.com") return;
try {
const eventData = JSON.parse(event.data);
console.log("[sessionInfoListener] Event Data", eventData, event.data);
if (eventData.type === "WA_EMBEDDED_SIGNUP") {
if (
eventData.event === "FINISH" ||
eventData.event === "FINISH_ONLY_WABA"
) {
const { waba_id } = eventData.data;
console.log(
"[sessionInfoListener] waba_id",
waba_id
);
}
}
} catch {
console.log("Non JSON Response", event.data);
}
};
// Listen for the message event
window.addEventListener("message", sessionInfoListener);
// Trigger the SDK
window.FB.login(
response => {
if (response.authResponse) {
const accessToken = response?.authResponse?.accessToken;
} else {
console.log("User cancelled login or did not fully authorize.");
}
},
{
config_id: '<CONFIG_ID>',
// The config_id obtained from Meta
response_type: "code",
// response_type must be set to code
override_default_response_type: true,
// This parameter must be set to true
extras: {
feature: "app_only_install",
version: 4,
sessionInfoVersion: 4,
// The version of the signup flow
setup: {
solutionID: '<SOLUTION_ID>' // Add solution ID here
},
}
}
);
}
// Example button
<button onclick="launchWhatsAppSignup()">Login with Facebook</button>;For detailed instructions, see the Embedded Signup implementation guide in the Meta documentation.
Complete Meta app management authorization
As a Tech Provider, you must add the ads_read permission on App Dashboard.
Click Request advanced access (Step 4) and follow the on-screen instructions to complete the process. If it is successful, the access level displays Advanced access (Step 5).

Enable authorization for end users
The following example shows how to trigger Embedded Signup from a Chat App page:
Authorize the required WABA channel.

Bind the WABA
After you complete the Embedded Signup flow using the Facebook JavaScript SDK, you receive a wabaId in the message event. Pass this wabaId to the ChatappBindWaba API. The platform then associates the wabaId with your Alibaba Cloud account PID and returns a unique identifier: custSpaceId. This parameter is required for subsequent API calls.
API reference
Example
Sample success response (JSON format):
{
"RequestId": "90E63D28-E31D-1EB2-8939-A948664****",
"Code": "OK",
"Message": "None",
"Data": {
"CustSpaceId": "C0202939293****",
"WabaId": "29398*****"
}
}Query WABA business information
Call the QueryWabaBusinessInfo API to retrieve WABA business information from the Meta Business Platform for the authorized account.
API reference
Example
Sample success response (JSON format):
{
"RequestId": "90E63D28-E31D-1EB2-8939-A948664****",
"Code": "OK",
"Message": "None",
"Data": {
"BusinessId": "19288282****",
"BusinessName": "Alibaba****",
"VerificationStatus": "verified",
"Vertical": "Retail"
}
}