Log inStart Free Trial
Meta Tech Provider

Run a Typebot flow on WhatsApp with Coexistence

Typebot's WhatsApp channel takes a token, a WhatsApp Business Account id and a phone number id, then gives you a callback URL and a verify token. Fill the first three from the connected number, leave Typebot's optional app secret empty, and set its callback URL and verify token as the number's webhook destination.

Pro

Typebot lists WhatsApp integration as a feature of its Pro plan, not the Free or Starter plans.

Optional

Typebot checks the webhook signature only when an app secret is saved with the credentials.

Never

Typebot's wizard rejects a token whose expiration is not set to never.

20 msg/s

Fixed throughput for a number used with both the WhatsApp Business app and the Cloud API.

Which Typebot fields take values from the connected number?

Typebot's WhatsApp wizard, under the Share tab of a bot, asks for four things: an app secret, a System User Token, a WhatsApp Business Account ID and a Phone number ID.

Three of them come straight from the connection. The dashboard shows the WABA id, the phone number id and the access token for the number, and the get_api_credentials tool returns the same values if an assistant is fetching them for you. Paste them into the matching fields.

The app secret is the one to leave blank. Typebot uses it for one thing on incoming traffic: checking the X-Hub-Signature-256 header Meta adds to every delivery. For a number connected through a Tech Provider, Meta signs with the provider's app secret, which is never shared, so any value you type there makes Typebot reject every genuine message. With the field empty, Typebot skips that check and accepts the delivery.

Where do Typebot's callback URL and verify token go?

Into the number's webhook destination, not into a Meta app dashboard.

Typebot's wizard tells you to paste its Callback URL and Verify Token into the WhatsApp settings of your own Meta app. With Coexistence through EasyCoexistence there is no app of yours involved: Meta routes the number's events to whatever destination is set on the connection. So copy both values from Typebot's last step and set them as the destination, in the dashboard or with set_webhook_destination.

Meta then sends its verification GET to Typebot, Typebot answers with the challenge, and from that point every message to the number reaches the bot. Typebot's verify token is single use: it is deleted from Typebot's database the moment a verification succeeds. If you set the destination again later, generate a fresh token by running the wizard again first.

1Typebot wizardToken, WABA id and phone number id; app secret empty
2Callback URL + verify tokenCopied from Typebot's last step
3Webhook destinationSet on the connected number
4Meta verifiesTypebot echoes the challenge, delivery starts

What does the bot do with the 24 hour window?

Typebot replies to people who wrote to it, which keeps almost every message inside the customer service window. Meta opens a 24 hour window each time a customer writes, and inside it any service message type can be sent without a template. A bot that only ever answers is therefore the easy case.

The edge is a flow that waits. A Wait block, or a session that resumes after the customer has gone quiet for more than a day, will try to send a free text message outside the window, and Meta refuses it with error 131047. Typebot's session expiration timeout, 4 hours by default and settable up to 48, decides when a returning customer starts a new chat, not whether Meta accepts the message.

Because this is Coexistence, the team still sees every conversation in the WhatsApp Business app and can step in from the phone whenever the bot should not answer.

Common mistakes

  • Pasting a Meta app secret into Typebot. Deliveries are signed with the Tech Provider's secret, so Typebot rejects every message as an invalid signature.
  • Reusing an old Typebot verify token. It is deleted after one successful verification, so setting the destination again needs a fresh one from the wizard.
  • Sharing the callback URL. With the signature check off, knowing the URL is what lets a request in, so treat it like a password.
Doing this with EasyCoexistence

Connect the number at easycoexistence.com, copy its token, WABA id and phone number id into Typebot, and set Typebot's callback URL as the webhook destination. From US$ 9 per number per month, falling to US$ 1 as you add numbers, with the first 3 days free.

Frequently asked questions

Do I need my own Meta app for Typebot?

No. Typebot's guide assumes one because most people connect a number themselves. With Coexistence through a Tech Provider, the token and ids come from the connection and the webhook is routed by Meta to Typebot.

Will the team still see the bot's messages on the phone?

Yes. Messages sent through the Cloud API appear in the WhatsApp Business app on the same number, so a person can read the thread and take over.

Can Typebot and n8n both receive the same number's messages?

No. A number has one webhook destination. If both need the events, point the destination at n8n and have the workflow forward the raw payload to Typebot's callback URL.

Does Typebot store the conversations?

Typebot keeps its own session and results data, as it does on any channel. EasyCoexistence never stores message content: Meta delivers straight to the destination you set.

Keep reading

Ready to get started?

Set up WhatsApp Coexistence in minutes, not months. The app keeps working on the phone.

Start Free Trial

Verified on

Typebot on WhatsApp, with Coexistence