4 ms·
Ask HN: Infrastructure for provisioning, billing & supporting webapps? Buy or build?
Hypothethical situation: I have a webapp that I want to deploy on a paid subscriptions basis. I would like the sign-up, billing, and provisioning process to be as simple as possible for the user (ie. just a few clicks).
A complicating factor is that the app requires each user to have their own instance of the app. It's not a simple case of 1 user == 1 account, more like 1 user == 1 deployment. You could argue that's not a web app, but for the purposes of this thread, please let's pretend it is :)
I would like opinions on setting up the infrastructure to do this, particularly billing & invoice management, and automated provisioning. Support tickets would be desirable, but not essential.
I know I can always build this myself, but if there is something out there I can use (ie. open source) or buy, then it would be faster to get to market.
Any thoughts on build vs buy?
If buy, any thoughts on what to consider to buy?
I've looked at things like ModernBill and WHMCS, but these are more for web hosting. I don't want stuff like DNS management, email configuration, blah blah. Is there something analoguous for web apps?
Or perhaps a middle of the road approach like buy WHMCS and then write some plugins to do what I want?
Or can someone point me to any past HN posts which are relevant?
Thanks in advance!
- lux 17y agoA couple services that come to mind: http://spreedly.com/ http://spreedly.com/ http://zuora.com/ http://zuora.com/ Zuora is mucho $$$ though, and Spreedly has a ways to go before it's a full-featured solution. Their current focus I believe is on being solid with regards to ordinary subscriptions first and expanding from there. Unfortunately, for most of the projects I've done, there are too many types of transactions, extra costs, etc. so I've had to roll my own. I've built a somewhat reusable app for this now, so it's a time saver now, but it was a huge time waster earlier on.
- paulsingh 17y agoFWIW, I wouldn't recommend Zuora. I've spent the last ~8 months trying to move off of our home-grown system and Zuora's just not there yet. Unfortunately, we're starting to think about bringing it back in-house. Though, we'd probably use an open source base such as "Freemium" and build around that.
- ntalbott 17y agoHey, Spreedly guy here - we're definitely a full-featured solution, and we're already servicing dozens of businesses (we've sold 30 Kickstarts [http://spreedly.com/info/kickstart http://spreedly.com/info/kickstart] in less than two weeks, so we must be doing something right!). Sorry if we've ever given off a different impression. What you may be referring to is that we're primarily focused on time-based subscriptions for now, vs. usage based subscriptions - that much is true. That said, very soon you'll be able to pile usage charges on top of any time-based subscription, which covers what a lot of businesses need in terms of usage fees. Still not clear? Probably my fault! Hit me up at support@spreedly.com anytime and I'll gladly clarify.
- pjhyett 17y agoHaving written two billing systems in the past year, I'll never build one again. There are certainly advantages to writing your own, we generate custom PDF receipts at GitHub that customers really seem to like, but the amount of time wasted building and maintaining the system was/is fairly substantial. If I were to do it again, I'd use a hosted service that you can skin to look like your site and let them manage everything.
- davidw 17y ago... such as ... ?
- 1gor 17y agohttp://www.foxycart.com/ http://www.foxycart.com/ I have not tried it, anyone has any experience with it? Unsuitable name for me, but they say you can run in on your own domain, and skin it to match your site.
- jotto 17y agoI too have had the same experience. Think about upgrading services (and appropriately provisioning services while billing correctly and adjusting the recurring billing), downgrading services, recurring billing for monthly payments, auditing all interactions with whatever payment API you're using, then retrying API calls when appropriate. It's getting to the point where most of the man hours in my project have been on the billing system.
- ntalbott 17y agoI'd strongly echo this - it's the reason I grabbed some co-founders and started Spreedly. After spending weeks building a billing system for a client and not being at all pleased with the result (bad API, insufficient budget, etc.) I knew there had to be a better way. Billing is the red-headed stepchild of an application, never getting as much time as it needs and simultaneously taking up more time than it should - indicators that point towards outsourcing it ASAP. I think Spreedly's the best option, but even if you don't go with us, please don't do it yourself!
- 17y ago
- EastSmith 17y agoI have not use them, but isn't Amazon FPS what you are looking for? http://aws.amazon.com/fps/ http://aws.amazon.com/fps/
- bengtan 17y agoLooking into Amazon FPS now. Never heard of it before this.
- delano 17y agoIf you're okay with US-only billing, you can use Amazon FPS in conjunction with EC2's product codes. The product codes allow you to build a machine image which you can authorize each of your customers to use and you can configure how much to charge per instance hour. Amazon keeps track of which customers are running instances and takes care of the billing details (you can do this with other aspects of Amazon Web Services too). If you require non-US billing, find a billing a system that gives you an API for post-processing hooks (this isn't my area of expertise but it looks like others are offering suggestions here). You can use the API hook to launch an instance at the provider of your choice (EC2, slicehost, etc...) and also send your customer the access info. With regards to provisioning, I suggest creating your own base machine image and scripting the minor customer or instance specific stuff. This gives you a balance between launch speed (you don't have to install the same stuff every time) and flexibility. If the scripting is simple, you can get away with hacking something on your own. If it's more detailed, I'd suggest Fabric (http://www.nongnu.org/fab/ http://www.nongnu.org/fab/) if you're into Python or Rudy (http://github.com/solutious/rudy/ http://github.com/solutious/rudy/) for Ruby. Note: I developed Rudy so I'm biased :]
- mrduncan 17y agoIt appears that Amazon FPS will also handle non-US credit cards based on the following note from the pricing section: This fee schedule is for payments by US customers only. For an additional charge of 1% of the transaction amount, non-US customers can make payments using credit cards (but not using Amazon Payments balance transfers or bank accounts at this time).
- delano 17y agoExcellent! Thanks for pointing that out.
- sucuri2 17y agoI would certainly recommend amazon FPS... or do you need more than that?
- bengtan 17y agoLooking into Amazon FPS now. Looks like it's mostly billing only, but I'd certainly keep in mind as a component of a possible solution.
- secos 17y agoif you can deploy your app to Amazon, then it seems to be ideal for what you are asking for. Amazon EC2 for the "deployment" piece, Amazon FPS for the billing, and you tack on your charges...
- ntalbott 17y agoI'm biased, but I'd strongly recommend taking a look at Spreedly (http://spreedly.com http://spreedly.com). We can't help with the provisioning, but we can make the billing drop-dead simple so you can focus on getting your infrastructure right. The best part is: you can grab an account and give it a spin with no obligation, as test sites are completely free. FYI, in less than two weeks we've sold 30 of our "Kickstart" plans (http://spreedly.com/info/kickstart http://spreedly.com/info/kickstart) - a lot of businesses are hopping on the Spreedly platform, and we're cranking away to build the best billing platform around. Come on in, the water's fine!
- aichcon 17y agoHere's a relevant HN post that came to the top of Google results when I searched for 'spreedly vs amazon fps': http://news.ycombinator.com/item?id=526517 http://news.ycombinator.com/item?id=526517
- mstefff 17y agoFunny, in the same exact situation. Building a deployment app and deciding on a billing system. Was thinking about just writing a custom one or maybe writing something for Ubercart since it's drupal-based.