Skip to main content
One-time setup: enter your Intercom credentials, pick the admin the AI replies as, paste a webhook URL into Intercom, and choose how handoffs are routed.
This page covers the shared Intercom connection. Once connected, see the Web or Email channel pages for per-channel verification steps.

Before you start

You need an Intercom workspace on a plan that includes API access. You also need admin-level permissions to generate access tokens in the Developer Hub.
Only organization admins can connect integrations. Confirm your role at Settings → Organization.

Setup

1

Generate an access token

In Intercom, go to Settings → Integrations → Developer Hub (or create an app in the Developer Hub). Generate an access token with full conversation and contact permissions.
Store the token securely — Intercom only shows it once. If you lose it, revoke and regenerate.
2

Enter credentials in OpenCX

Open Settings → Integrations in your OpenCX dashboard. Select Intercom and enter:
FieldValue
Access tokenThe token you generated in the previous step.
Workspace IDYour Intercom workspace identifier, visible in your Intercom URL or app settings.
Click Save. OpenCX validates the credentials by listing your Intercom conversations. If validation fails, double-check the token has not been revoked and your Intercom plan includes API access.
3

Select the default admin

After credentials are saved, OpenCX loads your Intercom admins. Pick the admin account that represents the AI agent — this is who customers see replies from.
Every AI-generated response is posted as this admin. Choose a dedicated bot account (e.g. “AI Agent”) rather than a real team member to avoid confusion.
4

Copy the webhook URL

OpenCX displays a webhook URL after connection. Copy it and paste it into your Intercom app’s webhook settings in the Developer Hub. Subscribe to these topics:
  • conversation.user.created
  • conversation.user.replied
  • conversation.admin.replied
  • conversation.admin.assigned
  • conversation.admin.closed
Without the webhook, OpenCX cannot receive conversation events. The AI will not respond to any messages until the webhook is active.
5

Configure handoff assignment

Choose what happens when the AI hands off a conversation:
  • Unassigned (default) — removes the AI admin and leaves the conversation unassigned for your team to pick up.
  • Specific admin — routes to a named admin on handoff.
  • Specific team — routes to an Intercom team on handoff.
6

Send a test message

Open your Intercom Messenger and send a test message. The AI should reply within a few seconds. Then say “I want to talk to a human” — you should see a handoff note appear as an internal note and the conversation unassigned (or reassigned per your config).
For channel-specific verification, see Web or Email.

Settings reference

All settings are configured at Settings → Integrations → Intercom.
SettingPurpose
Default adminThe Intercom admin the AI replies as. Required.
Default teamFallback team for routing. Optional.
Handoff assignmentWhere conversations go on handoff: unassigned, specific admin, or specific team.
Ignore first messageSkip AI processing on the opening message. Useful when Intercom bots handle the greeting.
Process on assignmentWait for the conversation to be assigned to the AI admin before processing, instead of processing on the first message.
Full conversation syncStore all conversation messages in OpenCX even when the conversation is not assigned to AI. For reporting and supervision.
Forward unsupported attachmentsPass PDF, video, and audio attachments to the AI as placeholder text so it can acknowledge them.
Send citations as notePost an internal note linking to the AI’s source citations in OpenCX after each reply.
Company data syncSync custom attributes from the contact’s Intercom company to their OpenCX profile. Options: disabled, first company only, all companies.
Custom attribute delaySeconds to wait before re-fetching conversation custom attributes after creation. Handles Intercom race conditions where attributes are set by workflows after the conversation is created. Max 10 seconds.

Disconnecting

To remove the Intercom integration, open Settings → Integrations → Intercom and click Disconnect. This deletes stored credentials and stops webhook processing. Existing OpenCX sessions are preserved but no longer receive updates from Intercom.

Conversations

How messages flow, handoff steps, and tags.

Assist Mode

AI-drafted internal notes on agent-owned conversations.

Channels

Per-channel implementation details for Web and Email.

Troubleshooting

Credentials failing, webhook silent, AI not replying.