WhatsApp
Tech Provider program

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:

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.

WhatsApp - Other

Select Business and complete the rest of the form.

WhatsApp - Business

If you cannot complete this step, try selecting No business portfolio selected on the Business portfolio dropdown.

WhatsApp - No portfolio selected

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.

WhatsApp - Settings - Basic

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.

WhatsApp - Add WA

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:

  1. Navigate to App Dashboard > WhatsApp > Quickstart product panel.

  2. Select Start onboarding.

WhatsApp - Start onboarding
Note

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.

WhatsApp - Start using API

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.

Important

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.

WhatsApp - Scale

On the following screen, choose Working with a Solution Partner and then select Start onboarding.

WhatsApp - Scale

Complete business verification

Note

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).

WhatsApp - Verification 1 WhatsApp - Verification 2

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.

WhatsApp - Partner solution

Partner solutions can have the following states:

StateDescription
ActiveInfobip has accepted the solution and you can use it to configure embedded signup for end client onboarding.
PendingInfobip 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.
DraftThe 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.
InactiveInfobip 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 deactivationInfobip has requested to deactivate the solution. You can accept or decline this request.
DeactivatedThe 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. Configure permissions

Next to Send messages, choose Only my partner.

6. Complete the partner solution request

Follow the prompts to complete the process and initiate the partner solution request.

WhatsApp - Create partner solution

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.

WhatsApp - Create partner solution 2

Embedded signup setup

WhatsApp - Connect account to Tech Provider

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.

WhatsApp - Embed 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:

javascript
<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:

javascript
<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.

WhatsApp - Manage allowlists

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.

WhatsApp - Update roles

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.


Customer registration

After your customers complete the embedded signup on your site, notify Infobip by triggering the specified endpoint. Include your WhatsApp Business Account (WABA) ID in the request payload.

  • Endpoint: POST /whatsapp/1/embedded-signup/registrations/share-waba

Example:

cURL
curl -X POST "https://api.infobip.com/whatsapp/1/embedded-signup/registrations/share-waba" \
-H 'Authorization: {authorization}' \
-H 'Content-Type: application/json' \
-d '{
  "businessAccountId": "WABA_ID"
}'

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.

json
     {
      "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:

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.

WhatsApp - Embed signup flow

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

Note

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:

  1. Select Review app settings to ensure that your app icon, privacy policy URL and app category are correctly set.

  2. 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.

WhatsApp - Prepare for review

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).

WhatsApp - Record video

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.

  1. 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.
  2. 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.
WhatsApp - App review requests

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:

  1. In the App Dashboard (opens in a new tab), navigate to WhatsApp > Quickstart.

  2. Select Continue onboarding > Begin app review.

WhatsApp - 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.

WhatsApp - Access verification - 1 WhatsApp - Access verification - 2

End-to-end business onboarding

WhatsApp - E2E integration
  1. 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.

  2. 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).

  3. Post-onboarding experience: After users finish the flow, create a post-boarding experience that allows them to take further actions to start WhatsApp messaging.

  4. Business verification: Guide your users through the business verification process, which is required for their business to operate on the platform.

  5. 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:

  1. 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.

    WhatsApp - Support - 1
  2. 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.)

    WhatsApp - Support - 2
  3. 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.)

WhatsApp - Support - 3

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.

WhatsApp - Pre-verified numbers

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.

Need assistance

Explore Infobip Tutorials

Encountering issues

Contact our support

What's new? Check out

Release Notes

Unsure about a term? See

Glossary

Research panel

Help shape the future of our products
Service Terms & ConditionsPrivacy policyTerms of use