> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chatsyncs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect WhatsApp Account Manually (Alternative)

> How to connect a WhatsApp number to ChatSyncs using the manual / Alternative path instead of one-click embedded signup — getting the Business Account ID and permanent access token from Meta, wiring the webhook back into the Meta app, and finishing the connection in ChatSyncs. Use when a customer's embedded signup fails or they need full visibility into each credential.

If the one-click [embedded signup](/learn/connect-whatsapp-embedded) won't work for a customer's
account, they can connect manually instead. This path takes more steps but gives full visibility
into each credential, because the customer creates their own Meta app and feeds the resulting
values into ChatSyncs by hand.

## Where this starts and ends: the Alternative panel

<Frame>
  <img src="https://mintcdn.com/chatsyncs/eyc5nb29uF7tuncy/images/learn/connect-whatsapp-manual/step-00-connect-account-list.png?fit=max&auto=format&n=eyc5nb29uF7tuncy&q=85&s=83a70c6bcfbfe1f7d2b82d89f078a779" alt="ChatSyncs Connect Account page listing available connections — WhatsApp, Facebook, Instagram, Telegram, Webchat, Google, Shopify, WooCommerce — with the Connect WhatsApp button highlighted" width="1263" height="548" data-path="images/learn/connect-whatsapp-manual/step-00-connect-account-list.png" />
</Frame>

From **Connect Account** in the left navigation, click **Connect WhatsApp** to open the Business
Accounts screen, which shows both connection paths side by side — **Embedded Onboarding (One
Click)**, the recommended path, and **Create Your Own API Connection**, the Alternative path
covered here:

<Frame>
  <img src="https://mintcdn.com/chatsyncs/eyc5nb29uF7tuncy/images/learn/connect-whatsapp-manual/step-01-chatsyncs-connect-panel.png?fit=max&auto=format&n=eyc5nb29uF7tuncy&q=85&s=627daba67316d7e11d02ea4680808b30" alt="ChatSyncs Business Accounts screen with Embedded Onboarding (One Click) and Create Your Own API Connection cards side by side, the Alternative card expanded showing Business Account ID, Access Token, Webhook Callback URL, Verify Token, Privacy Policy URL, and Terms of Service URL fields" width="1256" height="500" data-path="images/learn/connect-whatsapp-manual/step-01-chatsyncs-connect-panel.png" />
</Frame>

**Connect Account → Connect WhatsApp → Connect WhatsApp Business (Alternative)** is both where
this starts and where it ends:

* At the start, copy the **Webhook Callback URL**, **Verify Token**, **Privacy Policy URL**, and
  **Terms of Service URL** shown here — they get pasted into the Meta app.
* At the end, come back to this same panel to paste in the **WhatsApp Business Account ID** and
  the **Access Token**, then click **Connect**.

## Step 1: Set up the Meta app and get the Business Account ID

<Frame caption="Video walkthrough: creating the business portfolio and generating the permanent access token in Meta's current dashboard.">
  <iframe className="w-full aspect-video rounded-xl" src="https://www.youtube.com/embed/7PL_akhc9I0" title="Production-Ready WhatsApp Bot That Actually Runs 24/7" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

This video walks through the same two things covered in Steps 1 and 2 below — creating the
business portfolio and generating the permanent access token — using Meta's current dashboard,
so it's worth watching alongside the screenshots if anything looks different on your screen.

Here you'll create a Meta developer app and pick the WhatsApp option. Think of the **business
portfolio** as the central hub everything else connects through — your Meta app, your WhatsApp
number, and later an Instagram or ad account would all attach to this same portfolio, and
without it those pieces can't talk to each other. By the end of this step, you'll have the
**WhatsApp Business Account ID** that the Alternative panel is asking for.

