Transferring WABA ownership to a business customer

There are two WABA ownership models: OBO and WABA Sharing.

If you are a Solution Partner and want to transfer ownership of an OBO WABA to your customer, you can enable ownership transfer on the WABA and your customer can then claim ownership of it using Meta Business Suite, or by completing your implementation of Embedded Signup.

Transferring ownership requires no downtime and does not affect your app's ability to send customer messages. It simply converts the WABA from the OBO model to the WABA Sharing model. Your credit line will still be attached to the customer's WABA (although you must share your credit line for compliance reasons), and any existing functionality that your app relies on, such as API access, WhatsApp Manager access, and access to the WABA and its resources, are all unaffected.

Note that transferring ownership is one-way. WABAs cannot be converted from the WABA Sharing model back to the OBO model.

Checking WABA Ownership

Use the GET <WABA_ID> endpoint and request the ownership_type field to determine the WABA's ownership model. A value of ON_BEHALF_OF indicates you own the WABA, while CLIENT_OWNED indicates that your business customer owns the WABA.

Step 1: Enable WABA Ownership Transfer

Use the POST /<WABA_ID>/set_obo_mobility_intent endpoint to enable ownership transfer on a WABA, so your customer can claim ownership of it using Embedded Signup.

Request Syntax

curl -X POST 'https://graph.facebook.com/v21.0/<WABA_ID>/set_obo_mobility_intent' \
-H 'Authorization: Bearer EAAJB...'

Post Body (Optional)

{
  "solution_id": "<MULTI-PARTNER_SOLUTION_ID>"
}

The post body is optional. If you have configured a multi-partner solution, you can include the solution ID in the post body. If included, when the customer claims ownership of the WABA using Embedded Signup, the customer can grant each partner of the solution the permissions specified in the solution's configuration.

Note that once you call this endpoint with a solution ID in the post body, you cannot call it again using the same WABA ID and different solution ID.

Response

{
  "id": "<WHATSAPP_BUSINESS_ACCOUNT_OBO_MOBILITY_INTENT_ID>"
}

Upon success, the API will return a WhatsAppBusinessAccountOBOMobilityIntent node ID. Currently, you cannot access this node, so there's no need to store it.

Step 2: Instruct Customer to Claim WABA Ownership

Once enabled, instruct your customer to use Meta Business Suite or your implementation of Embedded Signup to claim ownership of the WABA.

Note that if your customer does not complete this step within 30 days, ownership transfer to the customer will happen automatically.

Using Meta Business Suite

Send the customer the following steps:

  1. Go to https://business.facebook.com/settings/requests/ and log into your account.
  2. If you have multiple business portfolios, you will be presented with all of them. Click the portfolio that contains your WABA.
  3. In the Received tab, locate the request and complete the flow.

Using Embedded Signup

Send the customer a link to your implementation of Embedded Signup and instruct them to complete the flow. As part of the flow, the customer will be asked to confirm migration of their WABA(s) to the WABA Sharing model:

If you used the post body to include the ID of a multi-partner solution, the customer will be asked to individually grant each partner of the solution the permissions specified in the solution configuration:

Note: Credit lines are shared with the customer automatically.