logo

Recurly Blog

Lessons learned in online subscription billing

Pivotal Labs recently invited Recurly to present a TechTalk to a room of developers. Developers are smart people and can quickly figure out how to run credit card transactions using the numerous payment gateway APIs out there. So, we decided to present a range of topics that you won’t learn from reading documentation — advice you’ll only learn from experience.

In the next several weeks, the TechTalk video should become available. Until then, let me share a few of the key points with you.

The Basics: How a Payment is Routed

The credit card network is a crazy network in and of itself — lots of banks, credit card networks, and payment gateways & they all need to talk to eachother.  That’s where your payment gateway comes in; your site communicates with the gateway and the gateway routes the credit card transaction to the right credit card company (who in turn routes it to the customer’s bank).  In the end, there’s about 5-6 hops before an authorization is made — see our article How many companies does it take to process a credit card? for more information.

In addition to a payment gateway, you will need a merchant account.  The merchant account is best described as a special checking account for your business.  This is where all the money you collect from your subscribers will be deposited.  The payment gateway, through the credit card interchange network, coordinates withdrawing money from the customers bank account and deposits these funds in your merchant account.

Getting a Merchant Account

I think of merchant accounts as special checking accounts because they really are special.  Special as in time consuming to open and full of headaches.  When you collect money via credit cards, the transaction doesn’t end when the money is deposited in your account.  You can be liable for that money for months after the transaction is over because the credit cards want to protect the consumer. For example, if you sell $1 million of goods but then go out of business before you deliver those goods those consumers will ask the credit cards for their money back and all of a sudden you better have $1 million still in your merchant account.

If you’re working a side project, or your business is going to scale up slowly, then I don’t want you to waste much time on opening up a merchant account.  Instead, you should look at using a service like PayPal Website Payments Pro — it combines a merchant account and payment gateway in one, and is easier to apply for.  But if you’re incorporated and this is your revenue stream, you should open a merchant account with a proper bank.  And, you should budget about a month for the full process of opening a merchant account and getting the credit card agreements in place.