<Steps>
  <Step title="Sign in to the developer portal">
    Go to `developers.facebook.com` and sign in, or create an account.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/meta-account-01-my-apps.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=acecf83da0599f28b5ca9cb5ec393336" alt="My Apps screen with Create App button" width="842" height="370" data-path="images/learn/connect-whatsapp-manual/meta-account-01-my-apps.png" />
    </Frame>
  </Step>

  <Step title="Create an app">
    Click **My Apps → Create App**, then give it an **App name** and **App contact email**.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/meta-account-02-app-details.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=69ec1825290877160be14a59cb29db72" alt="Create an app — App name and App contact email fields" width="769" height="363" data-path="images/learn/connect-whatsapp-manual/meta-account-02-app-details.png" />
    </Frame>
  </Step>

  <Step title="Select the WhatsApp use case">
    On the Use Cases step, select **Connect with customers through WhatsApp**.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/meta-account-03-select-whatsapp-usecase.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=2d33efb0106d0ba7f17ffb2ef7ab7eb2" alt="Add use cases — Connect with customers through WhatsApp selected" width="771" height="357" data-path="images/learn/connect-whatsapp-manual/meta-account-03-select-whatsapp-usecase.png" />
    </Frame>
  </Step>

  <Step title="Connect a business portfolio">
    The app must be attached to a business portfolio. If you don't have one yet, create one on
    the spot with a portfolio name and your contact info.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/meta-account-04-create-business-portfolio.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=0cfca5447d15f6f9af09cbee6ac3ba74" alt="Create a business portfolio modal with portfolio name and contact info fields" width="558" height="454" data-path="images/learn/connect-whatsapp-manual/meta-account-04-create-business-portfolio.png" />
    </Frame>
  </Step>

  <Step title="Review and create the app">
    Confirm the app details, use case, and business portfolio on the Overview step, then click
    **Create app**.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/meta-account-05-review-create-app.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=8acfbc948ca3d0d38c83adb2fec79505" alt="Overview step showing app details, use case, business portfolio, and Create app button" width="687" height="455" data-path="images/learn/connect-whatsapp-manual/meta-account-05-review-create-app.png" />
    </Frame>
  </Step>

  <Step title="Customize the WhatsApp use case">
    From the app dashboard, open **Customize the Connect with customers through WhatsApp use
    case**.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/meta-account-06-customize-usecase.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=ac723da031d7fca8044128877efadb81" alt="App dashboard with Customize the Connect with customers through WhatsApp use case link" width="821" height="341" data-path="images/learn/connect-whatsapp-manual/meta-account-06-customize-usecase.png" />
    </Frame>
  </Step>

  <Step title="Start using the API">
    Under **Quickstart**, click **Start using the API** — this opens the API Setup screen.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/meta-account-07-quickstart.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=6ed88097b95b664559911f95714403f7" alt="Quickstart screen with Start using the API button" width="773" height="317" data-path="images/learn/connect-whatsapp-manual/meta-account-07-quickstart.png" />
    </Frame>
  </Step>

  <Step title="Copy the Business Account ID">
    Under "Select phone numbers" you'll see a free **test number** Meta already provided. On the
    same screen, copy the **WhatsApp Business Account ID (WABA ID)** shown next to it — that's
    the value the Alternative panel needs. (The **Phone Number ID** shown here is for direct API
    calls, not needed for this connection.)

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/bW8-yq3fsTygVS8q/images/learn/connect-whatsapp-manual/step-02-business-account-id.png?fit=max&auto=format&n=bW8-yq3fsTygVS8q&q=85&s=8c656cd0f1848fb99b8ee36efc67fc4e" alt="Meta app API Setup screen showing the test number, Phone Number ID, and WhatsApp Business Account ID" width="1176" height="609" data-path="images/learn/connect-whatsapp-manual/step-02-business-account-id.png" />
    </Frame>
  </Step>
</Steps>

<Tip>
  This is the same setup process covered in full in
  [Meta Developer Account Setup](/meta-api/concepts/meta-developer-account-setup), including the
  test number's 5-recipient and 90-day limits.
</Tip>

## Step 2: Generate the permanent access token

