3 ms·
I'm a Rails guy. I've been working with it for the last 10 years and it (now) allows me to be hyper-productive. I've put other languages and frameworks into pro
by joshmn 6y ago
I'm a Rails guy. I've been working with it for the last 10 years and it (now) allows me to be hyper-productive. I've put other languages and frameworks into production but nothing allows me to focus like Rails does.
There is a meaningful amount of boilerplate that remains for any stack if you're using it for a SaaS. It may not hurt to invest in a commercially-available solution that takes care of billing.
For some products (super-hyper-MVP), I've gotten away with having a `companies` table with a `state` column which was either `active`, `inactive`, or `past_due`. I would update this manually from Stripe every day. When it became a chore (aka "I am spending an hour on this every day and my time is better spent elsewhere") I only then wrote code to handle it.
There are solutions like Recurly or Chargebee that take a way a lot of pain on a platform basis. Those may be helpful in managing some of the complexities, but they come at a cost: financial, vendor-based, flexibility.
It's important to keep in mind that your ultimate goal is to get customers validating your idea. While it's important that you conduct a meaningful transaction in exchange for solving their problem, that does not mean you need to handle every single last billing case.
Accept their money, let your solution solve their problem, and repeat.
If you want to talk more my email is in my profile.
- SmellTheGlove 6y agoThat's great insight and I really appreciate you taking the time to reply. I have it in my head that I need to get to a state where I have the boilerplate "done" - able to handle accounts, users (for areas where the two need to be 1:M or vv), admin, and basic subscription billing. I'm trying to get to the point where I have this thing, and each MVP is just an incremental build on top, but instead I have this half-baked thing and a lot of undelivered ideas. I suppose there are no shortcuts and I need to hammer at it, but as you said, not go nuts with handling edge cases.