For internet start-ups in the San Francisco area, we strongly recommend Silicon Valley Bank (http://www NULL.svb NULL.com/) for merchant accounts.  They understand start-ups like nobody else.  Recurly spent a month trying to open a merchant account with Bank of America.  Ultimately, B of A denied us because they don’t understand e-commerce.  This is pretty common among traditional brick-and-mortar banks.

Payment Gateways

Not every bank (merchant account) will work with every payment gateway.  If there’s a gateway you really want to use, make sure it works with your bank first.  Along those same lines, not all integration is equal.  Some banks have first class integration with some payment gateways.  When a bank has a strong integration, you’ll get access to your money faster, possibly better transaction rates, and better error messages.

One word of advice, be careful signing up for your payment gateway through your bank’s reseller program.  When your bank resells a payment gateway account, you cannot keep your gateway and switch merchant accounts!  This is so incredibly important.  If you store your credit cards with your payment gateway and your bank decides to close your account for any number of reasons, you no longer have access to your credit card information.  It’s totally not worth the $200 savings off the payment gateway setup fee.  Seriously, this happened to me and nearly killed the company’s revenue.

If you’re looking for a gateway that understand technology well, take a look at Braintree Payment Solutions (http://www NULL.braintreepaymentsolutions NULL.com/).

Maximizing Acceptance Rates

Address Verification

Address Verification (AVS) is old school.  Perhaps it works differently across different payment gateways but my experience with Authorize.Net’s AVS suggests that this is old school 1960′s string matching technology.  Zip code validation only works reliably inside the US — it almost always fails on alpha characters. So, if you accept international payments, make sure your AVS will succeed on street address matches OR zip code matches, if the customer’s bank supports AVS.  That setting will help you minimize fraud and maximize acceptance rates.

If you’re only conducting business in the US, you can turn up AVS more if you like.  This advice is critical if you want to accept international transactions and minimize headaches.

Expiration Dates

Here’s an industry secret – expiration dates usually don’t matter as long as they’re in the future.  Several years ago, the credit card companies and utility companies came to an understanding about expiration dates — it’s much easier to setup auto-pay for recurring payments if the expiration date doesn’t matter.  The banks understand that if your card is stolen, they can just change the number — there’s no point in having it stop working because of an expiration date.

If you store the expiration date with the credit card information in a payment gateway (e.g. Authorize’s CIM), that card will stop working after the expiration date.  You cannot move it forward unless you collect the user’s credit card number again.  But if your billing system is smart enough, perhaps it can try moving the current expiration date forward before asking the user to update their payment details when the card expires.

1 Cent Authorizations

If your payment gateway allows you to test a credit card with a 1 cent authorization, don’t use it.  Seriously.  It will fail 2-5% of the time.  Some banks can’t believe anyone would want a 1 cent payment so they will deny it for being too small.  Instead, either use a $1 authorization or authorize the transaction for the amount you want to collect in the future (if you know exactly how much that is).  And finally, void the authorization afterwards.  If you don’t, the credit card companies may hit you with a fine — this is becoming more common since an authorization effectively puts a hold on funds in the customer’s account and they want you to release it if you don’t intend to collect.

Keep Your Pricing Simple

If you have a great product, your customers will want to pay you.  But if your pricing is too complicated, three things happen:

  • Your sales guy can’t explain pricing,
  • Your programmers (you) will spend too much time figuring out how to bill your users, and
  • Your customers will complain that they’re paying too much.

Simplify your pricing, perhaps replace overage fees with auto-upgrading tiers, and magic happens:

  • Your sales guys can explain it in a minute,
  • Your programmers (you) will spend less time on billing, and
  • Your customers will be happy to pay.

Minimize Your Time Handling Billing Support

Billing support will overwhelm you if you’re not ready.  Make sure your users can self service their accounts the moment you start charging.  If you offer more than one billing cycle or pricing plan, allow your users to change their plan with minimal hassle — otherwise they’re going to write to your support and you’ll have to do it for them, and often.

Make it easy for your subscribers to cancel.  They should not have to contact you to stop paying you — in the end they’ll just be more likely to call their credit card company and dispute the charge (that’s a chargeback).  And if you collect enough chargebacks, say goodbye to your merchant account.

Finally, if you build your own subscription billing system, you’re going to spend disproportionate amounts of your time handling past-due accounts.  You’ll get up and running quickly with your payment gateway’s recurring billing API, but you’ll spend 10x more time trying to figure out how to handle an account when a payment fails.  That’s precisely why we created Recurly (http://recurly NULL.com).

TechTalk Slides

Lessons Learned in Online Billing (http://www NULL.slideshare NULL.net/Recurly/lessons-learned-in-online-billing)

13 Comments

  1. Bryan Johnson (http://www NULL.braintreepaymentsolutions NULL.com/gateway) January 30, 2010 at 8:51 pm

    Great write up Isaac and thank you for the Braintree mention.

  2. Dan Manges (http://twitter NULL.com/braintreeps) January 30, 2010 at 9:56 pm

    Nice write up, really valuable information. So many aspects of credit card processing are too complicated and archaic. We’ve done a lot of work at Braintree to simply and modernize things. For example, look at auth.net’s AVS codes ( http://bit.ly/c0SYoY (http://bit NULL.ly/c0SYoY) ) compared to Braintree’s ( http://bit.ly/cCIwW2 (http://bit NULL.ly/cCIwW2) ).

  3. Richard C. Thomas (http://freebusinesscheckingaccount NULL.org) January 31, 2010 at 11:00 am

    Moved to NatWest when undertaking a huge expansion of our small company 6 years ago (from Barclays as they were not helpful with our plans). I don’t know why I’ve stuck with them for 6 years, the personal business manager is useless, their customer relations are non existant, their attention to our needs is zero, no calls back, no help whatsover. Don’t waste your time with NatWest. They are hopeless and I’m now going to look elsewhere.

  4. Tim Van Loan (http://recurly NULL.com) February 2, 2010 at 8:00 pm

    Thanks for all the feedback guys. Richard, please let us know if you need any help, we’re here to assist!
    cheers,
    Tim

  5. Guillaume Fradin (http://www NULL.vfxtoolbox NULL.com) February 9, 2010 at 1:56 am

    Hello,
    Thanks a lot for this post, I find it extremely interesting.
    But why do you discourage paypal for a non-side projects? I find difficult to find relevant informations to compare merchant accounts/gateways. Is it just that they apply higher transaction fees? or is there something else?

    Also, being in France, I feel that my options are quite limited if I want to use your service. What other choice than paypal could I have?

    Best,
    Guillaume

  6. david spellenberg (http://yahoo) February 19, 2010 at 9:45 am

    would like to get started in on line billing

  7. Micha Mok (http://konto-im-ausland NULL.info/) July 17, 2010 at 8:21 am

    Hello! Thanks for this great blogpost! btw: I found this site where everybody can create a bank account at an austrian bank: http://www.konto-im-ausland.info/ (http://www NULL.konto-im-ausland NULL.info/) Hope this is useful for you! Best Regards

  8. Start an Organic Garden (http://www NULL.fastorganicgardening NULL.com) September 5, 2010 at 12:17 am

    Hiya, I was reading a different problem about this on another blog a few minutes ago only. Fascinating perspective you have compared to the other 1 I read earlier but hey, it’s your opinion after all. – And I’m leaning a lot more towards yours, haha. ;)

  9. Paul October 6, 2010 at 1:14 pm

    “You cannot move [the credit card expiration date] forward unless you collect the user’s credit card number again.”
    Actually, Braintree does allow you to change the expiration date without getting the credit card number again.

  10. Anthony (http://surepaymentsolutions NULL.com) December 13, 2010 at 5:53 pm

    Great article. I’d just like to add a few things. Setting up a merchant account is not typically a painful experience. It can, however, get tricky with online and/or recurring billing. When Isaac said that the merchant account holder has liability on transactions for several months, technically, it’s the credit card processor that has direct liability. If a cardholder disputes a transaction, the processor has already paid you for the transactions, and unless they can get that money back from you, they are stuck holding the bag. That’s why many processors get uneasy in an online environment because the cardholder is not present at the time of the authorization. They also don’t like recurring billing, because in that scenario, the cardholder’s authorization is not obtained every time you bill them (only the first time you process a payment). They’ll want to see a copy of the agreement you have with your customers, and will also like to see that you’re financially solvent, in the event they need to recoup funds from you because of a cardholder dispute.

    Anyway, thanks for the post. I hope to see more in the future.

  11. Mobile Credit Card Processing (http://www NULL.mobilecreditcardprocessingequipment NULL.net) December 14, 2010 at 10:28 pm

    I think it’s important to point out that if another merchant account comes in after another, and “promises” you they can get you out of your previous contract……think again.
    I was hosed this way previously.

  12. Bill Munro January 3, 2011 at 10:05 am

    For obtaining a Merchant Account I see you have recommended Silicon Valley Bank for those in the Bay Area. Do you have any recommendations for Southern California (San Diego, Orange Counties)? Thanks.

  13. abercrombie and fitch (http://www NULL.abercrombiescareers NULL.info) June 10, 2011 at 1:41 am

    Yes…

    Likely… The easier, the better… All ingenious is simple.

Post a Comment

Your email is never published nor shared.