In this step, you'll create something Meta calls a **system user** inside Meta Business Manager,
give that system user full access to both your app and your WhatsApp Business Account, and then
generate a permanent token from it — this is the second value the Alternative panel is asking
for. Make sure you use this **permanent** token, not the temporary token that Meta's API Setup
screen also shows you — that temporary token quietly stops working after about an hour, and your
ChatSyncs connection will break without any warning when it does. (See the video above for the
same walkthrough in Meta's current dashboard.)

<Steps>
  <Step title="Open Business Settings">
    Go to `business.facebook.com`, open your business portfolio, and click into its
    **Settings**.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-01-open-business-settings.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=c4e908753211245af59cf92d61d610a9" alt="Meta Business Suite — opening a business portfolio's Settings" width="792" height="382" data-path="images/learn/connect-whatsapp-manual/token-01-open-business-settings.png" />
    </Frame>
  </Step>

  <Step title="Open System Users">
    Go to **Users → System Users**. A new portfolio starts with no system users.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-02-system-users-empty.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=103e2c6ce83bdb0311843b14cbdfb2b9" alt="System Users screen with no system users added yet" width="797" height="391" data-path="images/learn/connect-whatsapp-manual/token-02-system-users-empty.png" />
    </Frame>
  </Step>

  <Step title="Create a system user">
    Click **Add**, give it a name, and set its role to **Admin**.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-03-create-system-user-modal.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=f088e26b2907a4180326724cbced7eb6" alt="Create system user modal with name field and Admin role" width="727" height="378" data-path="images/learn/connect-whatsapp-manual/token-03-create-system-user-modal.png" />
    </Frame>
  </Step>

  <Step title="Assign assets to the system user">
    A new system user has no access to anything yet.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-04-system-user-created.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=cb970c38f52779cb74be76fa1b10aed9" alt="System user created with no assets assigned" width="793" height="402" data-path="images/learn/connect-whatsapp-manual/token-04-system-user-created.png" />
    </Frame>

    Use **Assign assets** to give it **full control** over both the Meta app —

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-05-assign-app-full-control.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=19b0bb6299c7f61276f9c1735c010c0f" alt="Assign app full control to system user" width="782" height="390" data-path="images/learn/connect-whatsapp-manual/token-05-assign-app-full-control.png" />
    </Frame>

    — and the WhatsApp Business Account. Skipping either one causes the token to fail for that
    asset later.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-06-assign-whatsapp-account-full-control.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=80a53ed68bb2a909dd74dc80829f5604" alt="Assign WhatsApp Business Account full control to system user" width="784" height="457" data-path="images/learn/connect-whatsapp-manual/token-06-assign-whatsapp-account-full-control.png" />
    </Frame>
  </Step>

  <Step title="Generate the token">
    Click **Generate token** on that system user, select the app, and assign the required
    permissions (`whatsapp_business_messaging`, `whatsapp_business_management`,
    `whatsapp_business_manage_events`).

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-07-generate-token-permissions.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=f4101176a4ee7881f78375c9d2def4aa" alt="Generate token — selecting WhatsApp business permissions" width="770" height="392" data-path="images/learn/connect-whatsapp-manual/token-07-generate-token-permissions.png" />
    </Frame>
  </Step>

  <Step title="Save it immediately">
    Copy the token and store it securely — Meta only shows it once. This is the token you'll
    paste into the ChatSyncs Alternative panel.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/bW8-yq3fsTygVS8q/images/learn/connect-whatsapp-manual/step-03-permanent-token-created.png?fit=max&auto=format&n=bW8-yq3fsTygVS8q&q=85&s=131864d87da288665daa6b5f7b4f8381" alt="Meta Business Manager token created screen with the permanent access token shown once" width="1023" height="682" data-path="images/learn/connect-whatsapp-manual/step-03-permanent-token-created.png" />
    </Frame>
  </Step>

  <Step title="Verify it (optional)">
    Paste the token into the Meta Access Token Debugger
    (`developers.facebook.com/tools/debug/accesstoken/`) to confirm it's valid — a permanent
    token shows "Never" as its expiry.

    <Frame>
      <img src="https://mintcdn.com/chatsyncs/n_PA5Zl0aLIOilGg/images/learn/connect-whatsapp-manual/token-08-token-debugger.png?fit=max&auto=format&n=n_PA5Zl0aLIOilGg&q=85&s=c7c61a894497fac507a2f1cd7c6a6fdf" alt="Meta Access Token Debugger showing a token's expiry and permissions" width="1673" height="421" data-path="images/learn/connect-whatsapp-manual/token-08-token-debugger.png" />
    </Frame>
  </Step>
</Steps>

<Tip>
  This is the same setup process covered in full in
  [Access Tokens (Temporary vs Permanent)](/meta-api/concepts/access-tokens), including why a
  temporary token isn't safe to use here.
</Tip>

## Step 3: Paste the webhook details back into the Meta app

<Frame>
  <img src="https://mintcdn.com/chatsyncs/bW8-yq3fsTygVS8q/images/learn/connect-whatsapp-manual/step-04-paste-webhook-into-meta.png?fit=max&auto=format&n=bW8-yq3fsTygVS8q&q=85&s=fea155219ff0553916cc3f0e9df33c1b" alt="Meta app Configuration tab with Callback URL and Verify token fields filled in from the ChatSyncs panel" width="1165" height="594" data-path="images/learn/connect-whatsapp-manual/step-04-paste-webhook-into-meta.png" />
</Frame>

<Steps>
  <Step title="Open Configuration">
    In the Meta app, go to **WhatsApp → Configuration**.
  </Step>

  <Step title="Paste the Webhook Callback URL">
    Paste the **Webhook Callback URL** copied from the ChatSyncs Alternative panel.
  </Step>

  <Step title="Paste the Verify Token">
    Paste the **Verify Token** copied from the same panel.
  </Step>

  <Step title="Verify and save">
    Click **Verify and save**. This is what lets Meta deliver incoming messages to ChatSyncs.
  </Step>
</Steps>

## Step 4: Add the legal URLs to the Meta app

<Frame>
  <img src="https://mintcdn.com/chatsyncs/bW8-yq3fsTygVS8q/images/learn/connect-whatsapp-manual/step-05-paste-legal-urls-into-meta.png?fit=max&auto=format&n=bW8-yq3fsTygVS8q&q=85&s=b29dcc368585454b0f962f2327cd31bf" alt="Meta app Basic Settings with Privacy Policy URL and Terms of Service URL fields" width="784" height="397" data-path="images/learn/connect-whatsapp-manual/step-05-paste-legal-urls-into-meta.png" />
</Frame>

In the Meta app's **App Settings → Basic**, paste the **Privacy Policy URL** and **Terms of
Service URL** copied from the ChatSyncs Alternative panel, then save. Meta won't let the app go
live without both.

## Step 5: Finish the connection in ChatSyncs

Back in the ChatSyncs Alternative panel, paste in the **WhatsApp Business Account ID** (Step 1)
and the **Access Token** (Step 2), then click **Connect**.

<Note>
  Once a number is connected to the API, it can no longer be used in the standard WhatsApp app on
  a phone. Use a dedicated business number.
</Note>

## Frequently asked

<AccordionGroup>
  <Accordion title="Embedded signup isn't working for a customer — what's the alternative?">
    Use **Connect WhatsApp Business (Alternative)**. It takes more steps because the customer
    creates their own Meta app and system-user token, but it gives full visibility into every
    credential involved.
  </Accordion>

  <Accordion title="What two values does the Alternative panel actually need from Meta?">
    The **WhatsApp Business Account ID** (from API Setup in the Meta app) and a **permanent
    access token** (from a system user in Meta Business Manager). Both come from the Meta side
    before you can click Connect.
  </Accordion>

  <Accordion title="Why does the connection fail even with a correct Business Account ID and token?">
    Usually the webhook step was skipped or the system user was never assigned full control over
    the app and the WhatsApp account. Check [Access Tokens](/meta-api/concepts/access-tokens) for
    the asset-assignment step.
  </Accordion>
</AccordionGroup>

<Warning>
  * **Using the temporary token instead of the permanent one** — the Alternative panel needs the
    permanent system-user token. A temporary token expires in \~1 hour and the connection will
    silently break.
  * **Skipping the webhook paste-back** — without pasting the Webhook Callback URL and Verify
    Token into the Meta app's Configuration tab, ChatSyncs never receives incoming messages even
    though the account shows as connected.
</Warning>
