In the latest episode of Core Intuition, Daniel Jalkut talks about switching from PayPal to Stripe as the payment method for his Mac app MarsEdit. This sparked a discussion on the corresponding Slack team about the pros and cons of different ways to handle selling your digital products.
European VAT rules, accounting and other distractions make this harder than you think!
In this article, I will outline the common payment options for digital products and their individual advantages and disadvantages. This is from the perspective of a Mac developer, but apart from the licensing aspect, it applies to all other digital products as well, including SaaS subscriptions and online courses.
Note that I am neither a lawyer nor an accountant; these are just my personal recommendations.
Fees: None (I guess)
This used to be the state of the art in accepting payments — in 1992.In 2017, it is the fastest way to kill your business.
Fees: 2.9 % + 30 ¢/transaction (Stripe, PayPal, Braintree)
You could either just have a PayPal “send me money” link on your website, or create a payment form with an automated process that delivers your license code.
This might be the option that naturally comes to mind, but keep in mind that you are still responsible for creating proper invoices and charging (and deducting) VAT in countries that charge it, including about all EU countries — which also charge varying VAT rates per country.
If you are based in the US, you might get away with ignoring the EU’s VAT rules altogether, but I don’t recommend that. You would be in good company there — looks like Panic and The Omni Group have just that approach — but I still don’t recommend it. (I’m German. We really like to avoid risks.)
Fees: 2.9 % + 30 ¢/transaction (Stripe) plus $31/month (Taxamo), $31/month (Octobat) or €29/month (Quaderno)
If you ask me, this is a much better approach. VAT is such a complex matter that it’s really hard to get right, and as with all taxes it is something you don’t want to mess up. With some services (such as Quaderno), you might also have some of the accounting and invoicing done for you.
Fees: 5 % + 50 ¢/transaction (Paddle), slightly more with FastSpring, $10/month plus 3.5 % + 30 ¢/transaction (Gumroad)
In this case, your reseller acts as your Merchant of Record. This means that they are the actual business taking your customers payment, and thus responsible for creating a proper invoice, dealing with VAT, and so on. At the end of the month, you just get a nice lump sum transferred into your bank account, which also makes your accounting easier.
This is actually the option I use: I use Paddle, which lets me avoid dealing with all the payment stuff, and combine it with a completely homegrown licensing system. That way, I retain full flexibility in terms of pricing, discounts and licensing. I can offer paid upgrades, limited-time licenses and whatever else the business requires. And in case there’s a problem with one reseller, it is still fairly easy to switch to another one as just the payment-handling part (but not the licensing) is affected.
To be honest, Paddle isn’t terrific, either. Their checkout process looks nice and is very straightforward, but they have been slow in implementing new features and there are a few edge cases I’d like to have handled differently. I’d say they definitely are the service that sucks the least, though ;-) FastSpring is fairly similar to their service, though, but costs a bit more. (Their pricing page no longer shows their pricing, but it used to be around either 8.9 % or 5.9 % + 95 ¢/transaction).
Gumroad might look like the cheapest option, but keep in mind that their service was not built for selling Mac apps or subscriptions. So while it might be possible to make these work with Gumroad, you’ll likely have to jump through more hoops than with Paddle or FastSpring to accomplish the same goals.
Fees: Same as above — 5 % + 50 ¢ (Paddle)
This is the most convenient option, most similar to the Mac App Store. Just plug in an SDK and have that deal with all payment and licensing issues.
For example, the reseller Paddle also offers an SDK to handle licensing for you. To be honest, I tried to use their system but found their licensing system way too inflexible for my needs (unless you replace most parts with your own, custom solution, in which case you could just build the whole thing yourself).
However, you could also use a third-party licensing system such as DevMate. In fact, DevMate was recently acquired by Paddle. Given that DevMate was originally developed by the great people at MacPaw, makers of the Setapp service), I would imagine their system to be in much better shape than the original Paddle SDK.
However, in either case you are locked fairly tightly to a specific reseller when you use their licensing system. DevMate might still be compatible with FastSpring, but I would still be a bit worried in case you’d ever want to switch resellers or migrate to a different licensing system.
These are the payment options that I could think of. For my app Timing, I went with a combination of Paddle for payments, invoicing and VAT handling plus my own, homegrown, licensing system.
For most Mac developers, it would be wise to combine a reseller such as Paddle or FastSpring with an open source licensing system such as CocoaFob (also see my Python-based CocoaFob license generator and server) or Aquatic Prime. Both are fairly easy to integrate. This lets you avoid worrying about all the payment problems, while retaining full control of the licensing system. (Alternatively, my friend Christian Tietze wrote a book on how to sell your Mac app with FastSpring.)
What licensing system do you use? Are there any points I missed? Let me know with a comment or a tweet to @daniel_a_a!