Integrations
Send deal stage changes to a Slack channel
After this setup, Naffes CRM posts a message to a Slack channel of your choice whenever a deal moves to another stage, with the deal name, both stages and the amount. Most problems with this connection come from three things on the Slack side, and these steps avoid them.
Before you start
- The Marketplace is available from Starter up.
- Only workspace admins can save or change credentials.
- Permission to create an app in your Slack workspace, or help from your Slack admin.
Steps
Create a Slack app with a bot token
In Slack's app dashboard, create an app, give the bot the chat:write scope and install it to your Slack workspace. Copy the bot token (it starts with xoxb-) and the Signing Secret.
Invite the bot to the channel
Open the target channel in Slack and add the app to it. A bot that is not a channel member cannot post there.
Open Slack's setup in Naffes
Under Tools → Marketplace, search for Slack, open its card and click Configure Slack.
Enter the details and save
Paste the bot token and signing secret, enter the default channel, and click Save. Saved secrets never return to the browser; the screen shows Configured and Last updated only, and leaving a field empty keeps the current value.
Test in two stages
Click Test connection to validate the token, then Send test message to post a real message to the channel. Finally, move a test deal between two stages and check the announcement arrives.
Diagnosing failures
| What you see | Likely cause | Fix |
|---|---|---|
| Test connection passes, test message fails with not_in_channel | The bot is not a member of the channel | Add the app to the channel in Slack |
| channel_not_found | Wrong channel name, or a private channel entered by name instead of ID | Enter the private channel's ID as shown in its Slack details |
| Test connection itself fails | A truncated or revoked token, or the app was removed from the Slack workspace | Copy the bot token again, paste it and save |
| Test message arrives, deals do not | No deal has changed stage; that is the only event posted | Move a deal between two stages |
| An announcement was lost during a Slack outage | This connector does not retry | For dependable delivery use an outgoing webhook |
Limits
- One default channel per workspace, and one event: a deal changing stage.
- One-way only: no slash commands, no @mentions, nothing flows back into Naffes.
- Pausing the app on the Installed tab does not stop posting; to stop it, clear the credentials on the setup page.
To send other events with signatures and retries, see setting up outgoing webhooks. For the message format and integration overview, see the Slack integration page.