Payments

Test Stripe webhooks without guessing what arrived.

Point a Stripe webhook endpoint at a SignalBin receiving URL and every event Stripe sends is stored in full: method, headers, raw body, size, and arrival time. When a subscription lands in the wrong state, you read the event that caused it instead of reconstructing it from logs.

Full event bodies kept for 30 daysWorks without a local tunnelReplay into your own service
Workflow

How the debugging loop goes.

Create a receiving URLAdd an endpoint for the environment you are testing, one for local work and one for staging, then copy its URL into the Stripe dashboard as a webhook destination.
Trigger the real eventRun the checkout, cancel the subscription, or fire stripe trigger. SignalBin stores each delivery as its own capture, including the retries Stripe sends after a failure.
Read the payloadOpen the capture to see the raw JSON body, the header set, the detected body type, and the byte count. Copy the body straight out to build a fixture.
Forward it to your codeAdd your own service as a destination and SignalBin relays the original request to it, signature headers included. Replay a stored capture whenever you want to run the same event again.
Details

Worth knowing before you wire it up.

Retries are separate recordsStripe retries a failing endpoint on a schedule. Each attempt is stored on its own, so you can compare the first delivery against the fifth instead of overwriting one log line.
Signature headers reach your serviceFan-out to a destination forwards the request as it arrived, so Stripe-Signature is intact and your verification code runs for real. The copy SignalBin stores redacts that header.
One endpoint per environmentKeeping test-mode and live-mode traffic on different endpoints means filtering webhook history by endpoint is enough to answer which environment an event came from.
Learn more in the docs: Headers and signature passthrough
FAQ

Common questions.

Do I still need the Stripe CLI?

You can use both. stripe trigger is a convenient way to fire an event; SignalBin is where the resulting delivery is stored so you can look at it again tomorrow. What SignalBin replaces is the local tunnel you would otherwise keep running to receive it.

Can I verify the Stripe signature?

Yes, on your own service. Add it as a destination and SignalBin relays the original request with its signature header, so your existing verification code runs unchanged. The stored copy shown in the UI has that header redacted, so verifying against the stored copy is not the intended path.

How long do events stay around?

Captured webhooks are kept for 30 days, then the body and any attachments are removed.

Start with one endpoint.

Send a request, open the payload, and see exactly what your provider delivered.

Start free