I looked into Zuora (really expensive) as well as some other systems like Chargebee, Recurly, etc. I ended up building it with Stripe Billing, since it was actually quite straightforward and offered a lot of flexibility with features. I think a benefit of using something like Chargebee though is that you can also take Paypal