Send Slack message posts a message to a channel of your Slack workspace when a flow reaches it. It’s the action for telling your own team something happened: a high-value install, a cancellation worth a call, a usage threshold crossed. The merchant never sees it.
The other actions a flow can take are Send email and Populate custom field.
Connecting Slack
The action posts through the app’s Slack workspace connection, made once in app settings: a standard Slack authorization screen, no token to paste. One workspace per app, and the same workspace can serve any number of apps, in one organization or across several: an agency running apps in separate organizations can point them all at its own Slack. Each connection stands alone, so disconnecting one app never touches the others.
Meridian posts as the Meridian Slack app, so the first message in a workspace comes from a bot your team will recognize across channels.
Slack’s authorization screen may note that the app is not approved by Slack. That notice appears on every Slack app distributed outside the Slack Marketplace; it means the app isn’t listed there, not that anything is wrong. The connection is the standard Slack authorization flow, and the permissions requested are exactly what that screen lists: read the channel list, post messages.
Configuring the action
Two things, per step:
- Channel: picked from a live list of your workspace’s channels: every public channel, plus the private channels the Meridian bot has been invited into. Each Send Slack message step picks its own channel, so one flow can alert
#sales while another posts to #support.
- Message: the text to post. Type
{{ to insert a variable; it’s filled in when the message is posted, with the same values an email would substitute: store variables, the triggering event’s own variables, and your custom fields as custom_field_<handle>.
A message can be up to 4000 characters. Both the channel and a non-empty message are required to activate the flow.
Private channels
By default, the picker lists every public channel of the workspace and none of the private ones: Slack keeps private channels hidden from apps that aren’t members. To make a private channel available, open it in Slack and run /invite @Meridian; the channel then shows up in the picker, marked with a lock. Meridian refreshes the channel list every few minutes, so a freshly invited channel can take a few minutes to appear. If the bot is later removed from the channel, runs that post to it fail until it’s invited back.
Workspaces connected before private channels were supported need one extra step: reconnect the workspace in app settings to grant the updated permission. The picker tells you when that’s the case.
When it fails
The action follows the same rules as Send email: a problem no retry can fix fails the run immediately, with the reason recorded on the run. See Runs and troubleshooting.
Testing
Test runs trace the step as Would post to #channel without posting anything. A flow whose message uses no variables tests without picking a store, because the message is the same for every store.
Allowances
A Slack post consumes no allowance of its own. The run that carries it is metered like any other automation run; there is no per-message meter. Last modified on September 1, 2026