Stripe alert

Send a Stripe dispute alert to Slack the moment it opens

The charge.dispute.created event fires when a cardholder charges back a payment — and the clock to respond starts immediately. Here's how ChargeBell turns it into a CRITICAL Slack alert so nobody finds out too late.

Updated July 6, 20266 min read

A Stripe dispute alert in Slack is a message posted the instant a cardholder charges back a payment. ChargeBell listens for Stripe's charge.dispute.created event and posts a plain-English, CRITICAL alert — with the amount, the reason, and the customer — so nobody discovers the chargeback days after the deadline to respond has already passed.

What charge.dispute.created means

charge.dispute.created fires when a cardholder formally disputes a payment — either by filing a chargeback directly with their bank, or when an earlier inquiry escalates into a formal dispute. It's an asynchronous event that lands outside your normal payment flow, so unless something surfaces it, it's easy to miss entirely. For a real chargeback it usually arrives with a needs_response status: the ball is in your court.

The moment the dispute is created, Stripe withdraws the disputed amount plus the dispute fee from your balance — before anyone has reviewed anything. The money is already gone. That, combined with a hard deadline, is what makes this the single most time-sensitive event in Stripe.

Why a Stripe dispute alert in Slack is urgent

Every dispute carries a deadline set by the card network, exposed on the dispute object as evidence_details.due_by. Submit your evidence before that date and you get a chance to win. Miss it and the cardholder wins automatically — there is no appeal for a missed deadline. The response window is typically 7–21 days depending on the card network and region, but the only number that matters is the one Stripe gives you. ChargeBell's job is to make sure you know the dispute exists in time to open Stripe and act on it.

  • A hard, network-set deadline. Miss evidence_details.due_by and the dispute is lost with no way to reopen it.
  • Money already withdrawn. The disputed amount plus fees leave your balance immediately, not after a decision.
  • Real fees at stake. In the US, as of 2026, Stripe charges a $15 dispute fee per chargeback, plus a separate $15 counter fee if you choose to submit evidence (this counter fee took effect June 17, 2025 and excludes businesses in Mexico and Japan).
  • It's easy to miss. A dispute lands as a background webhook, not something anyone is watching for — until it's too late.

The clock starts the moment this event fires

Response windows vary by card network and region (often 7–21 days), so don't treat any single number as universal. Stripe's evidence_details.due_by is the source of truth for the exact deadline — ChargeBell's part is getting the alert to Slack fast enough that you have time to act.

What a good dispute alert includes

A raw webhook payload helps no one under time pressure. A good dispute alert answers, at a glance: how much, why, and who — and makes unmistakably clear that this one is urgent. ChargeBell computes the plain-English version and flags it CRITICAL so the response window doesn't slip by unnoticed.

#disputes
🚨
ChargeBellApp

🚨 CRITICAL — New Stripe dispute opened

$249.00 disputed · reason: fraudulent · jordan@example.com

Respond in Stripe before the deadline or it's lost automatically

Fields ChargeBell can include

  • Disputed amount and currency
  • The cardholder's stated reason (e.g. fraudulent, product_not_received)
  • Customer name or email, when Stripe provides it
  • Dispute status (typically needs_response on a new chargeback)

It's one alert, not a countdown

ChargeBell sends a single notification the moment the dispute opens so your team can act right away. It doesn't track the deadline or send reminders — responding to the dispute, and the exact due date, live in the Stripe Dashboard, where Stripe stays the source of truth.

Why ChargeBell treats disputes as CRITICAL

The dispute_created alert is marked CRITICAL by default. Because the urgency is inherent to the event — a hard deadline and money already withdrawn — a CRITICAL alert bypasses quiet hours and can add an @channel prefix so it reaches the whole team even at 2am. A win landing while everyone's asleep can wait until morning; a dispute deadline can't. Route these to a channel like #disputes or #founders where the right people will see them.

How to set up a Stripe dispute alert in Slack

  1. 1

    Connect Stripe

    One-click, read-only OAuth via Stripe Connect. ChargeBell can see dispute events and can never move money or touch the dispute itself.

  2. 2

    Connect Slack and pick a channel

    Add the app and choose where disputes should post — a dedicated #disputes channel keeps them visible.

  3. 3

    Enable the dispute created alert

    It's on by default and marked CRITICAL, so it bypasses quiet hours and can @channel. Leave the defaults on for maximum coverage.

  4. 4

    Send a test alert

    Confirm the message looks right and reaches the right people before a real dispute ever lands.

Want the full playbook? See how to send Stripe dispute alerts to Slack for the complete setup, and how to build a payment incident workflow in Slack to turn alerts into a repeatable response.

Key takeaways

  • charge.dispute.created fires the moment a cardholder charges back a payment, and the money is withdrawn immediately.
  • The deadline is evidence_details.due_by — miss it and the dispute is lost automatically.
  • ChargeBell posts a CRITICAL Slack alert with the amount, reason, and customer that bypasses quiet hours and can @channel.
  • It's a one-time notification — you respond in the Stripe Dashboard, which stays the source of truth.

Never miss a dispute deadline again

Connect Stripe and Slack, enable the dispute alert, and send a test. Free plan, no card needed.

Start freeFree plan · no card needed

Frequently asked questions

Which Stripe event fires when a customer disputes a payment?

charge.dispute.created. It's sent when a cardholder formally disputes a charge — either by filing a chargeback with their bank or when an earlier inquiry escalates. ChargeBell listens for it and posts a CRITICAL Slack alert.

Where do I find the dispute deadline?

In the Stripe Dashboard. Every dispute carries a network-set deadline on Stripe's evidence_details.due_by field — submit your evidence before it or the dispute is lost automatically. ChargeBell's role is to alert you the moment the dispute opens so you have time to open Stripe and respond.

Does ChargeBell remind me again as the deadline gets closer?

No. ChargeBell sends one CRITICAL alert the moment the dispute opens. It does not track the deadline, send countdowns, or repeat reminders — you respond in the Stripe Dashboard, and Stripe stays the source of truth.

Will the alert reach me even during quiet hours?

Yes. The dispute alert is CRITICAL, so it bypasses quiet hours and can add an @channel prefix. A dispute carries a hard deadline and the money is already withdrawn, so it can't wait until morning.

Does ChargeBell need write access to Stripe?

No. ChargeBell connects with official read-only OAuth. It can see dispute events to build alerts, but it can never move money, submit evidence, or change anything in your Stripe account — including the dispute itself.