This document describes the steps and requirements you need to complete in order to integrate the Embedded Signup flow into your website or client portal.
To begin the integration of the Embedded Signup flow, you first need to have a Business Manager and Meta app set up.
You need a Business Manager account to manage your line of credit and onboarded customers' WhatsApp Business Accounts (WABAs). For information on creating a business account, see Create a Business Manager. Once you have a Business Manager set up, verify your business.
From your Meta developer account, create an app of the Business type. From the Apps panel you can access any of your Meta apps to control settings and request permissions.
Business apps are automatically approved for Standard Access for all Permissions and Features available to the Business app type, so you can develop and test your app while you are in this access level.
Standard Access effectively restricts Business apps to only accessing data owned by app users who have a role on the app or Business. To be released, your Meta app must go through App Review and request Advanced Access to the whatsapp_business_management
permission. We recommend starting this process as soon as possible. You don't need to wait for Embedded Signup to be fully implemented to start this process.
You also need to request the whatsapp_business_messaging
permission for WhatsApp Cloud API as it is required for the API calls.
It is strongly recommended you do not request additional permissions besides these two, as that will unnecessarily slow down your signup process.
Both Business Integration System User access tokens and System User access tokens can be used to access onboarded customer data. The type of token you use depends on if you are configuring Embedded Signup with Facebook Login or if you are configuring it with Facebook Login for Business, and if you are a Tech Provider or a Solution Provider.
The preferred token for Tech Providers is a Business Integration System User access token, as these tokens are scoped to individual customers. You can get one of these tokens by exchanging the code returned to you whenever a customer completes Embedded Signup configured with Facebook Login for Business. If you are using Embedded Signup configured with Facebook Login (which is not recommended), you must use a System User access token instead.
If you are using a System User access token, the System User must grant your app the whatsapp_business_management permission.
You must use a System User access token to share your credit line with onboarded customers. For all other requests, the preferred solution is to use a Business Integration System User access token.
You can get a Business Integration System User access token by exchanging the code returned when a customer completes Embedded Signup configured with Facebook Login for Business. If you are using Embedded Signup configured with Facebook Login (which is not recommended), you must use a System User access token instead.
Note that for System User access tokens, your system user must have granted your app the whatsapp_business_management permission (which you can grant when generating the token), and the System User must be granted the Finance editor role in order to be able to share your line of credit with onboarded customers.
To grant your system user the Finance editor role:
You need to set up a line of credit to send messages with the WhatsApp Business Platform. This is the line of credit you will share with your customers, so make sure you accept the Credit Allocation API terms under Business Settings > Payments in the Business Manager.
For information on sharing your line of credit through the Business Manager rather than through the API, see Share Access to Monthly Invoicing.
If you are using the On-Premises API, make sure you are running a non-expired version of the WhatsApp Business API client.
As part of the integration process, your Meta app must go through App Review and request Advanced Access to the whatsapp_business_management
permission. We recommend starting this process as soon as possible. You don't need to wait for Embedded Signup to be fully implemented to start this process.
Set up the Facebook JavaScript SDK and Facebook Login to embed the signup flow into your website or client portal. Feel free to embed the flow in multiple webpages or portals that you own.
After embedding the signup flow, integrate with the API endpoints needed to complete the integration process. To move to the next step, you need to be able to:
Once registration is complete, use the message_templates
endpoint to get pre-approved message templates and namespaces so businesses can start sending messages.
You must use a secured endpoint (HTTPS). For more information, see Login Security.
Once businesses have completed the signup, you can subscribe to every WABA for which you wish to receive webhooks. You can set up your webhooks to notify you when:
If you want, you can: