WhatsApp: customer conversations in the CRM

How to connect your own WhatsApp number via the official WhatsApp Cloud API — Meta app, permanent token, webhook — and reply to customers from the customer card (Web Plus).

Customers write to your WhatsApp number — messages appear in the “WhatsApp” tab of the customer card, and you reply right there. A new number that isn't among your customers becomes a customer card automatically (the name comes from the WhatsApp profile). Order status updates can go to the customer on WhatsApp too. Available on the Web Plus plan.

The connection uses Meta's official WhatsApp Cloud API with your own app and your own number. We are not a middleman: you create everything in your Meta account and paste the details into our settings. Setup takes 20–40 minutes, once.

Before you start: important

  • You pay Meta for conversations, at WhatsApp rates. Replies within 24 hours of the customer's message are free; template messages you start yourself (for example, a status update a few days later) are charged by Meta. Paid templates need a payment method in WhatsApp Manager. We don't charge for messaging.
  • A number connected to the Cloud API can't be used at the same time in the regular WhatsApp or WhatsApp Business app on a phone. Use a separate number, or be ready to move your current one (it must be deleted from the app first; chat history from the phone is not transferred).
  • The number must be able to receive an SMS or a call for the verification code.
  • You need a Facebook account and a Meta Business portfolio.

Step 1. Create a Meta app

  1. Go to developers.facebook.com, log in and click Create app.
  2. Use case — Other → Business (or “Connect with customers through WhatsApp” if it's in the list).
  3. Enter a name (e.g. “My workshop CRM”) and pick your Meta Business portfolio (Meta offers to create one if you don't have it).

Step 2. Add the WhatsApp product and a number

  1. In the app, under Add products, find WhatsApp and click Set up. Meta creates a WhatsApp Business Account (WABA) and gives you a free test number — handy for checking everything.
  2. To use your own number: WhatsApp → API Setup → Add phone number, enter the business display name and the number, and verify it with the SMS or call code.
  3. On WhatsApp → API Setup, copy two values:
    • Phone Number ID — the number's identifier (not the phone number itself!);
    • WhatsApp Business Account ID.

Step 3. Create a permanent token (System User)

The temporary token on the API Setup page lasts 24 hours — not suitable for a CRM. You need a permanent one:

  1. Open business.facebook.com → Settings → Users → System users.
  2. Add → a name (e.g. “crm”), role Admin.
  3. Assign assets: choose Apps → your app → full control; then WhatsApp accounts → your account → full control.
  4. Generate new token: your app, expiration Never, permissions whatsapp_business_messaging and whatsapp_business_management.
  5. Copy the token right away — Meta shows it only once.

Step 4. Copy the App Secret

In your Meta app: App settings → Basic → App Secret → Show. We use it to verify that incoming messages really come from Meta.

Step 5. Paste the details into our settings

  1. Open “Settings → Integrations → WhatsApp”.
  2. Paste the Phone Number ID, WhatsApp Business Account ID, permanent token and App Secret, then click Connect. We check the number with Meta right away and show it with your business name.
  3. The token and App Secret are stored encrypted and never shown again; change them with “Edit details”.

Step 6. Set up the webhook in Meta

After connecting, the card shows a Callback URL and a Verify Token — unique to your workshop.

  1. In the Meta app: WhatsApp → Configuration → Webhook → Edit.
  2. Paste the Callback URL and Verify Token from our card and click Verify and save.
  3. Below, under Webhook fields, click Manage and subscribe to the messages field.
  4. While the app is in Development mode, messages only arrive from numbers added as recipients on the API Setup page. To receive messages from all customers, switch the app to Live (Meta asks for a privacy policy link).

Step 7. Check it

  1. Send a message to the connected number from another phone.
  2. The connection card shows “Last event from Meta”, and “Customers” gets a customer with that number and the message in the “WhatsApp” tab.
  3. Reply from the card — the message arrives on WhatsApp, and the feed shows “delivered” / “read” ticks.

The 24-hour rule and templates

WhatsApp lets a business send free-form text only within 24 hours of the customer's last message. The card shows it: “You can reply with free text until …” or “The 24-hour window is closed”.

Outside the window you can only send a template approved by Meta. Templates are created in WhatsApp Manager → Message templates; approval usually takes from minutes to a day. We support templates with text variables in the message body ({{1}}, {{2}}…); templates with an image header or variables in links can't be sent yet.

Order status notifications

When you change the status of an order for a customer who wrote to you on WhatsApp in the last 24 hours, they get “Order status “…”: …” in the language chosen in the connection card. If the window is closed, the update is sent only if a status template is selected in the card: variable {{1}} — order name, {{2}} — status, {{3}} — tracking number. Example Utility template text: “Your order {{1}} is now: {{2}}.” No template selected — nothing is sent outside the window.

A message to a customer and a broadcast from the customer list also go to WhatsApp — but only to customers with an open 24-hour window; the rest are skipped and we show how many.

FAQ

Can I connect a number that's currently in WhatsApp Business on my phone? Yes, but you'll have to delete it from the app: a number works either in the app or in the Cloud API.

Can team members see conversations? Everyone with access to customers can read; those who can edit customers can reply. The connection is set up by the owner and members with the integrations permission.

Do photos and files come through? Yes — the feed shows a “Photo” / “File” label with the caption; open the file itself in WhatsApp for now.

What if I'm over the free plan's customer limit? The message is kept and appears in the customer card as soon as you create one with that phone number.

Troubleshooting

  • “Invalid OAuth access token” when connecting — the token is temporary or lacks permissions; create a permanent System User token (step 3).
  • Meta rejects the Callback URL (“The callback URL or verify token couldn't be validated”) — make sure the Verify Token was copied in full, without spaces.
  • Messages don't arrive — subscribe to the messages field (step 6) and check Live mode; if “Last event from Meta” never appears, contact support.
  • “The 24-hour window is closed” when replying — send a template.

Didn't find an answer?

Message support — our AI assistant replies first, and a human joins if needed.

Contact support