Skip to main content
Partner Direct Link (TP Lite) is an integration option for YCloud Tech Partners. You need YCloud to enable it for your account, but you do not need to become a Meta partner. Create a short-lived onboarding link on your server. Your customer can open it directly or through a button on your website. Start with Direct Link to test your integration, then use the SDK button if you want customers to complete signup in a popup.

Integration overview

  1. Prepare your account. Have YCloud enable Partner Direct Link, create an API key, and configure your webhook receiver.
  2. Configure your entry point. Open Partner Direct Link in the dashboard and set your branding, redirect URL, or SDK origins.
  3. Create a link. Your server requests an onboarding link for a customer in your system.
  4. Let the customer connect. They open the hosted page or SDK popup and complete Meta authorization.
  5. Confirm the result. Your backend receives the webhook and associates the WABA with the customer.

Before you start

  1. Ask YCloud to enable Partner Direct Link for your account. If you are not yet a Tech Partner, apply to become one.
  2. Create an API key in Developers > API Key.
  3. Configure your receiver in Developers > Webhooks and subscribe to whatsapp.business_account.updated.
Call the link creation API from your server. Never put your API key in browser or mobile app code. Treat each onboarding URL as a temporary credential: keep it out of public pages, analytics, and public logs.
  1. Open the YCloud dashboard for the account where Partner Direct Link is enabled.
  2. Expand Developers in the left sidebar.
  3. Click Partner Direct Link to open the configuration page.
Partner Direct Link page with Basic settings and the hosted signup preview

Open Developers > Partner Direct Link to configure your branding and entry point. This example shows the settings before configuration.

The page contains Basic settings for your branding and Integration for creating a link, integrating the entry point, and subscribing to webhooks. Use Hosted page preview to view the customer-facing page.

Configure your branding and entry point

Open Developers > Partner Direct Link in the YCloud dashboard. Complete Basic settings: For SDK origins, enter the exact scheme, domain, and optional port, without a path. Add each subdomain or port separately; wildcards are not supported. Use HTTPS in production. HTTP is allowed only for localhost development. Direct Link works without an allowed SDK origin; SDK Button does not.
  • WhatsApp Business Platform (WHATSAPP_BUSINESS_PLATFORM): Choose this mode to connect a number for messaging through APIs and your software.
  • WhatsApp Business App coexistence (WHATSAPP_BUSINESS_APP): Choose this mode for an eligible existing Business App number when the customer wants to keep using the app and add API messaging on the same number.
Supported locales are en_US (English), zh_CN (Simplified Chinese), es_ES (Spanish), pt_BR (Brazilian Portuguese), id_ID (Indonesian), and ru_RU (Russian). Values are case-sensitive. Other values return HTTP 400. Example response:
expiresAt is the expiry time as a Unix timestamp in milliseconds. The default link lifetime is two hours. Each link connects one customer to one WABA. Before signup completes, the customer can refresh, retry, or open the link in another browser while it remains valid. After successful binding, the link cannot bind another WABA. Create a new link when the customer needs to change or add a WABA. Add a connect button to your customer application. When the customer clicks it, request an onboarding link from your server and navigate to onboardingUrl or open it in a new window. You can also send it privately to the intended customer through a secure one-to-one channel. The customer opens the hosted page and clicks Continue with Meta. They use a Facebook account with permission to manage their business and select or create their business, WABA, and phone number in Meta. YCloud completes the binding and displays the result.
Direct Link integration with an onboarding URL placeholder and a preview of the customer signup page

Direct Link integration and the hosted page preview. This example has no generated onboarding link.

If you configured a redirect URL, successful signup redirects there with status=connected appended as a query parameter. Use this to update the customer-facing page; use the webhook below to confirm the binding in your backend.

Option 2: SDK Button

Add your page’s origin to Allowed SDK origins, then load the SDK. Your browser code calls your own backend to obtain the link. The /api/ycloud/onboarding-link route below is an example route that you implement on your server.
onStatus(result) reports the signup state: onError(error) means the SDK could not open signup. Its code can be POPUP_BLOCKED or INVALID_ONBOARDING_URL. onClose(event) fires only when the customer closes the window before a final result, with reason: "USER_CLOSED". These callbacks update your frontend. Use the server-side webhook as the final binding result.

Confirm the binding with a webhook

Partner Direct Link integration step showing the whatsapp.business_account.updated webhook event

Subscribe to whatsapp.business_account.updated in Developers > Webhooks to receive the binding result.

YCloud sends whatsapp.business_account.updated to your configured webhook receiver after binding succeeds. The following excerpt shows the fields your integration uses:
When updateEvent is PARTNER_ADDED, process the WABA as newly added. Match partnerCustomerId to your customer and save the WABA id. A paymentMethodAttached value of true means credit attachment succeeded; false means it has not completed. Deduplicate deliveries using the event id, and return HTTP 2xx after successful receipt. See Webhooks for receiver setup.