How do you connect WhatsApp to an assistant with Meta's Cloud API?

You create a Meta developer app, add the WhatsApp product, point its webhook at the system that writes the replies, and subscribe the app to the WhatsApp Business Account. Incoming messages then reach your system, and the assistant answers through the Cloud API within the 24-hour customer service window. The business keeps the number, the Meta account and the conversation data.

Most first setups stall on configuration rather than on the assistant: an app that was never subscribed to the business account, a phone number in the wrong format, or a test number that cannot deliver to some countries.

Updated Sep 28, 2026

How it works

  1. Create the Meta app

    In the Meta developer dashboard, create a Business app and add the WhatsApp product. Meta provides a free test number to build with, and you add up to five recipient numbers that may receive test replies.

  2. Connect the webhook

    Set the callback URL and a verify token, then subscribe to the messages field. From then on, every message a customer sends is posted to your system.

  3. Subscribe the app to the business account

    Call POST /{WABA-ID}/subscribed_apps with your app's token. Without this step the webhook is verified but receives nothing, and nothing in the dashboard says why.

  4. Write the replies

    Your system reads the message, answers only from the business's own facts (hours, prices, services, booking rules) and sends the reply with POST /{phone-number-id}/messages. Anything it cannot answer, or that needs judgement, goes to a person with a short summary.

  5. Replace the temporary token

    The access token shown in the dashboard lasts about a day. For anything that must keep running, create a system user in Business Settings and generate a permanent token with the WhatsApp messaging and management permissions.

  6. Move to the real number and add billing

    Register the business's own number, add a payment method in Billing Hub, and complete Meta Business verification when Meta asks for it. Verification is what raises how many people the business can message first each day.

What it costs to run

Meta charges per delivered message; messages customers send you are free. The model that writes the replies is billed separately by its provider. Meta may change rates up to once a quarter, so check the rate card for your recipients' country.

ItemList priceSource
Messages customers send to the businessNo chargeMeta for Developers, Pricing on the WhatsApp Business Platform (updated 10 Sep 2026)Read on Sep 28, 2026
Replies inside the 24-hour customer service window (service messages)Free until 30 Sep 2026; charged per delivered message from 1 Oct 2026, at the same rate as utility messages in that countryMeta for Developers, Upcoming pricing updates for Meta Business Agent, service and utility messages (updated 25 Aug 2026)Read on Sep 28, 2026
Utility or service message to a user in BrazilUS$0.0068 per delivered message (Meta rate as of 1 Jul 2026)Meta for Developers, Upcoming pricing updates for Meta Business Agent, service and utility messages (updated 25 Aug 2026)Read on Sep 28, 2026
Template messages the business sends first (marketing, utility, authentication)Per delivered message; the rate depends on the category and the recipient's countryMeta for Developers, Pricing on the WhatsApp Business Platform (updated 10 Sep 2026)Read on Sep 28, 2026
Messages within 72 hours of a click-to-WhatsApp adFree (the free entry point window)Meta for Developers, Pricing on the WhatsApp Business Platform (updated 10 Sep 2026)Read on Sep 28, 2026
The model that writes the repliesBilled by the model provider by usage, separately from Meta's delivery chargeMeta for Developers, Upcoming pricing updates for Meta Business Agent, service and utility messages (updated 25 Aug 2026)Read on Sep 28, 2026

Third-party list prices, read on the date shown. They are not Betterlane prices.

What we learned building it

From our own fictional demo clinic, built on a Meta test number in September 2026. Not a client system.

The webhook was verified, but nothing arrived
The test business account was subscribed only to Meta's own sample app. One call to /subscribed_apps with our app fixed it.
Error 131030: recipient not in the allowed list
Brazilian mobile numbers reached the webhook without the ninth digit (12 digits), while the allowed list stored them with it (13 digits). Replies failed until the reply step added the 9 back.
Error 130497: messaging blocked for a country
A test number on an unverified business could not deliver to a Brazilian number at all. The assistant had written every reply; Meta refused to deliver them. Test with a recipient in another country, or use the business's verified account and real number.
The token expired overnight
The dashboard token lasts about a day. A permanent system-user token is the first thing to set up for anything that must keep answering.

When it is not worth it

  • If the business receives a handful of messages a week, a person answering from the WhatsApp Business app is simpler and needs no setup.
  • If the answers depend on information nobody has written down (prices, rules, availability), write it down first: an assistant can only answer from what it is given.
  • If the goal is to message people who never wrote to the business, that is opt-in template messaging, a different project from an assistant that answers.

Questions

Do I need a Business Solution Provider (BSP)?

No. The Cloud API is hosted by Meta and can be used directly by the business. A provider can help with billing and support, but it is not required.

What changes on 1 October 2026?

Meta starts charging per delivered message for service messages, the replies sent inside the 24-hour window, which had been free since November 2024. Meta says it stops delivering service messages for accounts with no payment method on file by 30 September 2026.

Can the assistant answer health, legal or payment questions?

It should not decide them. A careful setup answers only from facts the business approved and passes anything clinical, legal, financial or unusual to a person with a summary.

Who owns the number and the conversations?

The business. The app, the WhatsApp Business Account, the number and the message history should all sit in the business's own Meta account, not the builder's.

Want an assistant like this on your own number and Meta account?

See the service: WhatsApp assistantsLet’s talk

All guides