Skip to content

Integration

Slack + Bastle

What syncs from Slack, what it makes possible, and how to connect it.

Beta

This connector works and can be connected today, with edge cases still being closed. Check the first month against the source before you rely on it.

What does the Slack integration do?

The Slack integration answers a slash command with live metric values from your workspace's daily snapshots and formats event alerts and scheduled metric reports as Block Kit messages. Slack never becomes a billing source — it is an output surface, and the slash command is the part that is wired end-to-end today.

What syncs

Bastle reads the following from Slack and normalises it into the same entities every other source produces. Ingestion is read-only: nothing is created, changed or cancelled upstream.

  • Outbound: metric values read from the daily metric snapshots written by the metrics engine. Slack never computes a number itself.
  • Outbound: event alert messages for new customers, cancellations and failed charges, with per-event toggles.
  • Outbound: scheduled metric reports showing a metric, its current value, the change against the previous snapshot and the period context.
  • Inbound: the slash command, which answers with a named metric on demand.
  • Cadence: slash commands answer immediately. Scheduled report delivery is not wired to a sender yet.

Once connected

What Slack data unlocks

Connecting a source is not the point; what you can answer afterwards is. These are the questions this data makes answerable.

Metrics without opening a dashboard

Asking for a metric in the channel where the question came up beats a browser tab, and the answer comes from the same snapshots the dashboard reads.

One number, one definition

Slack formats values from the metric snapshots and does no arithmetic of its own, so a figure quoted in a channel cannot disagree with the dashboard.

Alerts scoped to what matters

New customers, cancellations and failed charges can each be toggled independently, so a busy channel is not the reason a team mutes the integration.

Setup

Connecting Slack

The whole flow, start to first chart. No implementation call and no data engineer.

  1. Create a Slack app for your workspaceIt provides the bot token used to post messages and the signing secret used to verify inbound requests.
  2. Add the slash commandPoint it at /api/webhooks/slack. Requests are verified against the signing secret with a timestamp check before anything is processed.
  3. Choose a channel and alert togglesSettings → Integrations holds the Slack configuration: destination channel, report cadence, and which events raise an alert.
  4. Ask for a metricRun the slash command with a metric name — or with help to list what is available — and Bastle answers from the latest snapshot.

Slack is an output, not a source

It is worth being explicit: connecting Slack does not add data to Bastle. It never creates a billing source, never contributes plans or charges, and never affects a metric. It is a delivery surface for numbers computed elsewhere.

Where the numbers come from

Every value posted to Slack is read from the daily metric snapshots written by the metrics engine, and this connector only formats them — integer cents become a currency string at the presentation edge and nowhere earlier. That constraint is the reason a number quoted in a channel and the same number on the dashboard cannot drift apart.

Request verification

Inbound Slack requests carry a signature and a timestamp. Both are checked, with a timing-safe comparison, before any workspace data is read. An unverified request gets nothing.

What is not wired yet

The message formatting for event alerts and scheduled reports is written and tested, and the slash command answers live. What is missing is the scheduler that delivers those reports on a cadence without being asked. Until that lands, treat Slack as an on-demand surface: ask and it answers, but do not expect a Monday morning report to arrive by itself.

Bastle is free while in beta, this integration included.

Slack and Bastle: common questions

Does connecting Slack send my revenue data to Slack?

Only what is posted. Bastle sends metric values and event summaries to the channel you configure. It does not export customer lists or charge history, and Slack never becomes a source of data flowing back into Bastle.

Can Slack numbers disagree with the dashboard?

They should not. This connector reads the same daily metric snapshots the dashboard reads and only formats them for display — there is no arithmetic in the Slack path that could produce a different answer.

Do scheduled reports work today?

Not automatically. The report formatting and the cadence setting exist, but the scheduler that sends them without being asked is not wired up. The slash command answers on demand and is the reliable path today.

Which events can raise an alert?

New customer, subscription cancelled and charge failed, each independently toggleable. Keeping them separate matters because the right channel for a failed payment is usually not the right channel for a new signup.

Connect Slack and see your own history.

Bastle backfills what Slack will serve, then keeps current over webhooks — usually a couple of minutes before the first real chart. Free while in beta, no card required.