How to build a payment incident workflow in Slack
A Stripe alert in Slack does nothing without someone to act on it. Here is a small incident workflow for failed payment spikes, disputes, and failed payouts that runs in one channel.
The ChargeBell Team
Updated October 1, 2026. 9 min read.

A payment incident workflow in Slack is a short process your team follows when money is at risk. It has four steps: detect, triage, assign, and resolve. You need one channel, three severity levels, two roles, and a runbook for each common incident. You don't need a separate incident tool. This guide gives you all four parts.
Short answer
Send failed payment, dispute, and failed payout alerts to one Slack channel. When one fires, a named owner sets the severity and follows a runbook in the thread. ChargeBell posts each alert and shows a banner on its dashboard when failed payments spike. It doesn't open an incident in Slack. A person does that.
What counts as a payment incident?
A payment incident is any event where money is at risk and a deadline is running. Most Stripe businesses see three kinds:
- A failed payment spike. Declines jump well above normal. The cause is often a batch of expired cards or a card network problem. It can also be card testing, where fraudsters run many small charges to check stolen cards. Stripe names a cluster of small charges as the usual sign.
- A dispute. The customer's bank takes a payment back. In the US, Stripe charges a $15 dispute fee that you don't get back, and since June 2025 a second $15 fee if you challenge it, refunded only if you win. You have about 7 to 21 days to submit evidence, depending on the card network, or you lose by default.
- A payout or platform problem. A failed payout means your bank rejected the transfer, and Stripe pauses later payouts until you fix it. Stripe itself can also have an outage. Check status.stripe.com when many payments fail at once.
Each one costs money and has a deadline. That is why an owner, a severity level, and a runbook are worth setting up.
Why run payment incidents in Slack
Payment incidents lose time while people gather context and work out who owns the problem. When the alert, the owner, the severity, and the next update all sit in one Slack thread, everyone reads the same record. Track how long your team takes to acknowledge and resolve incidents to see whether it helps.
If Stripe alerts already go to Slack, you have the first step. If not, start with how to get Stripe payment notifications in Slack. To decide which channel gets which alert, read which Stripe alerts go to finance, support, and founders.
The payment incident workflow in Slack, step by step
Every payment incident goes through the same four steps. Most need one person and one runbook.
- 1
Detect
An alert posts in Slack for a failed payment, a dispute, or a failed payout. ChargeBell listens for Stripe events such as
charge.dispute.created, and its dashboard shows a banner when failed payments spike, so nobody has to scan logs. - 2
Triage
The first person to respond sets the severity, from SEV-1 to SEV-3. Then they make the main decision. For a dispute, fight or accept. For a spike, act now or wait. For a payout, fix it or escalate.
- 3
Assign
One person becomes the owner and makes the calls. For anything bigger than one failed payment, the owner brings in a responder to investigate. Post both names in the thread.
- 4
Resolve
Follow the runbook. Diagnose, act, then check the fix worked, for example that the failure rate is back to normal, the evidence is submitted, or the payout is resent. Post the outcome in the thread and close the incident.
Severity levels
Severity levels keep you from waking the whole team for one expired card, and from ignoring an outage. Here is a three-level version for payments:
| Level | What it means | Who responds | @channel? |
|---|---|---|---|
| SEV-1 | Payments are down or declines spike across many customers | Owner and responder, now | |
| SEV-2 | Failures above normal or a large dispute | Owner, who brings in a responder | |
| SEV-3 | One failed payment or refund | One person, during the day |
Two roles
Large incident processes have many roles. For payments, two are enough:
- The owner. Coordinates, decides whether to fight, accept, or escalate, and keeps the thread updated. The owner makes decisions and leaves the investigation to the responder.
- The responder. Investigates. Checks Stripe payments for clusters of small declines, reviews Radar, checks bank details, or resends a payout. For a single dispute, the owner and responder are often the same person.
Pick the owner before the incident
Decide each week who owns payment incidents. It can be one person or a Slack user group such as @finance-oncall. Looking for an owner while a dispute deadline runs wastes the days you need for evidence.
What ChargeBell does in the workflow
The process only works if the alert reliably starts it. ChargeBell handles detection and gets the alert to the right people in Slack.
- Critical alerts. Failed payment, dispute, and failed payout alerts are marked critical. Turn on critical mentions and they start with @channel.
- A failed payment spike banner. The ChargeBell dashboard shows a banner when today's failed payments since 8 a.m. reach three times the daily average of the past seven days, with a minimum of three. It links to the list of failed payments. Use it to detect a spike.
- Dispute deadlines. Dispute alerts show a respond-by date when Stripe provides one, and a button to view the evidence in Stripe.
- Channels and quiet hours. Each alert type can go to its own channel. Quiet hours hold routine alerts until morning, but critical alerts post right away.
ChargeBell reads Stripe with read-only access and posts to Slack. It doesn't fix problems, submit dispute evidence, or change Radar rules. The runbook is where a person takes over.
What a payment incident looks like in Slack
ChargeBell shows a failed payment spike as a banner on its dashboard. Once someone confirms the pattern in Stripe, they post a message like this one in Slack. It is a template your team writes, not a ChargeBell alert:
Team incident template
馃毃 Payment incident opened: failure spike
Example: failure rate above our baseline; confirm count and time window in Stripe. @channel
Severity: SEV-2 路 Owner: @sara
Next: 1) Check Stripe for clusters of small declines 2) Turn on a Radar card testing rule if confirmed 3) Post status every 15 min
For a dispute, the ChargeBell alert shows the amount, the reason when Stripe gives one, and the respond-by date. The owner replies in the thread with the decision:
ChargeBellAPP
馃毃 A $312.00 charge was disputed
Devon at Arcfield 路 "product not received"
Respond by: Fri Jul 3 路 2 days | View evidence in Stripe
A finance owner might reply Owner: @finance-oncall 路 Decision: fight or accept. That reply comes from your team, not from ChargeBell.
A sample runbook
A runbook has three parts. Diagnose the cause, take the exact actions, and check the fix. Write one for each common incident and paste it into the thread when the alert posts. Here is one for a failed payment spike:
- Diagnose. Open Payments in Stripe and compare failure counts, amounts, card fingerprints, IP addresses, and decline codes with a normal day. Many small attempts can mean card testing. A batch of
insufficient_fundsdeclines does not mean the cards expired. Read Stripe's card testing guide and check status.stripe.com for a Stripe incident. - Act. If the evidence points to card testing, review your Radar settings with whoever owns payments. For real customers whose renewals failed, check your Billing retry settings and contact customers who need a new card. If Stripe reports an outage, share the status page and check whether your checkout is affected.
- Check. Confirm the failure rate is back to normal in ChargeBell or Stripe. Post the cause and the fix in the thread, then close the incident.
The payout runbook is shorter. Check your bank details in Stripe's payout settings, resend the payout, and confirm the next one is scheduled. For disputes, the runbook is a decision and a deadline. See the Stripe dispute alert for that process and the Stripe failed payment alert for the alert that starts a spike investigation.
Keep it small
The workflow answers one question. When an alert posts, who does what, in what order, and by when? A severity level, a named owner, and a three-step runbook answer it. Don't add steps, forms, or an incident tool until your volume needs them. Keep the alert channel quiet too, because noise hides incidents. How to avoid noisy Stripe notifications shows how.
Key takeaways
- A payment incident is a failed payment spike, a dispute, or a payout or platform problem. Each has a cost and a deadline.
- Run each incident through detect, triage, assign, and resolve in one Slack channel and thread.
- Use three severity levels and two roles. The owner decides and the responder investigates.
- ChargeBell posts critical alerts, shows a spike banner, and adds dispute deadlines. A person runs the runbook.
- Write a runbook for each common incident with three parts, diagnose, act, and check.
Set up the alert
Frequently asked questions
What is a payment incident workflow in Slack?
It is a short process for events where money is at risk, such as failed payment spikes, disputes, and failed payouts, run in one Slack channel. When an alert fires, someone becomes the owner, sets a severity level, and follows a runbook in the thread.
How do I detect a failed payment spike?
Compare today's declines with a normal day. ChargeBell's dashboard shows a banner when failed payments since 8 a.m. reach three times the daily average of the past seven days, with a minimum of three, and links to the failed payments. Many small declines can mean card testing. Check the decline codes in Stripe before you decide the cause.
Do I need a separate incident tool for payment incidents?
Usually not. Most payment incidents need one person and one runbook. Keeping the alert, discussion, and outcome in one Slack thread is enough until your volume grows.
How fast do I have to respond to a Stripe dispute?
You have about 7 to 21 days to submit evidence, depending on the card network, or you lose by default. In the US, Stripe charges a $15 dispute fee that you don't get back, and a second $15 fee to challenge it, refunded only if you win. ChargeBell dispute alerts show a respond-by date when Stripe provides one.
Can ChargeBell fix a payment incident automatically?
No. ChargeBell has read-only access to Stripe. It posts critical alerts to Slack, can mention @channel, and shows the spike banner on its dashboard. It can't move money, submit dispute evidence, or change Radar rules. A person follows the runbook in Stripe.
Which roles do I need for a payment incident?
Two are usually enough. An owner makes the fight, accept, or escalate decision and keeps the thread updated. A responder investigates in Stripe and takes the actions. For a single dispute, one person often does both.


