This document describes how to share your line of credit with a client business or revoke access, if that becomes necessary. Before you start, make sure the system user access token used for billing management has Financial Editor role.
Line of credit is the only accepted payment method for the API use. Solution Partners must share their line of credit with all end businesses onboarded via embedded signup flow. Businesses can only start using the API once their Solution Partner has shared a line of credit.
As Solution Partner, WhatsApp bills you directly for your clients' WhatsApp usage.
Businesses that sign up through the Embedded Signup flow request access to your line of credit with Meta to pay for WhatsApp Business Platform access —you can grant access to your line of credit with these API calls. This means that businesses pay you, and you receive an aggregated invoice to pay Meta.
You are the "Bill To Party" for all businesses sharing your credit line. You are liable for and will pay Meta for all WhatsApp Business Platform spend made by these businesses.
You can revoke access to your line of credit for individual businesses within the Business Manager or with a series of API calls.
For the purposes of this guide, an extended credit object is the same as a credit line object.
curl -i -X GET "https://graph.facebook.com/v21.0
/{business-id}/
extendedcredits?fields=id,legal_entity_name&
access_token={system-user-access-token}"
A call to this edge returns a list of ExtendedCredit nodes:
{ "data": [ { "id": "1972385232742146", "legal_entity_name": "Your Legal Entity", } ] }
Share the credit line with your client's business and attach it to the client's WhatsApp Business Account. The waba_currency
argument is used for the WhatsApp Business Account invoicing its value should be a 3-letter currency code. We support the following currency codes, which correspond to our pricing rates: USD
, EUR
, INR
, IDR
, GBP
, and AUD
.
curl -i -X POST "https://graph.facebook.com/v21.0
/
{extended-credit-id}/whatsapp_credit_sharing_and_attach?
waba_id={assigned-whatsapp-business-account-id}&
waba_currency={assigned-whatsapp-business-account-currency-code}&
access_token={system-user-access-token}"
{ "allocation_config_id": "1972385232742147", "waba_id": "1972385232742141", }
Credit lines cannot be changed after being attached to a WABA. You must create a new WABA with the credit line you want to use, then migrate the phone numbers to this new WABA.
This is an optional step, but it helps with validation. To verify the credit line has been shared, retrieve the shared credit line ID:
In the following example, use the allocation_config_id
returned in the previous step.
curl -g -i -X GET "https://graph.facebook.com/v21.0
/
{allocation-config-id}?fields=receiving_credential{id}&
access_token={system-user-access-token}"
{ "receiving_credential": { "id": "1972385232742148" }, "id": "1972385232742147", }
Then, retrieve the WhatsApp Business Account's payment method ID.
In the following example, use the ID for the assigned WABA.
curl -i -X GET "https://graph.facebook.com/v21.0
/
{whatsapp-business-account-id}?fields=primary_funding_id&
access_token={system-user-access-token}"
{ "id": "1972385232742141", "primary_funding_id": "1972385232742148" }
Compare the id
parameter of receiving_credential
from the first response with primary_funding_id
from the second response to verify they are the same.
These are the steps needed to remove the shared line of credit if you need to revoke access for any reason. You can revoke your credit line whenever you feel the need to and/or when your client removes you as a partner from their WhatsApp Business Account.
When you revoke a credit line from a customer's account, that revocation applies to all WABAs that belong to the customer's business and have been shared with you, the Solution Partner.
curl -i -X GET "https://graph.facebook.com/v21.0
/{business-id}/
extendedcredits?fields=id,legal_entity_name&
access_token={system-user-access-token}"
Response:
{ "data": [ { "id": "1972385232742146", "legal_entity_name": "Your Legal Entity", } ] }
curl -i -X GET "https://graph.facebook.com/v21.0
/
{whatsapp-business-account-id}?fields=owner_business_info&
access_token={system-user-access-token}"
Response:
{ "owner_business_info": { "name": "Client Business Name", "id": "1972385232742147" }, }If the WhatsApp Business Account was unshared with the Solution Partner or the client business removed the Solution Partner as a partner from the WhatsApp Business Account, you cannot access the client's business ID from the above API call. See Unshared WhatsApp Business Account for information.
curl -i -X GET "https://graph.facebook.com/v21.0
/{extended-credit-id}/
owning_credit_allocation_configs?
receiving_business_id={clients-business-id}&
fields=id,receiving_business&
access_token={system-user-access-token}"
Response:
{ "id": "1972385232742140", // Allocation config (i.e., credit sharing) id "receiving_business": { "name": "Client Business Name" "id": "1972385232742147" }, }
Request:
curl -i -X DELETE "https://graph.facebook.com/v21.0
/
{allocation-config-id}?
access_token={system-user-access-token}"
Response:
{ "success": true, }
Request:
curl -i -X GET "https://graph.facebook.com/v21.0
/
{allocation-config-id}?fields=receiving_business,request_status&
access_token={system-user-access-token}"
Response:
{ "receiving_business": { "name": "Client Business Name" "id": "1972385232742147" }, "request_status": "DELETED" }
If the WhatsApp Business Account was unshared with the Solution Partner or the client business removed the Solution Partner as a partner from the WhatsApp Business Account, you are not able to access the client's business ID from the API call listed in Step 2.
In this case, you can retrieve the client's business ID from the email notification that was sent to the Solution Partner business admins when the client business removed the Solution Partner as a partner from the WhatsApp Business Account.
When the WhatsApp Business Account is unshared, all messaging for that account is blocked to protect the Solution Partner's credit line. For complete security, it is recommended that Solution Partners revoke their credit line as soon as the unshare occurs.