Connect Messenger

About 10 minutesNo code neededUpdated July 2026

After this guide, every message that lands in your Facebook Page's Messenger inbox gets answered by your agent — automatically, and recorded in your logs and analytics. Setup takes about two minutes through Facebook's own sign-in window.

Coming soon:
The Messenger channel is pending Meta app review and is not yet available in the dashboard. This page documents how it will work once it launches.
Before you start, make sure you have:
A Qalyb agent — if you don't have one yet, follow Create your first agent (5 minutes)
A Facebook Page you manage, and the Facebook account that administers it
A free channel slot within your plan's limits
Note:
Messenger needs an admin role and a Pro or Ultra plan — it's not included on Free or Starter. Messenger and Instagram come as a pair: unlocking one unlocks both.
Open Deploy and start a connection

In the dashboard, click Deploy in the left menu, then Connect a channel. Under Messaging, choose Messenger. The right side shows a short How it works guide.

app.qalyb.ai/channels
Screenshot: the Messenger step inside the Connect a channel dialog, showing the How it works guide, Channel Name and Agent fields, and the blue Connect with Messenger button
The Messenger step in the Connect a channel dialog.
Name it and pick your agent

Give the channel a name (this is just how it appears in your dashboard) and choose the agent that should answer. If you came here from an agent's page, it's already picked for you.

Sign in with Facebook

Click the blue Connect with Messenger button. Facebook's sign-in window opens — log in with the account that administers your Page and approve the requested permissions. Qalyb finds your Page and switches on message delivery for you. Qalyb never sees your password.

Send a test message

Open your Page in Messenger and send it a direct message. Your agent should reply within a few seconds.

You're live:
the conversation appears on the channel's page, and in your logs and analytics.
Heads up:
if the Facebook account you sign in with manages more than one Page, the connection stops with an error — picking between Pages isn't supported yet. Contact support and we'll connect the right one. And if the connection finishes but shows an error status saying message delivery could not be enabled, just run the connect flow again on that channel.
Note:
if the Connect with Messenger button is disabled and says connections aren't enabled on your account yet, contact support — we'll switch them on for you.

Reading the conversations

Connected channels appear on the Deploy page with a blue Messenger badge, the agent's name, and a status badge. Click the channel to open it:

  • The Conversations tab shows each chat as a familiar thread — agent bubbles and customer bubbles, with Arabic shown right-to-left.
  • The Configuration tab shows the connected Facebook Page, the channel's status, and lets you hand the channel to a different agent — the change saves automatically.
app.qalyb.ai/channels/ch_abc123
The Configuration tab shows the connected Facebook Page and lets you reassign the agent.
Heads up:
switching the agent on a channel ends all open conversations — the next message a customer sends starts fresh with the new agent.

Replies are text-only for now

On Messenger your agent replies with text only — it can't send photos, voice notes, or message templates yet (those are WhatsApp features). Incoming messages are still answered as normal; only the reply format is limited.

For developers

The dashboard flow is the supported path for connecting Messenger. Under the hood it uses Facebook Login for Business: the popup returns an OAuth code, which Qalyb exchanges for a long-lived token before resolving your Page and subscribing the webhook. The finalize call the dashboard makes looks like this:

curl · bash
curl -X POST https://api.qalyb.ai/channels/messenger/connect \
  -H "Authorization: Bearer sk-live-..." \
  -H "Content-Type: application/json" \
  -d '{
    "agentId": "agt_abc123",
    "name": "Acme Page — Messenger",
    "code": "AQB...the-oauth-code-from-the-popup"
  }'
EndpointPurpose
GET /channels/facebook/connect-configReturns the Meta app id and Messenger login config id used to open the popup.
POST /channels/messenger/connectFinalizes the connection from the popup's OAuth code (agentId, name, code).
GET/POST /channels/webhook/metaThe shared Meta webhook for inbound messages (Messenger payloads route by page_id).
GET /channels/:channelIdFetch a single channel's config.
GET /channels/:channelId/sessionsList the channel's conversation sessions.
PATCH /channels/:channelIdUpdate the channel (e.g. reassign the agent; resets open sessions).
DELETE /channels/:channelIdDelete the channel and stop inbound delivery.
Was this guide helpful?