←back to thread

634 points david927 | 1 comments | | HN request time: 0s | source

What are you working on? Any new ideas that you're thinking about?
Show context
brunosutic ◴[] No.41345328[source]
I'm working on a paid Ruby gem for bespoke Stripe subscription integrations. It cuts down integration time from +6 months to less than a day, and handles many Stripe API pitfalls.

Stripe has a "developer friendly" and "easy to use" reputation. But, since 2019 the EU regulation has stepped in and made things more complex with 2nd factor authentication for payments (3DS/SCA). This made payment integrations way more complex. Integrating Stripe subscriptions now easily takes 6 man-months (I'm being very optimistic here).

Also, there are some basic scenarios that are hard to get right:

- Creating a paid subscription and ensure a customer always has a card on file (this one is almost impossible). - Upgrading a free ($0) plan to a paid one. - Upgrading paid plans, eg $10 to $100/month and ensuring immediate payment. - Guarantee customer Tax location, keep the flow simple.

I made a video analyzing Stripe integration of a successful SaaS company (+$100M valuation). I first paid $30, then upgraded to their highest $2000/month plan - for free!

https://www.youtube.com/watch?v=YuXp7V4nanU

The gem I'm working on is intended to be used with Ruby on Rails apps. It covers all the above mentioned hard cases, and irons out many more Stripe API kinks. And yes, it handles the basic-but-impossible "ensure customer always has card on file if they start paid subscription".

After buying the gem you can hand-off the task to the junior developer (it's that simple). They follow the integration tutorial: follow the steps for Stripe dashboard config, do the local env config, done.

The product (Ruby gem itself) is ready. I'm now working on the web app, tutorials etc. If anyone wants an early, guided access, please email me - contact is in the profile.

replies(2): >>41345538 #>>41354627 #
vinc ◴[] No.41345538[source]
Interesting idea, getting Stripe to work perfectly in production for a global product is not as easy as it was, it really takes a while to fix all edge cases.
replies(1): >>41346251 #
brunosutic ◴[] No.41346251[source]
Sometimes it's not about the "edge cases" and handling Stripe quirks. The main design consideration for global Stripe integrations is SCA/3DS or "payment confirmations".

If you implement something, then add SCA/3DS "payment confirmations" later on, I think it's impossible to fix that.

replies(1): >>41346341 #
1. vinc ◴[] No.41346341[source]
The main pain point I remember from my biggest integration was getting all the webhook events right. There was also a thing about the order in which the events were received sometimes.