Chrome extension · free
Test the payment failures your provider's sandbox can't.
Finxture runs deterministic payment scenarios — duplicates, retries, out-of-order webhooks — against your localhost. Signed like the real thing. No magic amounts. No ngrok.
Your checkout is hosted by your provider and your backend consumes webhooks? You're exactly who this is for.
[x] signature accepted
[ ] awaiting retry
[!] duplicate processed twiceA provider sandbox is built to prove your golden flow works.
That is a real job and it does it well — one clean payment, start to finish, before you ship. It is also the easy half. The other half is everything that happens once the payment stops being clean.
- [ ]duplicate webhook delivery
- [ ]out-of-order events
- [ ]a webhook that never arrives
- [ ]retry after your 500
- [ ]a fraud decline that isn’t a magic card number
Every one of those has exactly one correct outcome in your own database, and the only way to know your code produces it is to make the thing happen on purpose and then go and look at what you stored. Magic test values work the other way round: they encode the outcome into the payload. Your test suite shouldn't depend on 4000 meaning “declined”.
So the missing piece is not another way to fire an event. It is an agreed set of the cases worth testing at all — which is what Finxture is trying to become.
How that compares to Stripe test mode, the Stripe CLI, and stripe-mock
How it works
- 1Install the extension
- 2Point it at your localhost webhook endpoint
- 3Pick a scenario and run
Finxture ──signed webhook──> localhost:3000/webhooks/stripeEverything stays on your machine. The extension talks only to the endpoint you configure.
Scenario catalog
- [x]Payment succeeds (available)
- [x]Duplicate payment webhook (available)
- [ ]Declined payment (coming soon)
- [ ]Requires customer action (coming soon)
- [ ]Out-of-order webhook delivery (coming soon)
- [ ]Partial capture (coming soon)
- [ ]Multicapture (coming soon)
We tell you what should happen on your side.
- [x]acknowledged with 2xx
- [x]second delivery treated as no-op
- [!]charge recorded twice
Every scenario ships with the checklist of what your application must do — and verifies what it can observe.
We can't see your data. By design.
- Webhook bodies and secrets never leave your machine.
- Requests go only to the localhost endpoint you configure.
- No accounts, no payload collection.
What's next
Consistent API state + webhooks, no tunnels — in development.
Scenario updates will be announced here — subscription coming soon.
Frequently asked questions
- How is this different from Stripe CLI?
- Stripe CLI replays happy-path events officially and well. Finxture runs deterministic failure sequences — duplicates, reordering, omissions — with verdicts about your app's behavior. They complement each other.
- Is it free?
- The extension is free. A paid cloud sandbox with consistent API state is planned.
- Which providers?
- Stripe-compatible today. The canonical scenario model is provider-neutral by design.
- Is it safe to use?
- Synthetic test data only, localhost-only delivery, and the extension visibly discourages production endpoints.