Business messaging platform for teams with channels, direct messages, file sharing, and extensive app integrations.
Full ReviewThe Salesforce and Slack integration — with Salesforce as the platform and Slack as the tool — focuses on extending your CRM workflows into Slack to improve sales team collaboration and productivity. Since Salesforce acquired Slack in 2021, the integration has become deeply native, with Slack channels linking directly to Salesforce records and CRM data flowing seamlessly into team conversations.
This setup guide approaches the integration from the Salesforce administrator's perspective, showing how to configure Slack as a collaboration tool layered on top of your Salesforce instance. The key use case is deal rooms — dedicated Slack channels linked to Salesforce opportunities where cross-functional teams collaborate on closing deals, with the channel automatically receiving CRM updates and allowing members to interact with Salesforce data without leaving Slack.
The result is an acceleration of your sales process. Deal discussions, stakeholder updates, and CRM actions all happen in one place. Account executives, sales engineers, legal, and finance can all see deal progress in the linked Slack channel, while Salesforce remains the system of record for pipeline and forecasting data.
In Salesforce, go to Setup and type "Slack" in the Quick Find box. Click Slack Setup. Click the toggle to enable the Salesforce-Slack integration. Follow the guided setup wizard which walks you through connecting your Salesforce org to your Slack workspace. You will be asked to authenticate with Slack and select the workspace to connect.
The setup wizard will prompt you to install the Salesforce app in your Slack workspace. Click Install to Slack and authorize the app. This installs the Salesforce bot, slash commands, and message shortcuts in your Slack workspace. If your Slack workspace requires admin approval for apps, submit the request and wait for approval.
In Salesforce Setup, go to Permission Sets and find the Slack Standard User permission set (installed with the Slack package). Assign this permission set to all users who should have access to Salesforce data from Slack. You can also create custom permission sets to limit which Salesforce objects and fields are accessible through Slack.
Go to Setup > Slack Setup > Slack Alerts. Create alert rules that post Salesforce record changes to Slack. Click New Alert, select the object (e.g., Opportunity), define the field change that triggers the alert (e.g., Stage changes to "Closed Won"), and select the target Slack channel. Customize the alert message to include relevant record fields like opportunity name, amount, and close date.
On a Salesforce Opportunity record, find the Slack component (add it to the page layout via Lightning App Builder if not already present). Click Create Channel to create a new Slack channel linked to the opportunity. Salesforce auto-suggests a channel name based on the opportunity name. Add relevant team members to the channel. All updates to the opportunity will post to this channel automatically.
When users view Salesforce records from Slack, they see a compact card view. Customize what fields appear in this view by going to Setup > Object Manager > [Object] > Compact Layouts. Create or edit the compact layout to show the most important fields — for Opportunities, show Stage, Amount, Close Date, and Account Name. Assign this compact layout as the primary layout.
Create a test opportunity in Salesforce. Link a Slack channel to it. Move the opportunity through pipeline stages and verify alerts post to the linked channel. In Slack, use the /salesforce search command to look up the opportunity and verify the compact layout shows the correct fields. Test updating a record field from Slack to confirm two-way interaction works.
Alert rules support Salesforce's standard filter logic, including formula-based conditions. You can configure multiple alerts per object with different target channels. Channel-to-record linking supports all standard and custom objects. Slack message formatting can include record fields using merge syntax. You can also configure automatic channel archiving when an opportunity is closed, keeping your Slack workspace organized.
| Data | Direction | Frequency |
|---|---|---|
| Record change alerts | Salesforce to Slack | Real-time |
| Record views (search and link unfurling) | Salesforce to Slack | On-demand |
| Record updates via Slack actions | Slack to Salesforce | On-demand |
| Channel-to-record associations | Two-way | Real-time |
| User identity mapping | Two-way | On authentication |
Verify the user has the Slack Standard User permission set assigned in Salesforce. Each user must also individually authenticate by typing /salesforce connect in Slack. The integration respects Salesforce's sharing model — users can only see records they have access to in Salesforce.
Check the alert configuration under Setup > Slack Alerts. Verify the filter conditions match the record changes you expect. Also ensure the Salesforce bot is a member of the target Slack channel. If the channel is private, the bot must be explicitly invited.
Ensure the Slack component is added to the Opportunity page layout in Lightning App Builder. If it is not visible, an admin needs to edit the page and add the Slack component. Also verify the user creating the channel has both the Salesforce permission set and Slack workspace permissions to create channels.
Leverage Salesforce Flows with Slack actions to build automated deal management workflows. For example, create a Flow that triggers when an opportunity reaches "Negotiation" stage: it automatically creates a Slack channel, invites the account team, posts a summary of the deal, and creates a task for the legal team. You can also use Salesforce's Slack Bolt SDK to build custom Slack apps that surface Salesforce reports, dashboards, and Einstein AI predictions directly in Slack through interactive modals and home tabs.