Setting up our Stripe integration took three full days, not three hours
I thought connecting Stripe to our new app would be a quick job, but handling webhooks for subscription changes was a huge headache. We spent over 72 hours just getting the test payments to reflect correctly in our user dashboard. Has anyone else hit a wall with payment system setup and found a better guide or tool?
Absolutely build that separate service. We run ours on a tiny server that does nothing but check signatures and push valid events into a persistent queue. That way, our main billing app can go down for an hour and we never drop a single update. It adds a step, but it makes the whole system boring and reliable, which is what you want with money.
Man, webhooks are the worst part of Stripe. The official docs skip over the real world mess. You need to log every single incoming event to a table immediately, then process them in your own queue. Otherwise you'll miss updates during downtime and corrupt user data. I built a separate microservice just to catch and verify the webhook signatures before my main app even sees them. It's the only way to keep it straight.
Ugh, that's so true. I read this blog post where the guy lost a bunch of subscription changes because his queue backed up. He said you have to store the raw event first, like in its own 'incoming_webhooks' table, before you even try to work on it. Makes total sense now.
Tell me about it. We had a webhook endpoint that crashed once and just... stopped logging. Missed a whole weekend of plan downgrades. Customers got mad because they were charged for features they turned off. Now we dump every single event into a dead simple log file first, no matter what. Only then does our billing code even look at it.