Event (Stripe)

A Stripe Event is an immutable record of something that happened in your account, delivered to webhooks and queryable through the Events API.

A Stripe Event is a record Stripe creates whenever something notable happens in your account — a payment succeeds, a subscription changes, a dispute opens. Each event captures a snapshot of the affected object at that moment and carries a unique id like evt_....

Structure of an event

Every event has a type and a data payload:

  • `type` — a dotted string naming what happened, such as payment_intent.succeeded, invoice.paid, customer.subscription.deleted, or charge.dispute.created. The prefix names the object; the suffix names the change.
  • `data.object` — the full object the event is about, in the state it was in when the event fired (for example, the PaymentIntent or Charge).

Events are immutable — Stripe never edits one after it's created, so an event is a reliable historical record even if the underlying object later changes.

How you receive events

Events reach you two ways:

  1. Pushed to a webhook endpoint the moment they occur — the usual way to react in real time.
  2. Pulled from the Events API, which lets you list and retrieve recent events (they're retained for a limited window). This is useful for catching up after downtime.

Why event types matter

Choosing the right event types is how you avoid noise. Subscribing to charge.dispute.created and invoice.payment_failed surfaces problems; subscribing to everything buries them. ChargeBell maps the events that matter for a founder — payments, failures, refunds, subscription changes, disputes — into plain-English Slack alerts, so you react to the meaningful ones without parsing raw event JSON.

Related terms

Updated July 6, 2026