This product was not featured by Product Hunt yet.
It will not be visible on their landing page and won't be ranked (cannot win product of the day regardless of upvotes).

Product upvotes vs the next 3

Waiting for data. Loading

Product comments vs the next 3

Waiting for data. Loading

Product upvote speed vs the next 3

Waiting for data. Loading

Product upvotes and comments

Waiting for data. Loading

Product vs the next 3

Loading

Stripe Webhook Kit for Laravel

Idempotent, queue-based Stripe webhooks for Laravel 11

Stripe retries your webhooks, which means `invoice.paid` can arrive twice. Two queue workers can grab the same event at the same moment. And a declined card can lock your customer out while Stripe is still retrying the charge. 40 passing tests as proof. You get signature verification over the raw request body, idempotency enforced by a unique database index, queue-based processing with exponential backoff, full Cashier subscription sync, and a configurable grace period for failed payments.

Top comment

Hi Product Hunt 👋 I built this after watching a client's billing silently break for three weeks. The trigger was mundane: a Stripe webhook handler that did real work inline (calling the API, sending a welcome email). A slow response made Stripe time out and retry, the retry overlapped the original execution, and `invoice.paid` ran twice. Nobody noticed until a customer asked why they'd been charged twice. Fixing that properly taught me three things that most Laravel/Stripe implementations get wrong: 1. **An `if exists` check is not idempotency.** It's a race. Two overlapping deliveries both pass the check, and the second `INSERT` throws a duplicate key error that becomes a 500 — which makes Stripe retry *more*. You need a unique index and you need to treat the duplicate key as success. 2. **Webhook handlers must not do real work.** Verify the signature, write one row, queue one job, return 200. Everything else happens in a worker with a retry policy you control. 3. **Never revoke access on the first failed payment.** Stripe's Smart Retries are already trying again for days. Revoking immediately throws away a customer Stripe was about to recover. This is called involuntary churn and it's the largest *recoverable* revenue loss in subscription billing. So I packaged the correct version of all of it. 40 tests, and they run against MySQL rather than SQLite — because the unique index and the concurrency behaviour are the entire point, and those are exactly what differ between engines. Happy to answer anything about webhooks, Cashier, or the general misery of debugging billing. And if you've got a webhook horror story, I'd genuinely like to hear it — I'm collecting them. → https://boukataya.gumroad.com/l/...

About Stripe Webhook Kit for Laravel on Product Hunt

Idempotent, queue-based Stripe webhooks for Laravel 11

Stripe Webhook Kit for Laravel was submitted on Product Hunt and earned 2 upvotes and 1 comments, placing #154 on the daily leaderboard. Stripe retries your webhooks, which means `invoice.paid` can arrive twice. Two queue workers can grab the same event at the same moment. And a declined card can lock your customer out while Stripe is still retrying the charge. 40 passing tests as proof. You get signature verification over the raw request body, idempotency enforced by a unique database index, queue-based processing with exponential backoff, full Cashier subscription sync, and a configurable grace period for failed payments.

On the analytics side, Stripe Webhook Kit for Laravel competes within Payments, SaaS and Developer Tools — topics that collectively have 577.2k followers on Product Hunt. The dashboard above tracks how Stripe Webhook Kit for Laravel performed against the three products that launched closest to it on the same day.

Who hunted Stripe Webhook Kit for Laravel?

Stripe Webhook Kit for Laravel was hunted by Mohamed Sadok. A “hunter” on Product Hunt is the community member who submits a product to the platform — uploading the images, the link, and tagging the makers behind it. Hunters typically write the first comment explaining why a product is worth attention, and their followers are notified the moment they post. Around 79% of featured launches on Product Hunt are self-hunted by their makers, but a well-known hunter still acts as a signal of quality to the rest of the community. See the full all-time top hunters leaderboard to discover who is shaping the Product Hunt ecosystem.

For a complete overview of Stripe Webhook Kit for Laravel including community comment highlights and product details, visit the product overview.