This is mostly just ranting/getting stuff of my mind.
So I'm working on a new Billing system. To start off with it was just going to extend Stripe BIlling but I've found it needs more. The problem with a billing system is it's pretty complex and has tons of skeleton work that needs done before you can start to actually solve problems.
A MVP billing system is not a 30 day build, so far I'm about 60 days in and have tons of stuff left. So I'm left with this constant nagging feeling like this could all be a waste, which I kinda know it won't be. And I also know it's going to be a full-on B2B cold outreach sales approach to start off with which isn't going to be that much fun.
Things I know:
- Companies don't want to handle billing themselves. How do I know that, I've been at companies that didn't want to do it but did it because there was no real other choice. Stripe Billing and Recurly also show there is lots of demand for outsourced billing systems.
- Companies often sell white labels for their offerings which results in the need to send branded emails and whatnot. And they need reports to know how much to bill the client selling the white label. So my white labelling ability will be useful for those clients and save development time and financial time. I know this from handling white-labelled apps.
- Features such as the ability to notify customers that their cards are expiring can help reduce involuntary churn. Stripe billing only sends one notification, it can be helpful to send multiple. So that can be helpful to help increase revenue. I know this from surveys done by Recurly (thanks competitor)
- Features such as giving a user a credit note if they update their expiring card can help reduce involuntary churn from expiring cards. I know this from the surveys too.
- Features such as offering a discount to people wanting to cancel can also help reduce churn.
- I know account managers need to be able to find customer data for the clients they manage. So the ability to assign users to manage customers will be useful for those companies. I know this by working at companies and closely with account managers.
- I know companies like nice stats for their progress and finances.
- I know companies want to be able to keep track of and handle chargebacks.
- I know companies want to be able to edit their email templates without requiring dev work.
- I know companies want to be able to manage prices without development work. So they can change a plan to a new price via a web dashboard.
- I know companies want to be able to charge big clients custom amounts for custom plans. So the ability to have private plans with private prices will also be a big thing for many companies.
- I know companies change their prices and want to charge customers the new price to increase revenue so the ability to switch all customers on a price to a new price via stripe billing will save development time.
- I know this market is pre-validated with multiple competitors. Recurly and Lago both being billing systems, one being a closed source hosted option and Lago being an open source version.
- I know there are a few people wanting to hear back from me once I have a demo ready. Including one potential partner who has said they'll give me some intros. Which has never happened with any other product I've built.
So there are tons of things yet, still, I worry that this is all going to be a waste.
And then there are all the times I build a feature I think is pretty cool but I doubt anyone else will find cool. For example, the ability to define how emails are sent via an option in the settings. It supports MailGun, Postmark, and Sendgrid with support for using their templates and default support for using the twig templating language and system email sending. I just like that it can be done via the database values.
Or that it can import all the data from Stripe with a click of a button. It takes time obviously, but it'll allow onboarding users to import their customers and start using a lot of the functionality quickly without development work. Seems super cool to me.
Anyways. This is my rant about myself doubt. Hopefully, I can have something that is viable for people running SaaS systems using Stripe payments and/or billing by the end of this month.
I better get back to building it.
Reading this I am inclined to give you the same advice I find myself not following:
PARE DOWN and build the smallest single thing you can use to show and prove that businesses will use and pay for.
Many of the bullets you listed as features sound like they can
be removed from the MVP with no detriment, then added back to a v2 when the concept is proven
Be small MVPs in and of themselves
I suffer from the same "this tool really needs this additional feature because [other similar thing] has it" or "this additional feature is cool and will be useful so might as well build it now" problems. And because of this, I have an unwieldy project with a thousand small unfinished parts that is becoming a never ending project on top of the data I need to manually enter to make the thing at all useful to my target.
Pare down. Ask yourself what is the SMALLEST, SIMPLEST piece of the whole that you can showcase to potential customers to get buy in. Once you have users, add a new feature from your list and "re-launch" with a feature announcement. Rinse, repeat.
The advice is simple and obvious. Yet it seems so hard to follow.
Excuse me while I go wrestle my own 100 armed octopus....
Yea, I've gone down the route of the simplest thing possible before. But when you're in a mature market solving generic common problems viable seems to be a lot more than solving the main issue. I think when you're solving smaller problems then it's possible to go with very small MVPs. But if you're going for something as complex as a billing system, the very basics are very large.
For 99% of customers these are straight up required to be viable for them to use while they're building their MVP.
With more mature customers needing the ability to import data since it's not viable for them to use a new billing system and throwaway all their old data. Can they assign customers to bigger clients? Can you handle clients who are charged on an invoice basis? does it have fancy charts? Because they can't go to their boss asking to pay for something that looks basic. The list gets bigger for what is viable for them. Doe
Indie world we'll spend days building a quick MVP. VC world they spend 6-months. Because the VC world really sees what is actually required to be actually viable while I think too often as indie hackers we try to build super small and ship it and then wonder why no one wants a super basic product when there are fully mature products for the same price of less.
So for my MVP, it's a reasonably complete billing system that only supports Stripe for payments. Which sadly it's going to take quite a long time but once I have the MVP and people can visually see themselves using it, then I think it'll be better. If not I'll get a new full-time job and work on my billing system in my spare time.
Most payment gateways want you to be incorporated. I like the concept of merchant of record (MoR). Are there any indie hackers friendly MoR?
A few - Paddle is the biggest.
Some others
https://www.lemonsqueezy.com/
https://transaction.cloud/