Payment / subscription billing options for SaaS

Hi everyone!

This is my first post here, my name is Niko and I’m not exactly a bootstrapper: I run tech and product at a small company of 10 (www.eyequant.com). We’re a frugal bunch though, and I’ve always found the bootstrapper’s perspective very helpful and applicable to us.

With that out of that way, my question that I’d like to discuss is: who to choose for SaaS payments and/or subscription billing.

We’re currently with a terrible provider (charges too much, is technically… well, less than ideal, and only settles every other month). We’re finally ready to replace them, so I’ve started looking at the options (Stripe/Braintree/Paymill and a long list of others), but I’m not sure who’s best for our situation.

I’ve found 2 existing threads, but I was wondering: do you have any more love stories / war stories to share on specific providers?

Thanks!
Niko

PS: Here’s a list of constraints / wishes I made for myself, but maybe it gives you a better picture of our situation. Sorry if this is TMI! :smile:

  • we’d prefer a hybrid provider that does subscription billing and works as a payment gateway, but I’m open to combos like Recurly+Braintree too
  • we are based in Germany, so providers should produce EU-acceptable invoices, handle VAT deductions and should be US-EU Safe Harbor certified
  • we exclusively sell to businesses
  • we mainly sell SaaS subscriptions, but also have pay-as-you-go packages: both standalone and on top of subscriptions
  • billing cycles are varied: we do monthly, quarterly, semi-annual, and annual bookings, and the odd custom case
  • we have some legacy customers on contracts which we don’t offer to new customers
  • we have customers in Europe, North America, the UK, SE Asia, and Australia
  • we sometimes give leads discounts (probs best implemented as voucher codes)
  • we accept VISA/MC/AMEX
  • we accept payments in USD/EUR/GBP
  • nice to have: taking German ELV and/or EU SEPA direct debit
  • provider should settle at least monthly
  • should offer emailing billing receipts
  • should include self-serve basics like allowing customers to update their credit card details and sending automated expiry reminders to customers
  • should support a billing email address that’s different from the account’s primary address
  • should be able to create subscriptions with manual invoicing / payment
  • nice to have: allow customers to up- or downgrade to a different plan in the middle of a month and calculate pro-rata charges
  • nice to have: allow pausing subscriptions, with self-serve ability to re-activate without entering payment data again
1 Like

I’m not sure about handling EU payments but otherwise it looks like Stripe would meet your requirements. I am using them for recurring payments and as the payment gateway with http://pageproofer.com and they have been fine to work with. Their rates are competitive, setup is easy and support has been good.

@dgrigg Thanks! One thing I can’t really tell with Stripe is whether we’d have to build the interface for upgrading/downgrading, changing card details, cancelling, downloading invoices, etc. ourselves. I would prefer to outsource that to someone who has that as their core competency, but that may be asking too much.

I’m not sure that there’s any one service that does all that.

I’ve previously looked at Recurly, CheddarGetter, Saasy, Charify and PayMill in the past. PayMill might actually be a good solution because they’re based in Germany — though they’re blatantly “inspired” by Stripe. I like Stripe but you do need to build a bit of infrastructure to support it. For example, with VAT you need to implement a webhook that adds VAT to each subscription invoice as it’s generated (probably by first checking if your customer needs to pay VAT, which is an art in itself).

We went with Recurly+Braintree and the paperwork was kinda annoying and took about 2-3 weeks. Oddly, since then we’ve never actually used Recurly and all our payments have been through cheques or bank transfers (enterprise sales, huh!)

With stripe you build that out yourself and access their api. Check out chargify.com if you want something that has a UI built out.

Haha, we have our share of manually invoiced customers that pay by bank transfer, too. Why anyone would prefer that over credit card payments is lost on me, but a happy customer is a good customer. :smile:

Sounds like quite the pain with Stripe. The more I look at it, Stripe seems not quite up to the task. I mean, they don’t even an address field on customer records!

Braintree+Recurly is more looking like an option that might be viable, and Paymill is indeed an alternative I’m eyeing closely, but their invoicing offering isn’t too inspiring either.

For me, using Recurly with Stripe (Recurly for the subscriptions, Stripe as the gateway) is a perfect combo for EU-based SaaS selling internationally (this is what I use for WiseCash - and also for freelancing projects).

Stripe provides a no-paperwork (only ID scanned via the browser, pretty neat!) gateway with a modern API (unlike WireCard), while Recurly provides a feature-rich (VAT handling, PCI SAQ A with Recurly.js, integrated dunning, all kinds of subscription goodies).

Note that I also investigated Stripe alone, but like it has been pointed out, the VAT implementation alone will be a big PITA (quoting people who did it - and I also did some research).

And goodies: I have open-sourced a Rails sample app to help out, with a series of articles (a third one is upcoming soon).

