---
title: "Webhooks"
url: "https://trialvalid.com/docs/webhooks.md"
canonical_url: "https://trialvalid.com/docs/webhooks"
last_updated: "2026-10-29"
type: "reference"
summary: "The Stripe events TrialValid handles, how each event is claimed once, and why invoice events are not subscribed."
related: ["https://trialvalid.com/docs/trial-lifecycle.md", "https://trialvalid.com/docs/errors.md"]
---

# Webhooks

> **For AI agents:** the complete index of TrialValid pages is [llms.txt](https://trialvalid.com/llms.txt). Every page is also served as markdown at its URL plus .md.

The Stripe events TrialValid handles, how each event is claimed once, and why invoice events are not subscribed.

TrialValid receives events from Stripe. The signature of each event is verified against the endpoint secret before anything runs.

## Handled events

| Event | What TrialValid does |
| --- | --- |
| `payment_intent.amount_capturable_updated` | The card is confirmed: start the trial subscription |
| `payment_intent.canceled` | The hold was released by the network or by us: update the trial |
| `payment_intent.succeeded` | A capture settled, including captures made outside TrialValid |
| `customer.subscription.deleted` | The subscription ended: update the trial |
| `charge.dispute.created` | Flag the trial and alert you |
| `account.application.deauthorized` | You disconnected Stripe: held trials become `hold_lost` |

## Each event is handled once

An event is claimed when it first arrives and answered as a duplicate if Stripe sends it again. If a handler fails, the claim is released so Stripe's retry runs the handler again.

## Your invoices are never held back

TrialValid never subscribes to `invoice.created`. While an endpoint subscribed to that event keeps failing, Stripe waits before finalizing invoices, so leaving it out means a slow or failed delivery to TrialValid never delays an invoice on your account.

## Related

- [Trial lifecycle](https://trialvalid.com/docs/trial-lifecycle.md)
- [Errors](https://trialvalid.com/docs/errors.md)
