Early access — use code HOOKSENSEWELCOME for 1 month free

Stripe Webhooks

How to Test Stripe Webhooks Locally (2026)

Stripe uses webhooks to notify your application about payment events like successful charges, subscription updates, and disputes. Stripe signs every webhook with HMAC-SHA256 using your endpoint's signing secret.

Signature Header

Stripe-Signature

Algorithm

HMAC-SHA256

Setup Guide

  1. 1Create a free HookSense endpoint at hooksense.com
  2. 2Copy your unique webhook URL (e.g. https://hook.hooksense.com/w/abc123)
  3. 3In Stripe Dashboard → Developers → Webhooks → Add endpoint
  4. 4Paste your HookSense URL and select the events you want to receive
  5. 5Copy the signing secret (whsec_...) and add it to HookSense for automatic HMAC verification
  6. 6Trigger a test event from Stripe Dashboard or make a test payment
  7. 7Watch the webhook appear in HookSense in real-time

Common Stripe Webhook Events

checkout.session.completed
invoice.paid
invoice.payment_failed
customer.subscription.created
customer.subscription.updated
customer.subscription.deleted
payment_intent.succeeded
charge.dispute.created

Forward to Localhost

Use HookSense CLI to forward Stripe webhooks directly to your local development server:

npx hooksense listen -p 3000 --path /api/integrations/stripe

No ngrok or tunnel setup required. Install with npm i -g hooksense or use npx.

Tips & Best Practices

  • Always verify the Stripe-Signature header before processing webhooks in production
  • Use Stripe CLI (stripe trigger) to send test events during development
  • HookSense can forward Stripe webhooks to your local server — no ngrok needed
  • Set up custom responses in HookSense to test how your app handles different status codes

Related

Start Testing Stripe Webhooks

Create a free endpoint and receive your first Stripe webhook in seconds.

Get Started Free