Skip to content
Create account or Sign in
The Stripe Docs logo
/
Ask AI
Create accountSign in
Get started
Payments
Revenue
Platforms and marketplaces
Money management
Developer resources
APIs & SDKsHelp
Overview
Versioning
Changelog
Upgrade your API version
Upgrade your SDK version
Essentials
SDKs
API
Testing
Stripe CLI
Sample projects
Tools
Stripe Dashboard
Workbench
Developers Dashboard
Stripe Shell
Stripe for Visual Studio Code
Features
Workflows
Event destinations
    Integrate with events
    Amazon EventBridge
    Webhook endpoint
      Webhook builder
      Handle payment events
      Webhook versioning
      Resolve webhook signature verification errors
      Process undelivered events
      Handle irrecoverable webhook events
Stripe health alertsFile uploads
AI solutions
Agent toolkit
Model Context ProtocolBuild agentic AI SaaS Billing workflows
Security and privacy
Security
Stripebot web crawler
Privacy
Extend Stripe
Build Stripe apps
Use apps from Stripe
Partners
Partner ecosystem
Partner certification
United States
English (United States)
HomeDeveloper resourcesEvent destinationsWebhook endpoint

Handle irrecoverable webhook eventsPublic preview

Learn how to handle webhooks that fail to generate.

In very rare cases, Stripe can fail to generate the Event object. In these cases, the event is irrecoverable. Stripe can’t deliver it to your event destinations, nor publish it in the Dashboard or in the List Events API. Instead, Stripe creates a v2.core.health.event_generation_failure.resolved event to inform you that the Event generation failed. This guide explains how the alert works, and what you can do to recover from it.

Delivery of failed events

Stripe delivers v2.core.health.event_generation_failure.resolved events to both Workbench and to any webhook endpoints you configure to listen for them.

Workbench

The v2.core.health.event_generation_failure.resolved events appear in two places in Workbench:

  • The Events tab
  • The Health tab

Webhook endpoints

Follow the webhook setup guide to register a webhook endpoint that listens to v2.core.health.event_generation_failure.resolved thin events. After you register the correct webhook endpoint, Stripe sends v2.core.health.event_generation_failure.resolved events to it.

How to use the health event

When Stripe fails to generate an event, you can process the generated event notification to retrieve the v2.core.health.event_generation_failure.resolved object, as shown in the following example.

{ "alert_id": "halert_61RFBMa6o6H87usts16RFBM10hSQlYfddqcFoEMR6CPY", "grouping_key": "_grouping_s8PgTvizbkORV9z5PhaJSvc4dUcAMmfRpEHKm4EeJ1glsQ5XMf", "impact": { "event_type": "payment_intent.requires_action", "related_object_id": "pi_1QA8PKDTvO5jCVb3TVDZP75a", "related_object": { "id": "pi_1QA8PKDTvO5jCVb3TVDZP75a", "type": "payment_intent", "url": "https://dashboard.stripe.com/payment_intents/pi_1QA8PKDTvO5jCVb3TVDZP75a" }, }, "resolved_at": "2025-10-30T16:05:44.000Z", "summary": "We have failed to create a notification for your Stripe account.", }

The example event provides the following information about the failure:

  • Failed event: Stripe failed to generate a payment_intent.requires_action event.
  • Relevant object: The PaymentIntent that Stripe failed to generate the event for is pi_1QA8PKDTvO5jCVb3TVDZP75a.
  • Timestamp: The event failed to generate at 2025-10-30T16:05:44.000Z.
  • Account type: The impact doesn’t include the context property, so the payment_intent.requires_action event didn’t occur on a connected account.

If your integration relies on receiving webhooks for the payment_intent.requires_action event, this failure makes it out of sync with the Stripe state. To realign your integration after you receive a v2.core.health.event_generation_failure.resolved webhook, poll the relevant API (in this case the Payment Intents API) to retrieve the related object:

Command Line
cURL
No results
curl https://api.stripe.com/v1/payment_intents/pi_1QA8PKDTvO5jCVb3TVDZP75a \ -u "
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:"
Was this page helpful?
YesNo
  • Need help? Contact Support.
  • Check out our changelog.
  • Questions? Contact Sales.
  • LLM? Read llms.txt.
  • Powered by Markdoc