---
sidebarTitle: Overview
title: WhatsApp
---

## Preview

You can preview and test your bot by clicking on the Preview button in the editor and change the runtime to "WhatsApp".

<Frame>
  <img
    src="/images/whatsapp/preview-dropdown.png"
    alt="WhatsApp preview dropdown"
  />
</Frame>

## Limitations

WhatsApp environment have some limitations that you need to keep in mind when building the bot:

- GIF and SVG image files are not supported. They won't be displayed.
- Only .mp4 videos are supported (See [Supported Media Types](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media#supported-media-types) for more info).
- Buttons content can't be longer than 20 characters. If the content is longer, it will be truncated.
- WhatsApp only allows to display 3 buttons at a time. So we work around that by adding "..." messages to display more buttons.
- Incompatible blocks, if present, they will be skipped:

  - Payment input block
  - Chatwoot block
  - Script or Set Variable block with `Execute on client` option enabled
  - Google Analytics block
  - Meta Pixel blocks
  - Cal.com block

## Contact information

You can automatically assign contact name and phone number to a variable in your bot using a Set variable block with the dedicated system values:

<Frame>
  <img
    src="/images/whatsapp/contact-var.png"
    alt="WhatsApp contact system variables"
  />
</Frame>

## Deploy on your phone number

Head over to the Share tab of your bot and click on the WhatsApp button to get the integration instructions of your bot.

### Configuration

You can customize how your bot behaves on WhatsApp in the `Configure integration` section

<Frame>
  <img
    src="/images/whatsapp/configure-integration.png"
    alt="WhatsApp configure integration"
  />
</Frame>

**Session expiration timeout**: A number from 0 to 48 which is the number of hours after which the session will expire. If the user doesn't interact with the bot for more than the timeout, the session will expire and if user sends a new message, it will start a new chat. The default is 4 hours.

**Start bot condition**: A condition that will be evaluated when a user starts a conversation with your bot. If the condition is not met, the bot will not be triggered.

## Collect position

You can ask for the user's location with a basic [Text input block](../../editor/blocks/inputs/text). It will be saved as a variable with the latitude and longitude with the following format: `<LAT>, <LONG>`.

<Tabs>
  <Tab title="Flow">
    <Frame style={{ maxWidth: '400px' }}>
      <img
        src="/images/whatsapp/position-flow.jpg"
        alt="Position collection flow"
        className="rounded-lg"
      />
    </Frame>
  </Tab>
  <Tab title="Bot">
    <Frame style={{ maxWidth: '400px' }}>
      <img
        src="/images/whatsapp/position-bot.png"
        alt="Position collection bot"
        className="rounded-lg"
      />
    </Frame>
  </Tab>
</Tabs>

## FAQ

<AccordionGroup>
  <Accordion title="How many WhatsApp numbers can I use?">
    You can integrate as many numbers as you'd like. Keep in mind that Typebot does not provide those numbers. We work as a "Bring your own Meta application" and we give you clear instructions on [how to set up your Meta app](./create-meta-app).
  </Accordion>
  <Accordion title="Can I link multiple bots to the same WhatsApp number?">
    Yes, you can. You will have to add a "Start bot condition" to each of your bots to make sure that the right bot is triggered when a user starts a conversation.
  </Accordion>
  <Accordion title="Does the integration with WhatsApp requires any paid API?">
    You integrate your typebots with your own WhatsApp Business Platform which is the official service from Meta. At the moment, the first 1,000 Service conversations each month are free. For more information, refer to <a href="https://developers.facebook.com/docs/whatsapp/cloud-api/get-started#pricing---payment-methods" target="_blank">their documentation</a>
  </Accordion>
  <Accordion title="I receive the preview initial message but then the bot doesn't respond">
    This can be due to a mismatch between the WhatsApp number displayed in your WhatsApp application profile settings and the number you have typed in Typebot.

    For example, some Brazilians have 2 numbers, 1 with 8 digits, the other with 9 digits. In Typebot, you need to type the number that is displayed in your WhatsApp application profile settings to make sure the bot works properly.

  </Accordion>
</AccordionGroup>
