What is the best option for taking recurring payments?
If you are mostly targeting US, Stripe.
It is well-documented and works well.
Even if you are targeting other countries, Stripe will likely still work fine. They support quite a few countries.
If you don't have access to Stripe then try Paddle.
I'm trying to move away from Paddle. While it's good for start, it has a lot of limitations that can really slow down the business once it starts to scale.
If Stripe is not available in your country you can try Braintree or Paymill in EU. Paymill however requires a lot of paperwork and activating your account can take weeks (I've been there).
I should have added that I am using netlify to host the website and I guess I need PHP to use stripe. Is there a way without coding to have recurring payments on stripe?
You don't need PHP. You can use JS as well. There are a number of languages supported.
And there isn't really a way to do recurring subscriptions without coding. You have to take in CC info on the frontend, send a request to Stripe's servers, receive a token back and then send that token to your backend to create the subscription.
nice one - thanks for the info. I think I can't use netlify then if I need to do that.
You should be able to. The frontend bit is just a JS file you include then write all of the token stuff and it runs on the frontend, then the token can be passed back through an API call just like any other API call done on the frontend.
^ Stripe's quickstart of v3 (latest) of the front end bits.
So I've used a number of different ones (including a lot here...so I won't mention those again). One that I haven't seen mentioned is Recurly. Integrates well with most eCommerce platforms, has some strong analytics out of the box, and very configurable (good documentation too).