TriggerStripeReal-timeUpdated June 2026

How do I trigger when a Stripe charge fails?

Short answer: In TinyCommand, add the Stripe Charge Failed trigger to a workflow and publish. It listens through a Stripe webhook and fires your workflow within seconds of the event, with no polling and no code. Add a filter if you only want some events to start a run.

Trigger workflows on Charge Failed in Stripe — start free
Anatomy

What this trigger looks like in a workflow.

Drop it on the canvas. Configure a couple of fields. Publish.

In the builder
Trigger
Charge Failed
When the matching event happens
new charge failedwhen a charge attempt fails in stripeon charge failedwhen charge failedwatch for charge failed
What this trigger returns
for the curious

You don’t need to read this. TinyCommand auto-maps every field into the visual picker so downstream nodes can pull values by clicking. We show it here for power users who want to know what’s on the wire.

{
"amount": 100,
"status": "failed",
"created": 1778804246,
"currency": "usd",
"customer": null,
"event_id": "evt_xxx",
"livemode": false,
"charge_id": "ch_xxx",
"event_type": "charge.failed",
"occurred_at": 1778804246,
"failure_code": "card_declined",
"receipt_email": null,
"payment_intent": "pi_xxx",
"payment_method": "pm_xxx",
"failure_message": "Your card was declined."
}
Output shape

Fields available to downstream nodes.

Every field below can be referenced by name in any action or filter that comes after this trigger.

FieldTypeExample
amountnumber100
statusstring"failed"
creatednumber1778804246
currencystring"usd"
customernullnull
event_idstring"evt_xxx"
livemodebooleanfalse
charge_idstring"ch_xxx"
event_typestring"charge.failed"
occurred_atnumber1778804246
failure_codestring"card_declined"
receipt_emailnullnull
payment_intentstring"pi_xxx"
payment_methodstring"pm_xxx"
failure_messagestring"Your card was declined."
FAQ

Questions about Charge Failed.

How does the Charge Failed trigger work in Stripe?
Fires when a charge attempt fails in Stripe (decline, fraud, insufficient funds). Use to alert the customer, retry, or kick off dunning.
Is the Charge Failed trigger real-time?
Yes. Charge Failed uses webhooks or push subscriptions, not polling. Your workflow fires within seconds of the event happening in Stripe.
What data does Charge Failed return?
The full event payload from Stripe. The output shape table on this page lists every field, its type, and an example value so you can map fields into downstream nodes.
Can I filter Charge Failed so only some events start a workflow?
Yes. Add a Filter node right after the trigger and match on any field, whether that's subject, sender, status, or anything else in the payload. Workflows only continue when the filter passes.
Do I need Stripe admin permissions to use Charge Failed?
For most Stripe accounts a standard user can authorize the trigger. Some Stripe plans require an admin to enable third-party webhooks. Check Stripe's docs if the trigger fails to register.
More triggers

Other Stripe triggers.

Trigger
Checkout Completed
Fires when a Stripe Checkout session is completed (regardless of payment async status). Common use: provision the customer, send a receipt, or grant entitlements.
Trigger
New Customer
Fires when a new customer is created in Stripe. Use to mirror to your CRM, send a welcome email, or enrich the customer record before first charge.
Trigger
New Dispute
Fires when a charge dispute is created in Stripe (chargeback). Critical: route to ops immediately so you can gather evidence before the response window closes.
Trigger
Invoice Paid
Fires when an invoice is paid in Stripe. Use to recognise revenue in your accounting system, extend the subscription, or thank the customer.
Trigger
Invoice Payment Failed
Fires when an invoice payment fails in Stripe. The standard hook for dunning: email the customer, retry the card, or pause access.
Trigger workflows on Charge Failed in Stripe — start free