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

# WhatsApp

> Connect an agent to WhatsApp so customers can message your business directly.

Let customers message your agent on WhatsApp and get answers instantly. WhatsApp runs on Twilio — the same connection that powers your SMS and voice channels.

## How It Works

When someone messages your WhatsApp business number:

1. Twilio receives the message and forwards it to your agent
2. Your agent reads it, checks your knowledge base, and writes a reply
3. The reply goes back to the customer on WhatsApp

Conversations appear alongside every other channel, so you can read the full history and step in yourself whenever you want.

## Before You Start

You need two things:

* **A Twilio integration** connected under Settings → Integrations. If you already send SMS or make calls, you're done — WhatsApp reuses that same connection.
* **A WhatsApp sender registered on your Twilio account.** WhatsApp numbers are approved by Meta, so this part happens in the Twilio Console. The next section walks through it.

> **One number, one purpose:** A phone number registered with WhatsApp can't already be in use with another WhatsApp account, and each number can power only one agent at a time.

## Step 1: Register a WhatsApp Sender in Twilio

This happens once per phone number, in the Twilio Console.

### What You'll Need

* An upgraded (paid) Twilio account
* Administrator access to your company's Meta Business portfolio — or you can create one during signup
* A phone number that isn't already registered with WhatsApp, and isn't attached to an IVR/phone menu. It must be able to receive an SMS or a voice call for verification.

### The Steps

1. In the Twilio Console, go to **Messaging → Senders → WhatsApp Senders**
2. Click **Create new sender**
3. Pick the phone number you want to use — either a Twilio number or your own — and click **Continue**
4. Click **Continue with Facebook**. A Meta signup window opens.
5. Sign in to Facebook and follow the prompts to connect your WhatsApp Business Account
6. Verify the phone number by SMS or voice call, and enter the code

Complete every step in the same browser window. Meta and Twilio exchange information as you go, and switching browsers partway through breaks the handoff.

### Choosing a Display Name

Your display name is what customers see above your messages. Meta reviews it against their display name guidelines. If your name is rejected, the number is capped at 250 business-initiated messages per 24 hours until it's fixed — so it's worth getting right the first time.

Approval is usually quick, but if Meta also needs to verify your business, that review can take several weeks depending on your region.

## Step 2: Connect the Sender to Your Agent

Once Twilio shows your sender as registered:

1. Go to **Agents** and open the agent you want to answer WhatsApp messages
2. Open the **WhatsApp** tab
3. Turn on **Enable WhatsApp Agent**
4. Pick your **Twilio Integration** from the dropdown
5. Pick your **WhatsApp Sender** from the list of numbers on that Twilio account
6. Save the agent

Selecting a sender automatically points its incoming-message webhook at your agent — there's nothing to copy or paste into Twilio. You'll see a brief "Configuring webhook" message while that happens.

If the sender list is empty, the Twilio account doesn't have an approved WhatsApp sender yet. Go back to Step 1. Use the refresh button beside the dropdown after registering one.

## Step 3: Test It

Message your WhatsApp business number from your own phone. Your agent should reply within a few seconds.

If nothing comes back, see Troubleshooting below.

## Settings

| Setting                             | What It Does                                                                                            |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------- |
| **Enable WhatsApp Agent**           | Turns the channel on or off                                                                             |
| **Twilio Integration**              | Which Twilio account the number belongs to                                                              |
| **WhatsApp Sender**                 | The number customers message                                                                            |
| **Auto-reply to incoming messages** | When off, messages are still recorded but the agent won't answer — useful if you'd rather reply by hand |
| **Custom Channel Instructions**     | Advanced. Replaces the default WhatsApp instructions, e.g. to change tone or response length            |

### Formatting

WhatsApp doesn't render Markdown, so your agent formats replies using WhatsApp's own conventions — `*bold*` and `_italic_` — and writes links as plain URLs. Messages are capped at 4,096 characters.

## The 24-Hour Reply Window

WhatsApp limits when businesses can send free-form messages. **After a customer messages you, you have 24 hours to reply freely.** The clock resets every time they send something new.

For your agent, this is rarely a problem: it answers immediately, well inside the window.

It matters for **manual replies**. If you open an old WhatsApp conversation and try to reply more than 24 hours after the customer's last message, the send will fail. This is a WhatsApp rule, not a platform limit. Sending outside that window requires a message template pre-approved by Meta, which this channel doesn't currently support.

**In practice:** reply while the conversation is fresh. If the window has closed, wait for the customer to message again — that reopens it.

## Testing Without an Approved Sender

If you want to try WhatsApp before finishing Meta approval, Twilio offers a sandbox with a shared test number.

1. Open the Try WhatsApp page in the Twilio Console and confirm the terms
2. Send `join <your-code>` from your phone to the sandbox number to connect it
3. Under **Sandbox settings → Sandbox configuration**, set **"When a message comes in"** to your webhook URL, ending in `/webhooks/twilio/whatsapp`

The sandbox is configured separately from a registered sender, so the agent's sender dropdown won't manage it — you set that webhook yourself. Sandbox sessions expire three days after joining, and only phones that have joined your sandbox can receive messages. It's for testing only; move to a registered sender for real customers.

## Viewing Conversations

WhatsApp conversations appear under **Conversations**, tagged with the WhatsApp channel. You can:

* Read the full back-and-forth
* See the customer's phone number and WhatsApp profile name
* Send a manual reply (subject to the 24-hour window above)

The agent saves the sender's name and number automatically, so repeat messages from the same person stay in one thread.

## Troubleshooting

**The sender dropdown is empty**
The Twilio account has no approved WhatsApp sender. Finish Step 1, then click refresh beside the dropdown.

**Messages arrive but the agent never replies**
Check that **Enable WhatsApp Agent** and **Auto-reply** are both on. If auto-reply is off by design, replies must be sent by hand from Conversations.

**Nothing arrives at all**
Re-select the sender in the WhatsApp tab to reconfigure its webhook. In the Twilio Console, the sender's incoming-message webhook should point at your site followed by `/webhooks/twilio/whatsapp`.

**A number is greyed out in the dropdown**
Another agent is already using it. Each WhatsApp number can serve only one agent — free it up on the other agent first.

**A manual reply failed to send**
The 24-hour window has probably closed. Wait for the customer to message again.

**Replies are cut off**
WhatsApp caps messages at 4,096 characters and longer replies are trimmed. Use Custom Channel Instructions to ask for shorter answers.

## Related Pages

* [Agents](/inbound/agents) — building and configuring agents
* [Integrations](/settings/integrations) — connecting Twilio and other services
* [Inbox](/engage/inbox) — managing conversations across channels
