When implementing a Paywall in an organization there are a lots of changes needed. There are editorial changes, marketing aspects, tech support and much more. I can’t say I know much about the editorial changes a newspaper must go through when implementing a paid-content strategy, but we’ve been part of quite a few technical teams setting up the logic for paid-content and we’ve learned a few lessons I’d like to share.
Payment is easy
When planning paywalls quite a few newspaper fear this. None of the ones that we’ve talked to have had any problems implementing payments. It’s become a very well understood commodity and all the kinks have been worked out by the e-commerce market. Do not fear this and do not give away big chunks of your revenue to have someone handle it.
Access control is harder
Implementing access control is considered a much more difficult problem. There are three ways to solve it:
Access rules need to be simple
We’ve implemented quite a few sets of access rules in various paywalls. Over time we’ve noticed that the complex ones tend to get simplified as organizations struggle to convey the rules to their readership. Having three different kind of metered quotas along with time variations isn’t easy to communicate. Implementing it is SMOP - Simple Matter Of Programming.
Generally there are two subtopics to this. Authentication and authorization. Authentication is pretty well understood these days and there is lots of software that can help you. Authorization is where you should spend the time.
Devops makes sense
If you decide to put the paywall inside Varnish or you decide on putting any slightly complex Varnish configuration you’ve added logic in the edge caching layer. The changes in the edge layer have to match up with frontend and backend code. So, when you deploy you want the same people and the same process to be able to deploy Varnish configuration and backend code. Please, let the developers own the VCL configuration.
Tests should include Varnish
Since your application now spans Varnish your have to make sure to test it. This will increase the complexity of your test suite. However, there isn’t really that much magic. Any HTTP test tool should do. A tool you might want to consider is varnishtest, the special tool built for testing Varnish and VCL. Our own paywall has tests built with varnishtest.
Please don't hesitate to get in touch if you have some paywall challenges of your own. We may be able to help you out or give some good advice.
This picture is (c) Lee Roylland