Don’t Build Subscription Billing for Your SaaS Business. Use Chargebee, It’s All the Buzz
Ready to add recurring payments to your SaaS business? We did all the research and went with Chargebee. Here’s our product review showing how on how easy it was to implement, why it works better than Recurly and how it’s so worth the few extra bucks over Stripe.
Chargebee Product Review
I’ve been building SaaS companies most of my career. I’ve deal with subscription billing and recurring payments in every one of them. In 2004 when we launched Velocify, we had to build it from scratch, and it sucked. Nowadays there are subscription management software companies that do all the work for you. Chargebee is the one we chose when we were ready to add billing to Markup Hero and we’re happy we did. This is our story.
Doing Research on Recurring Payments
We had an idea of what was important to us before we picked Chargebee. I told my partners that flexible coupons were critical including the ability to do lifetime, annual, monthly, discount by percentage, discount by dollar, multi-use, single use, end date and require credit card or don’t. Turns out there are ton more permutations for coupons, but that is what we wanted to start with. We knew there were a bunch of solutions out there but we tasked our head of engineering with researching them before we picked. He built a Notion sheet to compare the options; we narrowed down to four, here is the spreadsheet.
Our preference was not to build out a recurring system and couponing from scratch. Even if we used free libraries, it would be some work to build and maintain. While the monthly cost for Authorize.net was a bit less, given that didn’t have any of the features we wanted, we really only compared Chargebee, Stripe and Recurly.
Stripe was a leading option because we already used Stripe > Atlas to setup our Corporation and we got some great startup benefits for that. And since Stripe had pretty much everything we wanted, it seemed like the way to go. Both Chargebee and Recurly require a payment gateway anyway, so we were likely using Stripe in our end solution no matter what way we went.
But Chargebee had something the others didn’t — a startup plan called launch. Getting accepted to this program required some work, but we got in and it pushed Chargebee up the list quite a bit. Additionally, we really liked the support thus far and the integration documentation appeared clean and understandable.
We all like the idea of working with a company that is laser focused on one thing, subscription billing, because they’re more likely to build features that meet our growing needs. Whereas Stripe does more than that. I’m sure we would be fine with Stripe too, but we chose Chargebee and we’re glad we did. However, this article is less about the selection process and more about the product itself. So here’s what we got.
How to integrate and implement Chargebee?
Implementing the subscription flow for our product via Chargebee was a relatively simple process as compared to legacy payment gateways such as Authorize.NET. And with the additional features we got out of the box it kinda doesn’t compare. Their API documentation is very detailed and for simple setup they offer pre-built UI components which is probably good enough for most companies. Although, we opted to build our own to match our user experience perfectly.
Chargebee also provides multiple officially supported client libraries. We used their .NET library for Markup Hero. Their payment method API is robust and allows you to add more payment methods in the future such as PayPal or a different credit card processor without touching any other layers of code that are responsible for the subscription and customer entities.
In addition, their more advanced (currently beta) feature “time machine” lets you roll-forward subscriptions. This came in really handy when I wanted to test the cancellation, card expiration and free trial lapse flows. The only minor thing we wanted Chargebee to implement in their API is a way to not only validate a coupon code, but also calculate the post-discount price as it applies to a plan and the actual discount percentage. We ultimately found a workaround, but would have been nice.
Setting Up Products and Addons
For Markup Hero, we only have 2 products at the moment: Monthly and Annual. We don’t currently use the addons feature, but I can see how useful that could be for a company that sells a base product with several upgrade options that aren’t necessarily part of a more expensive package. Or it can be used for ala-carte offerings which is an effective way to maximize revenue per customer (we used that model at Velocify and it was very effective). Long term, we may have more options and we may end up using the addons features.
The plan offerings themselves are super flexible. They aren’t simply limited to monthly or annual like we offer. Instead, you are able to setup plans for just about any imaginable SaaS pricing model (they have really thought through everything). You can easily create billing cycles that run monthly, daily, every other month, annually, every 6 months — whatever. And the pricing model can be different for each plan meaning you might charge a flat fee like we do, or you may need tiered pricing (i.e. costs less per user as you add more users) or stair-stepped or by unit.
What are the coupon and discount code options with Chargebee?
Coupon codes are native to the Chargebee platform and they really shine in this area. This was an important factor for us as we planned to do a range of marketing programs and partner offerings that required various coupon permutations.
It may seem trite, but we really liked the naming model for coupons. We can create a unique and descriptive coupon name which allows us to keep coupons organized.
Then the actual coupon code can be more user-relatable or random. And finally we’re able to specify the invoice name, which is actually printed on the receipt to the end user.
Setting up the actual discount is very simple, but also quite flexible.
- Set the Discount Type: Percentage or Fixed Amount
- Apply to Discount To: One or more specific products or the entire invoice amount
- Duration Type: One time, forever or for a specific number of months
- Valid Till: Specific date and/or maximum redemptions
These four settings above basically let us create any coupon, for any scenario. It’s pretty slick. Here are some examples:
- Lifetime Coupons
- Discounts on monthly and annual plans
- Free months on a monthly plan
- Free months on an annual plan which tabulate the total annual fee based on the free months discount
- Percent off monthly or annual plans for just the first month or for every month
- Fixed dollar amount off a monthly plan either every month or for a specific number of months only
- Coupons that can only be used a certain number of times and expires by a certain date
We also implemented the couponing system so that we could pass a JSON string into the coupon API so that we could decide on a coupon-by-coupon basis whether we actually collected a credit card or not. For example, we wanted to NOT require a credit card for users that got a 1 year free coupon (for our early adopters). This lowers barrier and created a higher conversion rate. Yes, we’ll have to collect credit card after the first year, but it was a marketing decision and we’re glad we could do it.
For other coupons we can require a credit card, even if the first 3 months are free or they aren’t paying for a period of time (i.e. like a trial).
Generating coupons can also be done in batch. Chargebee doesn’t have a random code generator, but that’s simple and there are tons of websites to do it. But they do have a bulk importer and they have a concept of coupon sets which keep a large quantity of coupons organized and out of the core view which was essential for our Appsumo campaign where we had to generate 10K coupons.
Would Be Nice: When an order is created, an email is auto-generated by Chargebee to user admins. It’s nice to get notified when someone buys your product. But if a coupon is used, they don’t indicate that on the email. I would love to see the coupon code and discount amount shown in the actual email.
Recurring payments dashboards that will wow executives
If you like dashboards, Chargebee has you covered. They have built in KPI cards that showcase the most commonly asked metrics: Monthly Recurring Revenue, Active Subscriptions, Net Revenue, Net Payments and Unpaid Invoice.
Love This: I always like software that has little “info” icons to give you instant details on what each metric is and how it’s calculated. Chargebee does that.
They also give a bunch of charts for commonly used metrics:
- Sales: Total value of invoices generated during the period
- New Sales: Total value of new invoices generated during the period
- Payments: Total payments received during the period (not including refunds)
- Refunds: Total amount refunded during the period
- MRR: Recurring plans + Recurring Addons — Recurring Coupons (not including refunds)
- Signups: Total number of signups acquired during the period
- Activations: Total number of subscriptions activated during the period (includes reactivations)
- Churn Rate: Number of subscriptions cancelled this month / Total number of Active subscriptions at the beginning of the month
- Sales Reversals: Total value of credit notes generated during the period
- CMRR: MRR + Scheduled changes for the month (scheduled changes include upgrades, downgrades, cancellations, and activations)
Bonus: Chargebee has what looks to be a side project? Or a partnership? With a product called Revenue Story — a much more sophisticated reporting platform specifically made for Chargebee customers. I didn’t spend much time there as it’s deep — super deep — but it looks impressive. Of course we’re in startup mode right now, but I can see how this would be pretty powerful for larger SaaS business.
Managing customers, refunds and other recurring billing management
Like everything in Chargebee the customer interface is simple but perfectly useful. In fact, this is one of the best aspects of Chargbee, it’s not bloated. It has just the right amount of bells and whistles to run a small and large SaaS recurring business. No fuss. No hassle. The two primary customer screens are Customers and Subscriptions. They are actually fairly similar, but both useful:
This screen is designed to give a quick glance at users, the status of the plan they’re on and payment details.
This screen is designed to give a quick glance actual subscriptions with renewal dates and MRR.
What kind of reporting does Chargebee have?
In addition to the dashboard and the integration with Revenue Story, Chargebee has a ton of built-in reports — more than we’ll probably end up using, but it’s nice to know they’re there. They break down reporting into four sections: Subscriptions, Accounting, Revenue Recovery and Transactions. These basically cover everything you need to manage a subscription software business.
This section has 7 reports but I particularly like the ARPU (Average Revenue Per User) report as this is something that often can be difficult to nail down for SaaS subscription businesses. Revenue per user is an essential metric to understand profitability and factor in your marketing and user acquisition costs.
Reports Include: Subscription Summary, Subscription Count, Monthly Report Card for Plans, Monthly Report Card for Addons, Renewal Summary, Refund Summary and ARPU
Accounting for a SaaS subscription business can become a bit tricky, especially as you offer a range of coupons, trials, lifetime plans and more. Chargebee makes this aspect of running your business more manageable and your CFO will thank you. I particular like the Revenue Recognition report; although this, and some others, are part of an upgraded plan we’re not on at the moment.
Reports Included: Account Summary, Revenue Recognition, Deferred Revenue, A/R Aging, Tax Summary, and Tax Exemption
Revenue Recovery Reports
For more sophisticated SaaS businesses these reports offer visibility into cart abandonment and the implications of uncompleted transactions. Seeing abandoned and recovered carts helps you learn where your checkout flow might be breaking down. Note, these reports are part o the premium packages as well.
Reports included: Abandoned Carts and Recovered Carts
These reports give a picture of the specific payment transactions. You can see when transactions are happening and are useful for testing and customer support needs.
Reports Included: Transaction Summary, Transaction Trends
Final thoughts and good times to come
Overall we’re extremely happy with Chargebee. And while Markup Hero is an early stage SaaS business, I’ve run large scale subscription software companies in the past and clearly see how Chargebee will save us a ton of time and headache (ugh, where were you in 2004 guys, ha).
And even if you have a massive dev team at your SaaS business, it still may not make sense to build all this out. After all, it’s hard enough to become an expert and best of breed in one software category — it doesn’t make sense to do it for the subscription management category as well.
For us, and probably for you, focusing on our core business is where to spend resources, and leave managing subscriptions too Chargebee.