Resources
Stripe Payment Methods
This section highlights the most frequently encountered Stripe webhook events related to user purchases, subscription changes, and payment processes.
Stripe offers a lot more events than those. However, the following represent the core events you’ll likely need to handle on a daily basis.
checkout.session.completed
- The user successfully paid for the product or subscribed. Provision access
to the app / service.
checkout.session.expired
- The checkout session has expired before the customer completed the payment.
This typically occurs when a customer initiates but doesn’t complete the checkout process within 24 hours.
invoice.paid
- The user paid an invoice, typically for a recurring subscription. Ensure continued access
to the app / service.
invoice.payment_failed
- The payment for an invoice failed. Notify the user and potentially restrict
access if it’s a recurring failure.
customer.subscription.updated
- The subscription details have changed (e.g., plan upgrade/downgrade).
Change the user’s access or features accordingly.
customer.subscription.deleted
- The user’s subscription was cancelled or expired. Remove their access
to paid features.