Slack Channel
Connect Slack as an inbound channel for CallMerlin.
Slack Channel
The Slack channel lets your employees chat with Merlin via Slack. Type @Merlin followed by a question in a Slack channel or send a DM, and Merlin replies with data from your connected services.
Availability
The Slack channel is available from the Professional plan onwards.
How it works
- An employee types
@Merlin how many open invoices do I have?in a Slack channel - Slack sends the message to CallMerlin
- Within 5-15 seconds Merlin replies in a thread
- Merlin has access to the same tools as webchat, phone and desktop
Requirements
- A Professional plan or higher
- A Slack workspace where you can install apps
- Workspace owner or admin permissions in Slack
Setup
Step 1: Create a Slack App
- Go to api.slack.com/apps and click Create New App
- Choose From scratch
- Name the app (e.g.
Merlin) and select your workspace - Go to OAuth & Permissions and add these Bot Token Scopes:
app_mentions:readchat:writeim:readim:writeim:historychannels:historyusers:read
- Click Install to Workspace and authorize the app
- Copy the Bot User OAuth Token (starts with
xoxb-)
Step 2: Set up Event Subscriptions
- Go to Event Subscriptions in your Slack App settings
- Toggle Enable Events to On
- Paste the Request URL found in the CallMerlin dashboard under Slack channel
- Wait for Slack to verify the URL (green checkmark)
- Add these events under Subscribe to bot events:
app_mentionmessage.im
- Click Save Changes
Step 3: Configure the dashboard
- Go to callmerlin.app → Dashboard → Slack channel
- Enter the Bot Token (from step 1)
- Enter the Signing Secret (found under Basic Information → App Credentials)
- Click Test connection to verify everything works
- Choose a default PIN (optional, for employees without their own PIN)
- Toggle ON
- Click Save
Step 4: Send your first message
- Go to Slack
- Invite the bot to a channel:
/invite @Merlin - Type
@Merlin hello - Merlin replies in a thread
User mapping
Each Slack user is linked to a PIN code. The PIN determines which capabilities and template Merlin uses.
Assign a PIN
- Go to Slack channel in the dashboard
- Find the employee in the User mappings table
- Select a PIN from the dropdown
- The link is active immediately
Unlink a PIN
Click Unlink next to an employee to remove the PIN mapping. The employee will fall back to the default PIN (if configured).
Default PIN
Set a default PIN for Slack users who have not been individually linked. New employees get access immediately without manual configuration.
Tip: Create a PIN with limited read-only permissions as the default. Assign broader permissions via individual mappings.
Channel filter
Restrict which Slack channels Merlin responds in. Useful if you don't want Merlin in all public channels.
- Leave the field empty: Merlin responds in all channels
- Enter specific channel IDs: Merlin responds only there
Context and follow-up questions
Merlin remembers conversation context for 15 minutes. Within this window you can ask follow-up questions in the same thread:
@Merlin how many invoices do I have?→ Merlin replies with the countand how many are overdue?→ Merlin understands the context
After 15 minutes a new conversation starts without previous context.
Billing
Slack messages are billed as chat sessions:
- First message = 0.5 minutes
- Follow-ups within 15 minutes in the same thread = free (same session)
- After 15 minutes = new session of 0.5 minutes
This is the same rate as webchat sessions.
Rate limits
To prevent abuse, hourly limits apply:
| Limit | Value |
|---|---|
| Per user | 20 messages per hour |
| Per channel | 50 messages per hour |
When a limit is reached, Merlin tells you how many minutes to wait.
What can you ask?
Everything you can ask Merlin via webchat, phone or desktop also works in Slack. Examples:
@Merlin how many open invoices do I have?@Merlin create a draft invoice for Baker Ltd, $2500 excl. VAT@Merlin what's on my calendar tomorrow?@Merlin how does our return policy work?
Limitations
- Merlin cannot send files or use Slack Block Kit cards
- Replies are limited to 3000 characters
- Threading: Merlin always replies in a thread (DMs are an exception)
Troubleshooting
Merlin doesn't respond
- Check the toggle is ON in the dashboard
- Check the Bot Token is correct
- Check the Signing Secret is correct
- Check Event Subscriptions are active in your Slack App
- Check Merlin is invited to the channel (
/invite @Merlin) - Check the user has a PIN (or a default PIN is set)
"Link your Slack account to a PIN"
The employee has no PIN linked and no default PIN is set. Go to the dashboard and assign a PIN, or set a default PIN.
"Monthly budget reached"
The account has a budget cap configured and it has been reached. Increase the cap under Billing in the dashboard.