If you have built an app and you don't want to:
You need to find a way to sell your app somewhere else. Here's what I've learned so far.
Stripe offers the best payment and developer experience on the web, no doubt about it. They charge 2.9% + 30¢ per transaction, which is a great improvement over Apple's 15% cut.
However, Stripe doesn't handle complicated EU VAT tax system, which is a big downside for me. EU VAT is this recent regulation, which requires business selling to customers in EU to collect a sales tax based on customer's country, store their personal information for 10 years and send those taxes back to each country you had sold your app to.
Yeah, sounds like a nightmare! Especially when you find out, that other countries have regulations similar to EU VAT.
There are companies like Quaderno that try to make this easier for Stripe users, but it still sounds complicated. There may be good news on the horizon, because Stripe announced that they're working on a built-in solution to solve this, so I'm very much looking forward to what they come up with.
Second reason I can't use Stripe is because it's not available in Ukraine. Our government is reportedly in talks with Stripe to make it happen, but nothing official so far. But, even if Stripe was available, I don't think I would've used it until it deals with EU TAX "natively".
Which brings me to Gumroad - an incredibly popular tool to sell digital goods. Gumroad takes care of VAT and all the other taxes owed to other countries, you just focus on integrating with Gumroad and selling your app. Gumroad charges $10 per month and 3.5% + 30¢ per transaction, which is reasonable compared to Stripe, given that you don't have to deal with any of this tax stuff.
Unfortunately, Gumroad isn't available in Ukraine either, because it uses PayPal for payouts. I can use PayPal to send money from Ukraine, but it's not allowed to receive money from anyone else. I've researched this topic and PayPal said they're not interested in Ukrainian market to offer this essential feature. Bummer.
Some people in Ukraine game the system by working with a proxy PayPal account registered in a country where receiving money is possible and using that to sign up on Gumroad. The problem is, you have to trust companies who provide these proxy PayPal accounts to pay you correctly and regularly. I also have no idea if I could even receive money via a wire transfer from these companies, because Ukraine requires detailed information on where the money is coming from for every international transfer.
I definitely don't want to risk it all and be involved with something like this.
Paddle is another strong player in this market, which handles VAT and other taxes for you. A lot of my daily apps actually use Paddle instead of Mac App Store, which was a good signal. It's also supported in Ukraine, because Paddle just sends a wire transfer for payouts and doesn't rely on PayPal for that.
Weirdly, Paddle doesn't mention their pricing anywhere, instead they decided to talk the enterprise language:
You only pay a % transaction fee. Talk to the team to get a quote for your business.
I understand that like most companies who are going after more revenue, they decided to focus on the enterprise. However, this isn't super friendly to small businesses or solo creators who are just starting out.
Anyway, even considering this first impression, it sounded like a perfect solution to sell Lotus outside Mac App Store. Until I tried to sign up.
Actually, there's even no way to create an account with Paddle and start integrating it into your app in a test environment. You're required to submit an application with some information about your product and just wait for them to respond.
I signed up a week ago and still haven't heard back.
They're also one of those companies that just love automated support systems, where you can only talk to a bot and there's absolutely no way to talk to a human.
They have a support contact form, but I haven't got a reply from there either in a week. What a frustrating experience.
I can't judge the product itself, because a lot of folks seem to be enjoying it, but there's just no way to get in!
Then I remembered about FastSpring - a service very similar to Paddle. They also take care of all taxes and send you a wire transfer every two weeks, acting as a Merchant of Record. What this means is they act like a reseller, so customers are actually buying your software from them, not from you directly. This setup allows FastSpring to handle everything - from checkout to collecting and paying taxes.
FastSpring, similar to Paddle, also doesn't mention anything about transaction fees and percentages they charge, but at this point they're my only option, so I can't complain.
It was easy to sign up and their support is quite responsive, I get a reply within a few hours after each email. API also seems to be well documented, but the design of FastSpring's admin panel is stuck in 2008. Still, as long as it works, doesn't matter to me.
I'm in the process of setting things up with FastSpring and if they approve Lotus, I'm on track to release it by the end of March!
I'm planning to sell Lotus for $49, which comes with a year of updates. This means that after one year you can continue to use the app without limitations, but you'll need to extend your license for another year to receive further updates.
It seems to be the new industry standard among Mac apps and I think it's a good idea. Users don't have to enter into a monthly or annual subscription, but developers still get continued funding to keep going.
To let everyone try Lotus out before purchasing, I'm going to offer a fully-featured unlimited trial mode. Well, it's not really a trial, because you will be able to use Lotus as long as you'd like. The only difference is that it will remind you that it's an unlicensed version once a day, similar to Sublime Text and Dato.
I thought about a usual 14-day trial and then requiring user to buy a license. However, Lotus is supposed to be used by developers daily and two weeks may not be enough to see if it actually helps and that they develop a good habit with it.
Credit goes to Sindre for suggesting this idea, as he recently implemented a similar mode for Dato's trial. Thank you!
What do you think, should I charge more, less or $49 is just right? Why or why not? Feel free to share what's on your mind by replying to this email. All thoughts are appreciated!
I think I'm going to use Keygen to create and manage license keys for Lotus users. I'm quite new to this, so I'm not yet sure I need such a powerful solution or a simple DIY server would be enough for my needs. I just want to store a license key per email and have an API endpoint to check its validity.
I don't have 100% clarity on this yet, but I'll certainly share in full how Lotus implements billing when it's done, as with all other features.
I'd love to avoid license keys altogether, but I do need some mechanism to limit app updates to one year. Perhaps I could just tie license to user's email and send a hashed version of it instead of a license key to an update server?
If I get set up with FastSpring this week, Lotus should be released on April 1st. I can't say that I'm super excited yet, because I'm actually quite terrified that it won't work out and I'll have to look for other ways to charge money and it's not going to be a pleasant situation. Fingers crossed!
With that said, I can't help but look back on this fantastic path I've embarked on since October of last year. I'm so grateful to everyone following along all this time!
As a small gift to my dear readers, I will send out an exclusive 30% discount just for you before launch! Let this be a little secret between us, please don't share the discount code on social networks 🙂
Depending on how this FastSpring setup works out, I'm also planning to share a mid-week update either here or on Twitter to let you know what's happening right away.
Let's hope that April 1st launch date remains in place!
Talk to you soon!
I'm building Lotus in the open and I'm sending out progress updates just like this one every Sunday.
I won't send spam and you can unsubscribe anytime.