I am pleased to announce that the code that powers the Potion Factory Store is now available to anyone, free of charge, in the form of an open source project.
When we first launched Podcast Maker back in September of 2005, we just went with Kagi without giving much thought to the issue. We wanted to get our software out ASAP and payment processing was the last thing on our mind. After all, if it's good enough for Brent Simmons and NetNewsWire, who are we to argue, right?
Well, it turns out that even Brent can be wrong sometimes. After using Kagi for a while, it became pretty clear that it was horrible. Lets just say that the stress of using their web interface was too much to take after just a few months (it could be better now, but I don't care anymore). We had to find a new solution and none of the other similar services looked attractive so I buckled down and rolled my own prior to releasing Voice Candy.
The code has served Potion Factory faithfully for over a year now, which is more than you can say for a lot of rails projects. But! it could use some improvements. Writing store code is not the primary business I'm engaged in and it means that the store has the bare minimum needed to run an ISV business. It also means that the little code that is in there could be made more elegant. I hadn't even heard of REST back in 2006 (gosh, a whole year ago!) and I haven't taken the time to refactor the app to fit that paradigm, because, you know... working on actual apps that put bread on my table is better use of my time.
The important thing though, is that it works for me, rather well too if I can say. It's not a turnkey solution, so don't expect to get up and running in five minutes, but if you are not afraid to get to know Ruby on Rails and need a basic store that you can mold into shape, this could be right for you.
What it provides is payment processing through a PayPal and/or Google Checkout merchant account, an administration interface that lets you look up orders, add orders manually, resend purchase receipts, generate coupons, and look at basic sales statistics. It also has a "lost license page" so that users can service themselves.
What it doesn't provide you is a license key generation algorithm. If there is enough interest in this, I'm open to gathering forces to develop a really good one that we can distribute amongst each other outside of the open source project. Aquatic Prime is an obvious candidate, but I actually took it out of the store and my softwares after discovering that it caused a higher than necessary support load.
The project page is rather sparse right now, but I plan to put up a forum, wiki, or a mailing list to encourage collaboration to make this the best store for selling software for ISVs.
Please email me if you need help. I would appreciate hearing from you if you decide to implement your store with it as well.