payment.failedtrial.expiredenterprise.lead_created|Actionssend_messageThe event names shown here are examples. In Meshes, event types are fully customized for each organization.
What you can do
Create the Slack connection in Meshes with OAuth. Meshes loads the channels available to that Slack workspace so rules can choose the actual destination channel and message template fields from the connection action data.
Slack is where internal reaction often starts. The tricky part is making sure the message shows up every time the product signal matters, whether that is payment.failed, trial.expired, or a high-intent lead event.
Meshes keeps Slack delivery inside the event-routing layer. A Slack connection lives in the workspace, the target channel sits in the rule builder, message templates live alongside the rule, and Meshes handles retries and delivery history.
send_messagePost a structured message to the selected Slack channel with the event context your team needs to act on immediately.
Common use cases
Workflows where this destination tends to matter first — the product event, the destination action, and the operational retry path living inside the same workspace.
Use payment.failed and related operational events to alert ops or support the moment revenue-risk signals appear.
Send enterprise lead, activation, or expansion events into the Slack channels where humans can react right away.
Use trial or churn-risk events to surface customer context to the team before a ticket, escalation, or missed follow-up happens.
See the payment-failed use caseLet the event layer own Slack delivery instead of forcing product code to know which channel, template, or retry path to use.
How it works
A connection lives in the workspace, a rule binds the event to the action, and the delivery layer handles the last mile with retries, replay, and per-destination history.
Create the Slack connection in Meshes with OAuth and confirm the channels you expect are available in the connection action data.
Create rules for events like payment.failed or enterprise.lead_created, choose send_message, select the channel, and write the template in Meshes.
Emit the product event from your app or use Send Test Event in Meshes. Meshes renders the Slack message, retries transient delivery failures, and records the attempt history.
Event example
import MeshesEventsClient from '@mesheshq/events';
const meshes = new MeshesEventsClient(
process.env.WORKSPACE_PUBLISHABLE_KEY!,
);
await meshes.emit({
event: 'payment.failed',
resource: 'subscription',
resource_id: 'sub_91ab2',
payload: {
email: 'alex@northstar.io',
amount: 4900,
currency: 'usd',
failure_reason: 'card_declined',
retry_count: 2,
},
});Connection model
Create the Slack connection in Meshes with OAuth. Meshes loads the channels available to that Slack workspace so rules can choose the actual destination channel and message template fields from the connection action data.
Why Meshes
Slack sits inside the same fan-out, retry, replay, and delivery-visibility layer as every other destination — customer-connected or internal — that the workspace owns.
You can route product events to Slack without forcing application code to know channels, message templates, or Slack auth details.
If the message is the signal that gets a team moving, Meshes gives you the retry and replay path that keeps it from disappearing silently.
Meshes lets the Slack message use the same event context the rest of your destinations receive, so internal teams see the same source signal.
The same event can notify the team in Slack while also updating CRM, support, or lifecycle tools from one emission path.
Keep exploring
Concrete patterns, supporting documentation, and build-vs-buy context that usually come up during evaluation.
Catalog
Return to the integrations catalog and compare Slack with the rest of the Meshes destination surface.
Open linkDocs
Slack connection flow, rule builder, and templated-message setup in the product docs.
Open linkUse Case
Example of one billing event alerting Slack and updating the rest of the systems that need to respond.
Open linkGuide
Concrete Meshes pattern for routing billing alerts into the Slack channel your team watches.
Open linkGuide
Additional destination-specific routing patterns that can be adapted for Slack notifications.
Open linkCompare
Breakdown of what it takes to own Slack routing, formatting, retries, and observability in internal alert code.
Open linkpayment.failed once, let Meshes render and deliver the Slack message, and keep urgent internal signals visible when the team needs to react.