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. You connect Slack once in your workspace, select the target channel in the rule builder, define the message template, and let Meshes handle 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
These are the workflows where this destination tends to matter first. The point is to keep the product event, the destination action, and the operational retry path in one place.
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
In Meshes, the operating model is simple: create the connection in the workspace, create the rule, then let the event delivery layer handle the last mile.
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
The benefit is not just that the destination is supported. It is that the destination sits inside the same fan-out, retry, replay, and delivery-visibility layer as the rest of your stack.
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
These links are the next layer down: concrete patterns, supporting documentation, and the build-vs-buy context that usually comes up during evaluation.
Catalog
Return to the integrations catalog and compare Slack with the rest of the Meshes destination surface.
Open linkDocs
See the Slack connection flow, rule builder, and templated-message setup in the product docs.
Open linkUse Case
See how one billing event can alert Slack and update the rest of the systems that need to respond.
Open linkGuide
See a concrete Meshes pattern for routing billing alerts into the Slack channel your team watches.
Open linkGuide
See more destination-specific routing patterns that can be adapted for Slack notifications.
Open linkCompare
See 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.