Test Stripe Webhooks Before They Hit Production
Create a temporary Stripe webhook endpoint and see the event type, object ID, livemode, headers, and payload in one place. Save it for replay and forwarding, or tunnel it to localhost.
Your Stripe Test Endpoint
npx @catchhook/tunnel ep_Lq7EaoNrG5yoT9AxGv3QRD8w --key tkey_3ac65bf1844f6524b9824d70c385b66f --port 3000curl -X POST https://temp.catchhook.app/hooks/ep_Lq7EaoNrG5yoT9AxGv3QRD8w \
-H "Content-Type: application/json" \
-d '{
"id": "evt_test_webhook",
"object": "event",
"type": "payment_intent.succeeded",
"data": {
"object": {
"id": "pi_test_123",
"object": "payment_intent",
"amount": 2500,
"currency": "usd",
"status": "succeeded"
}
}
}'Or
to see it appear in real time below.Live Webhook Requests
Watch requests stream in automatically with full headers, payloads, and timestamps.
Streaming Live
Waiting for your first webhook...
Send a test request using the cURL command above or configure Stripe to use your endpoint URL.
How to test Stripe webhooks with Catchhook
Follow these steps to start receiving Stripe events on your temporary endpoint.
Create your temporary endpoint
Copy the Catchhook URL above.
Add it in Stripe
In Stripe Dashboard, go to Developers → Webhooks → Add endpoint. Paste your Catchhook URL and choose the events you want to test.
Send a test event
Use Stripe's "Send test webhook" button or trigger an event through Stripe Checkout, Billing, or the Stripe CLI.
Watch the request arrive live
Catchhook reads the event type, object ID, livemode flag, and key fields when the Stripe payload is parseable JSON. You see structured context at the top of every request card. The full JSON payload is one click below.
Tunnel it to localhost
When you are ready to test your local app, run the tunnel command to stream Stripe events to your local Rails, Laravel, Express, Django, or Next.js app.
Test with Stripe CLI
stripe listen --forward-to https://temp.catchhook.app/hooks/ep_Lq7EaoNrG5yoT9AxGv3QRD8wstripe trigger payment_intent.succeededUse Catchhook when you want a visual request history, payload inspection, team-shareable debugging, replay, forwarding, and saved endpoints beyond a terminal-only workflow.
Common Stripe webhook problems this helps debug
Catchhook helps you diagnose these issues before they reach production.
No events are arriving
- Endpoint URL copied correctly
- Stripe endpoint is enabled
- Correct mode: test vs live
- Correct events selected
- Catchhook tunnel running for localhost delivery
My app receives the event, but parsing fails
Catchhook extracts the event type and key fields from data.object automatically. You can also inspect:
- raw body
- content type
- nested data.object
- event type
- API version-related payload differences
Signature verification fails
Stripe signatures depend on the raw request body. If middleware parses or rewrites the body before verification, signature checks can fail. Catchhook lets you inspect the original delivery before it reaches your app. On a saved endpoint, configure your Stripe signing secret and Catchhook will show signature verification status (verified, failed, or missing) on every request card.
Local development is awkward
Stripe can send to Catchhook first, then the Catchhook CLI tunnel streams each event to your local app. This gives you a request history even when your local server crashes or your app returns an error.
What you get for free
Free / no signup
- temporary Stripe webhook URL
- live request inspection
- headers and payload view
- response capture (see exactly what was returned)
- generated cURL test
- localhost tunnel command
- short-lived request history
- automatic Stripe event type and object detection
Signup / free trial
- save endpoint
- longer retention
- replay requests
- forward manually
- AI summaries
- production monitoring
- alerts
- MCP server for AI editors (Claude, Cursor, Windsurf)
When to create a permanent endpoint
Use the free temporary endpoint while integrating. Create a permanent Catchhook endpoint when you need stable URLs, saved history, replay, Endpoint Actions, alerts, or team access.
Save This Stripe EndpointFrequently Asked Questions
You've captured 0 requests on this temp endpoint.
Create an account to keep this endpoint and continue debugging.
Ready for Production Webhooks?
Plans start at $10/month with a 14-day free trial. No credit card required.
Conditional Endpoint Actions, CSV/JSON export, custom domains, outbound webhooks, AI debugging, and a full REST API.