Tech Provider Program
Overview
The Tech Provider program is an innovative partnership model that enables platforms and Infobip to deliver a robust WhatsApp solution. In this model, platforms act as a WhatsApp service providers, while Infobip (as a Solution Partner) manages WhatsApp messaging services, including everything from the initial setup and onboarding to the continuous maintenance and support.
This page provides a guide to the integration process for Tech Providers using WhatsApp Business Platform solutions with Infobip. It outlines the key business and technical steps involved in the integration.
The setup phase includes:
- Creating a business portfolio
- Meta app creation and setup
- Accepting the Terms of Service
- Testing and scaling
- Completing business verification
The integration phase includes:
- Embedding the WhatsApp onboarding Meta UI (embedded signup)
- Applying for necessary permissions on Meta account level
- Integrating with Infobip WhatsApp traffic APIs that are based on Meta Cloud API
- Implementing any Infobip service management APIs needed for the setup
- Configuring webhooks for incoming messages and delivery reports
- Submitting the Meta app for review
After completing the integration steps, you can proceed with final testing and launch with your end customers.
Setup
Create a business portfolio
To get started, you can either create a new business portfolio (opens in a new tab) or review and update your existing one to include all the required business details, such as business address, website, and email. Ensure that the account creator or owner can provide accurate information about the business during the business verification process later.
Things to keep in mind:
- Your business can have up to two business portfolios
- Ensure all the information provided is correct, otherwise it will be rejected during business verification stage.
Meta App setup
Create a Meta app
To create a new business app and connect it to your business portfolio, navigate to My Apps (opens in a new tab) panel and select Create app. Then choose your business portfolio to connect the app with it.
Alternatively, use an existing business app that is already linked to your business portfolio. Load the existing app in the App Dashboard and skip to the step to add the WhatsApp product.
If you create an app and do not see the option to create a business app, first select Other > Next.
Select Business and complete the rest of the form.
If you cannot complete this step, try selecting No business portfolio selected on the Business portfolio dropdown.
Once the app is created, navigate to your app under the Settings > Basic tab and update your display name, domains, contact email and icon. Add your privacy policy and terms of service URLs, which will be visible to users onboarding through the embedded signup (opens in a new tab). Then select Messaging as the category and your app will be created.
Add the WhatsApp Product
Navigate to the Dashboard and add WhatsApp by selecting the Set up button underneath it. You will then be redirected to select your business account and accept the Terms of service.
Accept the Terms of service
Once you have added the Whatsapp product to your app, you need to accept the Terms of service in order to become a Tech Provider. If you are not automatically redirected to the Quickstart page, follow the steps below:
-
Navigate to App Dashboard > WhatsApp > Quickstart product panel.
-
Select Start onboarding.
If you have already added the product to you app, but have not accepted the terms, go back to the Quickstart section to complete this step.
Test and scale
Test business messaging on WhatsApp
After accepting the Terms of service, you will be redirected to the Quickstart page. To start testing, select Start using the API to open the API setup panel.
You will get access to a fully-featured sandbox that includes a test phone number starting with a "555" area code to send and receive messages. You can safelist up to 5 numbers in the sandbox environment.
Be sure to add real numbers that are not registered on any WhatsApp products and enable two-step verification (Quickstart > Phone numbers > Manage phone numbers). Otherwise, you will not be able to receive the authentication code.
You will be prompted with a window that allows you to send a WhatsApp message.
Scale your solution
Once you have a WhatsApp integration set up, you can start onboarding your users. On the Quickstart page, select Start onboarding.
Complete business verification
Your business needs to be verified before using the embedded signup (opens in a new tab).
To apply for business verification (opens in a new tab), in the Provider verification step select Start verification. Be sure you upload the required official documents (opens in a new tab) and follow the guidelines on domain verification (opens in a new tab).
Integration
During this phase, you can build your end-to-end product experience. Make sure you adhere to the Meta and WhatsApp terms (opens in a new tab) with regards to user data handling when you build your solution.
Partner solutions with Infobip
The core of the Tech Provider model is the partner solution, configured in the App Dashboard. This setup defines the WhatsApp assets you and Infobip can access for your end clients. Once approved, the setup allows you to customize the embedded signup process. During this process, your end clients can grant access to these assets for both business entities.
Create a partner solution
A partner solution establishes an asset-sharing relationship between two business entities. It is configured, initiated, and accepted in the App Dashboard > WhatsApp > Partner solutions panel.
Partner solutions can have the following states:
State | Description |
---|---|
Active | Infobip has accepted the solution and you can use it to configure embedded signup for end client onboarding. |
Pending | Infobip has not accepted or rejected the solution. End clients who try to access embedded signup configured for a solution in this state will see an error indicating it cannot be used for onboarding. |
Draft | The solution has been initiated and saved but has not been sent to Infobip. End clients who try to access embedded signup configured for a solution in this state will see an error indicating it cannot be used for onboarding. |
Inactive | Infobip declined the solution request. End clients who try to access embedded signup configured for a solution in this state will see an error indicating it cannot be used for onboarding. |
Pending deactivation | Infobip has requested to deactivate the solution. You can accept or decline this request. |
Deactivated | The solution has been deactivated. End clients who try to access embedded signup configured for a solution in this state will see an error indicating it cannot be used for onboarding. |
You can use each solution to onboard up to 200 end clients in a rolling one week period.
Add Infobip app to the partner solution
To add the Infobip app to your partner solution, follow these steps:
1. Collaborate with Infobip to determine a solution name
Work with Infobip to decide on a solution name that will appear in the WhatsApp > Partner solutions panel in the App Dashboard. This name helps you and Infobip easily identify the solution among others.
2. Initiate a partner solution request
Once you have agreed on the solution name, access the App Dashboard > WhatsApp > Partner solutions.
3. Create a partner solution
- In the Partner solutions panel, select Create a partner solution.
- Enter the agreed solution name.
4. Enter Infobip app ID
Provide the Infobip app ID: 1370401139746733
.
5. Complete the partner solution request
Follow the prompts to complete the process and initiate the partner solution request.
After the partner solution request is complete, Infobip receives and email and notification in Meta Business Suite about your request. The solution appears in the Partner solutions panel with a Pending
status until Infobip accepts. it.
When Infobip accepts the partners solution request, the status changes from Pending
to Active
. Once the status is active, copy the Solution ID and add it during the embedded signup configuration.
Embedded signup setup
When an end user completes the flow, the required WhatsApp assets are automatically generated, and access to these assets is granted to both you and Infobip.
Setup configuration
To set up the embedded signup, expand the Integration section. There you can see the steps to access the embedded signup flow.
Create configuration
This button shows your Facebook Login for Business permission configuration. If you have not created one yet, go to the Products link on the left side of the App Dashboard and add the Facebook Login for Business product to your app.
- If you do not see Facebook Login for Business in the product panel, create a new business app by selecting App Type > Other > Business.
View scripts
This button shows the embedded signup code with several pre-filled values, such as your app ID. Make sure to assign your permission configuration ID to the config_id
property in the script.
Configure the embedded signup flow
Assign the Solution ID to the solution_id
property in the extras.setup
object and after configuration, display the embedded signup to end clients on your platform in a suitable location. For example:
<script>
// Facebook Login with JavaScript SDK
function launchWhatsAppSignup() {
// Launch Facebook login
FB.login(function (response) {
if (response.authResponse) {
const accessToken = response.authResponse.accessToken;
// Use this token to call the debug_token API and get the shared WABA's ID
} else {
console.log('User cancelled login or did not fully authorize.');
}
}, {
config_id: '<CONFIG_ID>', // Configuration ID obtained in the previous step goes here
response_type: 'code', // Must be set to 'code' for System User access token
override_default_response_type: true,
extras: {
setup: {
solutionID: '<solutionID>' // Solution ID goes here
}
}
});
}
</script>
<button
onclick="launchWhatsAppSignup()"
style="background-color: #1877F2;
border: 0;
border-radius: 4px;
color: #fff;
cursor: pointer;
font-family: Helvetica, Arial, sans-serif;
font-size: 16px;
font-weight: bold;
height: 40px;
padding: 0 24px;">
Login with Facebook
</button>
Load the Facebook JavaScript SDK
Simplify the sign-up process on your website and allow users to log in with their Facebook account:
<script>
<script>
window.fbAsyncInit = function() {
FB.init({
appId: '790956649742945',
autoLogAppEvents: true,
xfbml: true,
version: 'v20.0'
});
};
</script>
<script async defer crossorigin="anonymous"
src="https://connect.facebook.net/en_US/sdk.js">
</script>
Manage allowlists
Select Manage allowlists and allowlist your domain. You can do this from the Facebook Login settings page as well.
Update roles
Add your developers to your app by selecting Update roles. Avoid assigning admin roles unless absolutely necessary. Once you obtain advanced access on permissions through App review, any user can onboard using your embedded signup flow.
Billing
End clients onboarded through the embedded signup (configured for a partner solution) share Infobip's credit line. Infobip handles billing for any end-client API usage and charges the solution to you. You can bill your clients directly for your value-added solution or service.
Webhook registration event (status update on registration)
Infobip forwards notifications about any account registration changes to your webhook in real time. Status can be IN_PROGRESS
, FAILED
, or FINISHED
. To enable the webhook setup, provide the URL to your Account Manager.
{
"businessAccountId": "102384266223093",
"status": "FINISHED",
"createdAt": "2023-06-07T15:17:37.444+0000",
"lastModifiedAt": "2023-08-28T17:01:04.904+0000",
"senders": [
{
"phoneNumberId": "122098754222007518",
"displayPhoneNumber": "+1 313-513-8538",
"type": "CLOUD",
"status": "FINISHED"
},
{
"phoneNumberId": "119302867930080",
"displayPhoneNumber": "+1 213-218-6042",
"type": "CLOUD",
"status": "FAILED"
}
]
}
Automatic resource association
The system can automatically associate WhatsApp resources with an application ID and entity ID during the WhatsApp sender registration through the embedded signup flow. This feature links WhatsApp resources to the correct application and entity IDs as they are created, simplifying the management of multiple customer accounts. For example, when a Tech Provider receives a subscriptions event with a default entity ID, they can quickly assign the appropriate entity and application IDs for a new customer, ensuring smooth onboarding and efficient resource allocation.
The system will automatically assign the entity ID to match the end user's Business Manager ID received from the registration event. Users can modify the entity IDs afterward if necessary.
Implement template and traffic management APIs
WhatsApp standalone API
When you send a WhatsApp message to an end user's device, you are sending an outbound message. There are several types of WhatsApp messages:
- Message templates: Pre-defined and pre-approved templates used to send text, images, videos, locations, documents, carousels, and buttons, with options to configure SMS failover.
- Free-form messages: Messages you can use when the end user contacts you within a certain timeframe. You can send text, images, audio, video, stickers, locations, or contacts without Meta's pre-approval.
- Interactive messages: Messages that include interactive elements like buttons, lists, or product messages for user engagement.
When an end user sends a WhatsApp message from their device to your phone number, it is an inbound message. The inbound message is routed through the Infobip platform and delivered to you. Common actions with inbound messages include:
- Marking messages as read to indicate to the end user that their message has been seen.
- Downloading media and metadata shared by the end user.
Learn more about integrating outbound and inbound WhatsApp traffic (opens in a new tab).
Service management
Effective service management for WhatsApp business solution involves maintaining seamless communication and engagement. Key aspects include:
- Template management: Design and maintain predefined message structures that comply with WhatsApp guidelines to ensure consistent communication with customers.
- Sender management: Manage registered WhatsApp sender to align with business representation and maintain high communication standards.
Implementing robust service management practices ensures compliance, reliability, and optimal performance, leading to better customer interactions on the WhatsApp business solution platform.
Learn more about WhatsApp business solution service management (opens in a new tab).
Message status reports
Message status reports provide insights into the delivery and engagement of messages in WhatsApp business solution management:
- Delivery reports (opens in a new tab): Confirm the successful message transmission from the business to the recipient's device, ensuring message reachability.
- Seen reports (opens in a new tab): Indicate when a recipient has viewed the message, offering deeper insights into user engagement.
Effective management of these reports involves capturing, processing, and interpreting data from Infobip APIs, allowing businesses to monitor message effectiveness and refine their communication strategies.
Messages API
WhatsApp outbound and inbound traffic can also be managed through the Messages API, which integrates multiple messaging channels into a single interface. Instead of using separate APIs for each channels, you can manage all channels with one API.
- Unified endpoint: All channels use the same endpoint, enabling consistent message sending, receiving, and other actions across all channels.
- Future-proof solution: Ideal for businesses using multiple channels or planning to expand, reducing integration efforts and simplifying management.
Find more information in the Messages API product documentation (opens in a new tab) and API details (opens in a new tab) page.
CPaaS X
CPaaS X offers modular and flexible APIs that speed up onboarding, reduce operational load, minimize engineering effort, and accelerate time to market.
Discover how CPaaS X can help reduce your workload (opens in a new tab).
Validate your setup
Once you have set up the embedded signup, ensure it is accessible on your website, where you can test it. To test embedded signup, simulate a customer completing the flow using test business credentials generated from your platform. To validate that your embedded signup setup is correct, confirm the following:
- Successfully register a number using the embedded signup hosted on your platform.
- Successfully send messages on behalf of your customer using Infobip traffic APIs, such as the WhatsApp Standalone API or Messages API, based on your preference.
After completing these steps, go to the Meta App's Quickstart > Onboarding > Integration section and select the checkbox for Mark as complete.
At this stage of the implementation (app not reviewed yet), you can only onboard test accounts through the embedded signup solution. The WhatsApp business account (WABA) you create for testing cannot be associated with your Tech Provider's Facebook Business Manages. You must create a new Business Manager account using the embedded signup.
To successfully create a test WABA, the person performing the setup must have admin right on both the newly created Business Manager account (admin rights are automatically assigned upon creation) and the Tech Provider Business Manager account. This limitation does not apply to production environments.
App review
Starting in 2023, your business must go through business verification and be verified in order to complete app review.
The app review (opens in a new tab) is a required step for allowing apps to access specific features on WhatsApp. Since your app will manage another business's WhatsApp business account and send messages on their behalf, Meta needs to validate how you intend to use the requested permissions to ensure there is no abuse or harm to user data. Meta's operational team will review the submission and approve, reject, or request additional information.
Prepare for app review
To prepare for the app review, follow the steps below:
-
Select Review app settings to ensure that your app icon, privacy policy URL and app category are correctly set.
-
Build your prototype and make sure you adhere to the Meta and WhatsApp terms (opens in a new tab). Your website can subscribe to webhooks to receive updates on a WhatsApp Business Account of your user.
Capture videos for app review
As part of the app review process, you will need to provide two video recordings:
- The first video must demonstrate a message being created and sent from your app, with the message received in the WhatsApp client (mobile or web).
- The second video must show your app being used to create a message template.
Alternatively, you can screen record the API Setup cURL script (opens in a new tab) as you use it to send a message to a WhatsApp number designated as a test recipient. Similarly, you can capture a screen recording of WhatsApp Manager (opens in a new tab) as you use it to create a template message.
If you have an existing Infobip integration, you can record these actions on our web interface (opens in a new tab).
For additional tips on recording, go to the Quickstart > Onboarding panel and locate the Record video documentation row. Select Record video for guidance on creating your videos (note that this button does not capture video; you will need to record them independently).
Request advanced access for permissions
Permissions are granular, user-granted authorizations. Before your app can use a service to access an app user's data, the user must grant all permissions required by that service. To pass the app review, request only the permissions necessary for your app to function, as asking for unnecessary permissions is a common reason for rejection.
Below are the app permissions required during the review process of the WhatsApp Business Solution.. Submit a separate video for each permission, highlighting where the respective permissions are used. Ensure your video submissions showcase your product (website or mock-ups) and not Infobip or Meta products.
-
whatsapp_business_management
- Text explanation: Explain how your app or API manages a customer’s WhatsApp account, including account details, message templates, and other WhatsApp assets. Highlight how your platform enables customers to control their account settings and assets.
- Video requirements: Your video or screen recording must demonstrate your app being used to create a message template or show the WhatsApp Manager being used by you to create a message template.
-
whatsapp_business_messaging
- Text explanation: Describe how your app uses this permission to send messages on behalf of your users. Explain whether messages are sent through an API or an application you have developed, and how it benefits your users.
- Video requirements: Your video or screen recording must demonstrate a message being sent with your app and appearing in the WhatsApp client, or show the API Setup cURL script being used by you.
Start the app review
You can start the app review process in the App Dashboard. This step is crucial to ensure your app complies with the requirements set by Meta and WhatsApp.
Follow the steps below to initiate the review:
-
In the App Dashboard (opens in a new tab), navigate to WhatsApp > Quickstart.
-
Select Continue onboarding > Begin app review.
Access verification
To ensure that only businesses with legitimate use cases can access data belonging to other businesses, you must complete the access verification process. You can start access verification after applying for advanced permissions on your app.
To begin, click Start verification. This will open the full access verification page within the WhatsApp product, allowing you to quickly return to the onboarding page when completed.
End-to-end business onboarding
-
Create an account as a Tech Provider: Users will create an account for your product, allowing you to track and store integration information for their businesses.
-
Create business portfolio through the embedded signup: Users log in with Facebook through the embedded signup flow to create a portfolio and a WhatsApp Business Account (WABA).
-
Post-onboarding experience: After users finish the flow, create a post-boarding experience that allows them to take further actions to start WhatsApp messaging.
-
Business verification: Guide your users through the business verification process, which is required for their business to operate on the platform.
-
Payments setup: Users must pay Meta directly and add a payment method to their WABA. This can be done by following the steps below:
- Navigate to the Business settings panel in Meta Business Suite.
- Select the WhatsApp Business Account (WABA).
- Select the Settings tab and add a payment method.
Onboarding limits
By default, you can onboard up to 10 new customers within a rolling 7-day window. If you complete the business verification, app review and access verification, your limit will automatically increase to 200 new customers within the same timeframe.
You can check your limit by navigating to the WhatsApp Manager > Partner overview portal. You will also receive and email notification if you are approaching this limit.
If you need to onboard more that 200 customers per week, you can apply to become a Meta Business Partner (opens in a new tab) or submit a Direct Support (opens in a new tab) ticket to Meta.
To access Meta's Direct Support, you must complete the business verification process and then follow the steps below:
- Select your business portfolio > Ask a question.
- Select Tech Provider: Account and WABA topic.
- Select Increase WABA for onboarding.
Support
If you need assistance, you can contact Infobip support, which is always available to assist you with any queries.
You can also reach Meta support directly:
-
Enterprise developers (solution partners, managed partners or active Tech Providers/Partners): You can open a ticket in Meta's Direct Support (opens in a new tab). When creating your ticket, choose the WhatsApp Tech Provider topic and select the related request type.
-
Non-enterprise developers (onboarding Tech Providers, active Tech Providers/Partners): If you have completed the business verification, you can report issues by creating a bug report in Meta's Platform Bug Reports (opens in a new tab). (Select WhatsApp Business API > Tech Provider Onboarding.)
-
Developers who have not completed business verification: If you are experiencing issues with becoming a Tech Providers, you can seek help by posting in the Meta's Developer Community Forum (opens in a new tab). (Select WhatsApp Business API > Tech Provider.)
Additional functionalities
Pre-verified numbers
Pre-verified business phone numbers are numbers that have already been verified by Infobip, eliminating the need for end clients to acquire and verify their own numbers for the WhatsApp Business Solution. These numbers speed up the onboarding process for your customers by skipping the two-factor authentication step typically required to onboard a WhatsApp sender. Infobip can provide pre-verified phone numbers from various regions worldwide, tailored to your and your customers' preferences.
If you believe pre-verified numbers would help improve the onboarding experience for your end users, please reach out to your account manager.
Bulk sender registration
This functionality allows you to perform bulk sender registration (opens in a new tab) for any existing WhatsApp Business Account, making it a significant advantage for end clients who need to register large numbers of senders for various purposes. It streamlines the process by enabling the registration of multiple phone numbers with a single sign-up, saving time and effort when adding hundreds of numbers to a WhatsApp Business Account.
If you would like to learn more about bulk sender registration, please reach out to your account manager.