Skip to main content
The WhatsApp channel puts the agent on a WhatsApp Business number. Customers message the number in WhatsApp, and the agent answers with the same knowledge, instructions, actions and handover it uses in website chat. Every conversation lands in Conversations, marked WhatsApp. It runs on Meta’s WhatsApp Cloud API, through a Meta app you own. The number, the Meta business and the app stay yours: Wiredesk holds an access token to reply with, sealed, and nothing else.

Before you start

You need:
  • A Meta business portfolio at business.facebook.com.
  • A phone number for WhatsApp that isn’t already registered in the WhatsApp or WhatsApp Business app. To use one that is, delete that WhatsApp account first. Meta’s free test number works for trying it out, but it only messages up to five numbers you list.
  • An approved display name for the number, which Meta reviews when you add it.

Set it up in Meta

1

Create an app

At developers.facebook.com/apps, click Create app. Choose the Business type (or the Connect with customers through WhatsApp use case) and attach your business portfolio.
2

Add WhatsApp to the app

In the app’s dashboard, add the WhatsApp product. Meta creates a WhatsApp Business Account and a test number. To use your own number, open WhatsApp → API Setup, click Add phone number, and verify it by SMS or call.
3

Copy the two IDs

On WhatsApp → API Setup, under the number you’ll send from, copy the Phone number ID and the WhatsApp Business Account ID. They are long numbers, not the phone number itself.
4

Create a system user and a permanent token

The token on the API Setup page expires within a day, so make a permanent one:
  1. In Business settings → Users → System users, click Add and create a system user with the Admin role.
  2. Click Assign assets. Give it your app with full control, and your WhatsApp account with full control.
  3. Click Generate new token, pick your app, set expiry to Never, and tick whatsapp_business_messaging and whatsapp_business_management.
  4. Copy the token. Meta shows it once.
5

Copy the app secret

In the app, open App settings → Basic and click Show next to App secret. It is 32 letters and digits.

Connect it in Wiredesk

1

Paste the four values

Open Agents → your agent → Channels → WhatsApp. Paste the Phone number ID, WhatsApp Business Account ID, Access token and App secret, and click Connect.Wiredesk checks them with Meta before saving anything: that the token works, that the number is in that account, and that the app secret belongs to the token’s app. It also subscribes your app to the account’s webhooks. If something is wrong, the form shows what Meta said. Connecting switches Answer WhatsApp messages on.
2

Point Meta's webhook at Wiredesk

The Setup card now shows a Callback URL and a Verify token, each with a copy button. In your Meta app, open WhatsApp → Configuration, click Edit under Webhook, paste both, and click Verify and save.
3

Subscribe to messages

Still on WhatsApp → Configuration, under Webhook fields, click Manage and subscribe to messages. Without it, Meta sends Wiredesk nothing.
4

Send a test

Message the number from your own phone. The agent answers within seconds. The Setup card shows when Meta checked the webhook and when the last message arrived.
Every agent uses the same callback URL, so one Meta app can serve several agents, each with its own number. A number can only be connected to one agent at a time. Each agent has its own verify token; Meta needs any one of them to save the webhook.
While your Meta app is in development mode, only people with a role on the app (and the numbers you list for the test number) can reach it. Switch the app to Live in the app dashboard before customers write in.

How the agent answers

  • What it reads: text messages, and the label of a button or list option the customer taps. Photos, voice notes, videos, documents, stickers, locations and contact cards aren’t read yet: the conversation records what arrived (with the caption, if any), and the agent replies “Sorry, I can only read text messages here. Could you type that out for me?”. That reply isn’t billed.
  • How it writes: short, like a text message. Bold shows as WhatsApp bold, lists stay lists, and links are written out in full, which WhatsApp makes tappable.
  • Who it is: the customer’s number. Someone who messages on WhatsApp and also calls your phone line is one contact, and their WhatsApp profile name is saved as their name if you don’t have one yet.
  • Conversations: messages within 24 hours of each other are one conversation. After 24 quiet hours, the next message starts a new one.
  • Actions: the agent uses the actions available on Chat. WhatsApp is a chat, so an action limited to chat applies here too.

The 24-hour window

WhatsApp lets a business send free-form messages only within 24 hours of the customer’s last message. After that, only pre-approved message templates go through, which Wiredesk doesn’t send yet. The agent is always inside the window: it answers a message that just arrived. Your team’s replies can come later, so the conversation page tells you where you stand. Under Reply as owner it says until when WhatsApp will take a reply. Once the window has closed, it says so, and a reply you send is refused with “WhatsApp only delivers a reply within 24 hours of the customer’s last message, and that has passed. Nothing was sent.” The window opens again when the customer writes.

When a person needs to step in

Handover works as it does for website chat. See A person in chat & email, on Handoff.
  • The agent flags the conversation and you’re notified.
  • Whoever replies from the conversation page takes it over. The reply goes out on WhatsApp from the agent’s number, and the agent stays quiet until the conversation is handed back, which happens after half an hour of silence from that person.
  • If nobody replies within about ten minutes, the agent tells the customer on WhatsApp that nobody is free, and carries on.

When the agent doesn’t reply

  • WhatsApp is switched off. Messages are ignored and not saved. The number stays connected.
  • A person has taken over. The message is saved, and your reply is the next one.
  • Your spend cap is reached. Messages are saved but not answered until the month rolls over or you raise the cap. See spend cap.
  • One number is writing very fast. The agent sends at most 30 replies an hour to one number. Later messages are saved but not answered until the hour has passed.
  • The conversation is past the agent’s message limit. The customer gets one fixed reply, and later messages are saved without a reply.
  • The same message arrives twice. Meta resends a message when it isn’t sure it arrived. The repeat is ignored.

When something goes wrong

If Meta refuses a reply, the reason appears in red on Channels → WhatsApp: an expired or revoked access token, a customer outside the 24-hour window, or a test number messaging someone not on its list. It clears the next time a message goes through. To fix a token, open Replace credentials on the same card and paste a new one; the callback URL and verify token stay the same. Disconnect deletes the access token and app secret from Wiredesk. Messages to the number stop being answered, and past conversations stay. Remove the webhook in your Meta app too.

What it costs

Each agent reply on WhatsApp counts as one reply of usage, the same as chat. Replies your team writes don’t count. Meta doesn’t charge for replies inside the 24-hour window; anything Meta does bill goes to your Meta account. See plans and limits.