See below where I address each of your points.

we’d prefer a hybrid provider that does subscription billing and works as a payment gateway, but I’m open to combos like Recurly+Braintree too

I’d recommend Recurly+Stripe (easiest path).

we are based in Germany, so providers should produce EU-acceptable invoices, handle VAT deductions and should be US-EU Safe Harbor certified

Recurly is Safe Harbor compliant (https://recurly.com/legal/privacy/), will handle VAT (with country auto-selection, and VIES validation to remove the VAT when applicable).

You can customize the email generated for invoices (not sure about PDF).

we exclusively sell to businesses

Same for me.

we mainly sell SaaS subscriptions, but also have pay-as-you-go packages: both standalone and on top of subscriptions

You can handle one-off purchases, multiple subscriptions by customer (I believe) etc.

billing cycles are varied: we do monthly, quarterly, semi-annual, and annual bookings, and the odd custom case

This is all supported (I use monthly + yearly).

we have some legacy customers on contracts which we don’t offer to new customers

You can display only the currently offered plans, and “sign” the plan code to avoid tampering by the end user (afaik).

we have customers in Europe, North America, the UK, SE Asia, and Australia

I have customers all over the world, no problem so far :slight_smile:

we sometimes give leads discounts (probs best implemented as voucher codes)

There is coupon code support (you can limit number of use, redemption limit date, percentage or price discount etc). I used this extensively at some point.

we accept VISA/MC/AMEX

Same, no problem.

we accept payments in USD/EUR/GBP

You will have to go “enterprise” plan, this is more expensive.

nice to have: taking German ELV and/or EU SEPA direct debit

I don’t think this is supported.

provider should settle at least monthly

Stripe send me the sum of today charges in 7 days. I get money sent every day :slight_smile:

Beware that Stripe will (for now) apply a 2% conversion fee if you charge in USD.

should offer emailing billing receipts

Check.

should include self-serve basics like allowing customers to update their credit card details and sending automated expiry reminders to customers

You can generate a billing update form quite easily (integrated in my app).

I send the reminders myself, but automatic reminders are now supported.

should support a billing email address that’s different from the account’s primary address

The account is identified by a GUID (for me, to remove adherence from the email address).

There is a billing contact info, which can be different.

should be able to create subscriptions with manual invoicing / payment

Supported but in “enterprise” pricing.

nice to have: allow customers to up- or downgrade to a different plan in the middle of a month and calculate pro-rata charges

Definitely works. I even implemented (for a freelancing client) instant upgrades, but delayed downgrades at end of billing cycle, using web-hooks. Works well.

nice to have: allow pausing subscriptions, with self-serve ability to re-activate without entering payment data again

The billing information is kept on file; I think you can find a way to do that, but not sure exactly how.

Hope this helps!

– Thibaut

2 Likes

Also I don’t think I saw it listed above, it it’s worth taking a look at Taylor Otwell’s Cashier for Stripe. https://github.com/laravel/cashier

Thibaut, thanks so much for this super-detailed response! :smiley: Glad to see proof that it’s POSSIBLE to have a payments setup that makes you happy!

I have a much better (but still far from good enough) understanding of all the different pieces we’ll need: payment gateway, subscription management, invoice generation, payment reminders, retries, reporting, etc.

Recurly looks like it does much of the heavy lifting for a few of these functions, but one thing I haven’t figured out yet is whether it’s possible to register customers in their system who don’t pay by card (either manual invoicing or direct debit). We’re perfectly happy taking those payments offline, but it’d be great if Recurly could also function as the dashboard where all our subscribers are listed, not just those who pay by card. Is that maybe an enterprise feature in Recurly that I can’t see in my trial account?

Thanks again for your help, this is invaluable info!

Thanks @thibaut_barrere! I don’t think Recurly offered Stripe when we looked into it almost a year ago but it would probably be my preferred combination now.

One annoying thing about Recurly: they bundle a free gateway for U.S. customers but don’t give a reduced price if you use your own gateway (which EU customer have to and you’re likely paying for). I know it’s trivial and a bit irrational, but it just feels like I’m being ripped off a bit. Sidenote: be careful when giving free things as they can occasionally make your product less attractive

In my opinion, Stripe and Braintree are both very good payment gateways. I’ve used both and they’re very easy to integrate in a SaaS, specially Stripe.

To deal with invoices, VAT, and so on… a few weeks ago we launched Quaderno.io, an invoicing application for Stripe. Every time you make a charge on Stripe, Quaderno.io automatically creates and sends an invoice to your customer. That’s all! No code. No pain.

We’re based in the EU, so we know how messy VAT is :wink: No problem.
We detect your customer is in an EU country and we handle VAT deductions.

Quaderno also allows you to manage pay-as-you-go packages, customize your invoices, or make subscriptions with manual invoicing / payment to have all your invoices (from Stripe or manually entered) in the same application.

I’d love to hear your feedback.

1 Like

Quardano looks interesting but it looks like a reverse charging solution. Am I right? So everyone would pay the same price for my service but depending on their location etc I would allocate some of it to VAT, or not. Is this correct? Do you have any thoughts as to how this approach compares to deciding at the time of payment whether the customer needs to pay VAT or not - so actually charging a different price depending on whether or not VAT needs to be included?

Yes, you can charge as many different prices as you want.

Let’s say you have a Basic plan of $10 on your app and your VAT rate is 20% (when applicable). On Stripe you’ll create 2 different plans: Basic Non-VAT of $10 and Basic VAT of $12.

Then, when you create a new Stripe subscription on your app, you’ll select one of those plans depending on whether or not VAT needs to be included. You can even set the VAT rate you want to apply, via subscription’s metadata. And Quaderno will make the rest.

Can this help you? Please let me know if you have any other question. Happy to help.

Hello,
As a solution that meets most of your requirements, I can suggest PayPro Global:

We provide this

Our checkouts support IP geolocation and calculate all the relevant taxes automatically (i.e. VAT in Europe, HST in Canada). Our accounting team can issue W8/9 forms and invoices.
we are headquartered in Toronto, Canada, with regional offices in New York City, London, UK, Tel-Aviv, Israel and Bucharest, Romania. I, myself, am based in Berlin. We comply with all the US-EU laws and regulations.

We serve numerous B2B companies around the world

We have a very flexible subscription handling mechanism and we support pay per use (you can set it for add-ons of your service, as well as for standalone plans)

Our subscription handling mechanism can do that too. You can set-up any payment frequency you wish, as well as delay the first payment for trials.

This is no problem

We accept orders from all over the world and our support is open 24/7 with no days off. We cover all time zones.

We offer a Lead Management module, for those who abandoned the checkout (it automatically registers the email address and sends it to your database in your PayPro account, then you can create automated remarketing campaign and include a discount). Additionally we have a feature which is called dynamic pricing, where you can generate a link with a discount or create a bundle and securely send it to your lead. Please see the case study on this https://www.payproglobal.com/pdf/2013_PayPro_Case_Study_Efficiency_of_Dynamic_Pricing.pdf

We have all these along with many more global and local payment methods

We support over 185 currencies, including USD/EUR/GBP

We are currently implementing this and it will be available soon

By default, we are issuing the payout every month on the date of 15th. But if you need it more often, this is no problem. (I hope I understood this question correctly)

We do this

End-users can do this on our website in the Buyer Support section. Also, when a recurring payment fails due to an expired card, we send 3 reminders every 5 days to the customer to update their credit card. This can be changed according to your criteria.

We support this too.

Also possible

We are launching an update to our system this summer and these features are included in the launch.

Our sign-up/set-up are free of charge with no obligations and the migration doesn’t require any effort on your side. Our developer team along with graphic designers will tailor the checkout your need (full design customization, also you can add/remove any fields from the forms etc) in a matter of an hour and you will be ready to accept payments the same day. The only effort on your side will be changing the links on your website.

We don’t have any hidden costs and we don’t force you to sign any exclusivity agreements. We are flexible and we provide custom solutions along with our features. Our only fee is 4.9%+$1 per transaction. For this price you get a complete online sales infrastructure with innovative high yielding tools for your business.

You can get a free demo and see us in action here

https://www.payproglobal.com/request_demo.aspx

I run a SaaS in EU and I went with Stripe. I’m planning to add Quaderno as soon as I need it.

I would probably have chosen Recurly + Stripe, but… then I wouldn’t have been able to use FirstOfficer myself, and that’s an impossibility for me. If you use Stripe API through a 3rd part API, you are losing the opportunity to use many of the fab tools built on top of Stripe.

I think what sets Stripe apart from the other solutions is the rich ecosystem that has developed around it. If you need something, be it dunning, invoicing or analytics, there’s an app for it. In many cases, there are several apps to choose from. I see this as a huge step forward from having to pick a one provider for everything.

1 Like

I would like to recommend "Invoicera"an online billing and invoicing solution with features like task management and time tracking. I am also using this software for my business and its pretty good. And it can fulfill your most of the requirements alone.
www.invoicera.com

Check out http://saasy.com / http://fastspring.com/, I think they do pretty much everything you are looking for.

I use FastSpring and they are excellent. The cost is more than many others but you get what you pay for I think. The API is not as nice as others but I have never had a problem.

I’m currently talking to a few people to get their opinion on this:

http://www.invoily.com/

Wondering if this does anything to solve your problem?

Payolee offers subscription billing.

http://www.payolee.com/