webhook-replay-toolkit

Capture production webhooks once,replay them forever.

Stop waiting for one-off webhook events to fire again. Webhook Replay Toolkit stores full request headers + raw payload, then lets you replay to localhost, staging, or production with one click.

Hosted Stripe checkout. No metered pricing. Cancel anytime.

Capture endpoint

https://your-app.com/api/capture/stripe

Replay target

http://localhost:3000/api/webhooks/stripe

Common result

Reproduce signature validation and parsing bugs in under a minute instead of waiting hours for another live checkout, order, or push event.

Stripe

Capture `checkout.session.completed`, invoice updates, and subscription events as they happen.

Shopify

Debug order/create and app/uninstalled webhooks without waiting for a customer action.

GitHub

Replay push, PR, and issue events against new commits while preserving signatures.

Any provider

Slack, Resend, Postmark, or custom services work through the same capture endpoint.

The Pain

Webhooks are async and non-idempotent. A failed event often cannot be retriggered cleanly, and handcrafted curl scripts miss critical headers.

The System

A capture proxy records raw body + full headers into Postgres. Replays are sent on demand, with Redis-backed queue metadata for operational traceability.

The Outcome

Faster incident response, cleaner debugging workflows, and fewer “cannot reproduce” dead ends during launches and migrations.

How replay works

1. Capture

Route provider webhooks to /api/capture/<provider>. Every request gets an immutable event record.

2. Inspect

Search by provider or payload content, inspect signature headers, and review the exact JSON body in the dashboard.

3. Replay

Send to localhost, staging, or prod in one click. Replay attempts are logged with response code, latency, and response body.

Launch Plan

$15/month

Capture every webhook once, replay it forever. One price for all providers and all environments.

  • Unlimited webhook captures across Stripe, Shopify, GitHub, Slack, and custom services
  • Full request headers + raw body preserved for accurate replay debugging
  • Replay to localhost, staging, or production with one click
  • Redis-backed replay queue so high-volume bursts stay reliable
Buy Access in Stripe Checkout

We verify this against completed checkout events received on your webhook endpoint.

FAQ

How do I start capturing webhooks?

Point any provider webhook URL to your app domain at `/api/capture/<provider>`. Every request body and header is stored for replay.

Does replay keep original payload fidelity?

Yes. The replay request forwards the raw body and can preserve original headers (minus unsafe hop-by-hop headers) for realistic debugging.

Can I replay to localhost?

Yes. During local development run this app locally and replay to `http://localhost:<port>/...` endpoints directly.

How is access controlled?

The dashboard is paywalled. After purchase, Stripe webhook events create your access grant and you unlock with your billing email.