FINANCE

Catch a real-time refund spike for a single merchant and alert finance

Listens to Stripe refund events as they happen, maintains a rolling hourly count per merchant.

CategoryFinance
Enginesim
Difficultyintermediate
Triggerwebhook
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerStripe refund.created webhookStripeStripe
  • ActionUpdate rolling hourly refund counter in PostgresPostgreSQLPostgres
  • LogicCompare hourly rate to 7-day baseline multiplier
  • LogicApply per-merchant alert cooldown
  • OutputPost urgent spike alert to finance SlackSlack

What it does

Watches the Stripe refund stream in real time and detects when one merchant suddenly starts issuing refunds far faster than its own recent norm. Instead of waiting for a nightly batch, it surfaces a runaway refund script, a misconfigured integration, or fraud while it is still in progress.

When to use it

Use this when minutes matter. A daily cohort report is good for trend hygiene, but a merchant dumping refunds in a single hour needs an interrupt, not a morning summary. This is the early-warning tripwire that complements the batch analysis.

How it works

  1. 1A Stripe webhook fires on every `refund.created` event.
  2. 2Increment a rolling 1-hour refund count and amount for that merchant in Postgres.
  3. 3Branch: compare the current hourly rate to the merchant's trailing 7-day hourly baseline; continue only if it exceeds the multiplier.
  4. 4Branch: suppress if an alert for this merchant already fired in the cooldown window.
  5. 5Post an urgent alert to the finance Slack channel with merchant, hourly count, baseline, and a refund link.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect StripeCustomers, subscriptions, payments.
  2. 2
    Connect PostgresAny Postgres URL — query, write, migrate.
  3. 3
    Connect SlackChannels, DMs, threads, mentions.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.