Droves of WordPress professionals are building businesses that focuses exclusively on accepting recurring payments.
Monthly recurring revenue is the holy grail. If you can attract customers to pay you every single month instead of one-time payments, you can scale that effort into a comfortable, successful and low-stress business.
Most premium plugins also use this model. Most are moving away from selling one-time purchases and opting into yearly (or monthly) renewals for continued use of the plugin and ongoing support.
We’ve seen the same trend happen with theme shops. For a long time, themes have been using the model of yearly payments to support ongoing development of new themes and fueling support.
Now he sells a single monthly subscription so his students can pay a small, monthly fee for access to all his courses.
And there’s great software like Freshbooks that make accepting subscription revenue really easy.
And of course we’re big fans of monthly recurring revenue. Productized services like WP Buffs are successful in huge part because of our focus on MRR. We’re such big fans of the business model, we launched the WPMRR video course and WPMRR WordPress podcast!
But the fact remains…plenty of folks are still wondering how should I accept recurring payments on my WordPress site?
And because so many people from so many different corners of the WordPress universe are seeing success, let’s share some of that knowledge, help you with accepting WordPress recurring payments and grow a business that really rocks it for you.
Picking a Payment Provider ⛏️
You’ll need to decide if you’ll be accepting payment via credit card.
If so, you’ll need to sign up for a payment processor to hold onto all your customer data and credit card information safely.
It’s not available everywhere in the world, but we use Stripe. It’s the gold-standard in this area and if you have the option, we’d go with it.
If you can’t use Stripe for whatever reason (country you’re working in, etc), here are some Stripe alternatives that you can work with.
Accepting Recurring Payments via PayPal
PayPal makes it easy for you to accept recurring payments — you can even create a button that offers your users the ability to set up a subscription with you. To accept recurring payments via PayPal, you will need a PayPal business account. You can sign up for one free of charge.
Once you have signed up for your PayPal business account and logged in, you are ready to create the button you will embed on your site, allowing you to sell subscription-based products.
In the top-level navigation bar, go to Tools > Business Setup.
You will be redirected to the Business Setup page, where you can request funds and set up payments.
Scroll down, and find the Offer PayPal checkout on your website option. Click Set Up Online Payments to proceed.
You will be asked how you want to process card payments on your website. You can opt to process all payments via PayPal, or you can add PayPal as an additional method.
Next, you will be asked how you want to set up PayPal on your website. If you are using an app (such as an e-commerce platform) that integrates with PayPal, you can choose Option A. However, we will proceed with Option B, which will generate the ubiquitous PayPal button with which everyone is familiar.
Next, select the type of button you would like to add. In this case, we will choose Subscribe, though Automatic Billing might be a better fit for some use cases.
You will be prompted to configure and set up the behavior for the button. PayPal asks you for parameters like:
- The item name
- The billing amount each cycle
- The length of the billing cycle
The Create PayPal payment button screen will walk you through all fields, both mandatory and optional. When you’re done adjusting the appearance and behavior of your button, click Create Button to proceed.
Actually Picking the Right Recurring Payments Solution ✅
This is a really important step to take before scrolling down and picking a solution to accept recurring payments.
Will you be using a plugin to accept your subscriptions right in WordPress?
What about using 3rd-party software instead?
What about a combination of the two?
Your unique situation will determine which recurring payment WordPress solution will be the best fit for you.
Chris Lema is one of those people in the WordPress space who you pay attention to when he speaks. He has a lot to say around growing a subscription business and accepting payments online.
And if you want to hear more from Chris, tune into his episode on the WPMRR WordPress podcast.
WordPress Recurring Payment Plugins 🔌
Let’s go through all the options for accepting recurring payments on your WordPress site. They’re each unique and great for specific situations, so make sure you choose one that is best for your unique situation.
1. WP Simple Pay
If you’re trying to find the simplest way to accept recurring payments on WordPress, look no further. As the name suggests, WP Simple Pay allows you to accept recurring credit card payments extremely easy.
It’s run by our friend and WordPress pal, Phil Derksen! We’ve often hung out at events like MicroConf & PressNomics. Plus when we started WP Buffs, we used WP Simple Pay to accept recurring payments ourselves so we know it’s a terrific plugin!
Before you get started with WP Simple Pay, you do need to know that it connects directly into Stripe to help you accept credit card payments but it does not allow PayPal payments. If not accepting PayPal payments is a deal-breaker for you, keep reading through your other recurring payment plugin options below.
Phil even knows how important it is for people to see exacty how the plugin works before they buy it. That’s why he’s set up a full working demo so you can play around with the plugin yourself.
Option 1: Minimal set single plan
This option lets customers sign up for a single recurring plan. This is the simplest possible form with just a button for people to press without any additional options. Great for minimizing analysis-paralysis and getting people through checkout quickly.
Option 2: User selects plan
This option is a bit different and allows customers to select from a small set of predefined recurring plans from your Stripe dashboard.
Option 3: User selects plan & custom fields
This is about as customized you can make your WP Simple Pay recurring payments. With this option, you can add any number of custom fields as well as a Stripe plan selection. If you need to gather additional data from the customers signing up for your subscription, this is the perfect choice.
Option 4: Custom amounts
This cool option lets donors or customers select or enter the amount they want to automatically pay on a recurring basis. This is perfect if you’re selling a pay-what-you-want subscription like HeyMarketers or want to accept donations through your website with WP Simple Pay.
Option 5: Setup fees and free trials
Have high onboarding costs or want to give customers a sneak peek before starting their recurring payments? No problem. WP Simple Pay allows you to add initial fees or free trials to subscription payments.
In addition to all these options for accepting recurring payments via Stripe, WP Simple Pay has features like a drag-and-drop form builder, discount and coupon code options, Apple and Google Pay, customized payment confirmation emails and as we’ve discussed already, tons of subscription payment options.
And did we mention how awesome Phil and his team are?
— Phil Derksen (@philderksen) October 3, 2019
2. Easy Digital Downloads
If you’re selling digital products like eBooks, online courses or 24/7 care plans, Easy Digital Downloads is the plugin for you to accept recurring payments via WordPress with.
We currently use EDD as our checkout system of choice, so it comes highly recommended by us!
Plus we’re actually great friends with all the folks over at Sandhills Development, the team behind Easy Digital Downloads. Here’s Kyle and I hanging out at MicroConf!
Here’s our checkout page at WP Buffs. As you can see, you can easily set up subscription payments and allow people to checkout via credit card or PayPal.
With all kinds of integrations with 3rd-party software and payment providers, it will work seamlessly along the other software you’re using the run your business.
Like the other plugins listed here, EDD has robust subscription management, discount code functionality and data reporting.
And with 2.5M+ downloads and an almost perfect 5-star rating, you’ll be in great hands with their plugin for accepting recurring payments via WordPress.
Freemius focuses on helping users sell WordPress plugins and themes. It helps you with things like implementing a secure checkout, setting up a software licensing process, and more. With Freemius, you can manage all this (and more) using your WordPress dashboard.
One feature that would be of interest to you is its support for recurring payments and auto renewals.
Freemius’ recurring payments feature supports multiple subscriptions for each user, automatic renewals, monthly subscriptions, and more. You’ll be able to implement a trial program, send reminder emails to your customers, and offer coupons and discounts.
One of the best parts of Freemius is its cost: zero. As its name implies, the software is free to use.
4. WooCommerce Subscriptions
If you’re running a WooCommerce shop and need to collect recurring payments, WooCommerce Subscriptions is a fantastic option. You can use this for recurring purchases that you’ll send to customers on a monthly basis, monthly or yearly memberships to your online store and much more.
While this plugin is a bit more expensive than WP Simple Pay, it integrates with 25 payment gateways, one of which you might use. Plus it has some other cool features like automatic rebilling on failed payments, built-in renewal notifications and detailed reports for you as a WooCommerce store owner.
WooCommerce Subscriptions also includes features like free trial and sign up fees as well as subscription management.
Subscription coupons and confirmation emails are of course included in this powerful plugin.
But two features that really differentiate WooCommerce Subscriptions are synchronized payments and multiple subscriptions. Never has it been easier to set up customers’ subscriptions exactly how you want them and also allow them to sign up for multiple recurring payment options at one time.
They also offer a money-back guarantee, terrific support and secure payments.
Bonus: another strong option for accepting recurring payments via WooCommerce is the YITH WooCommerce Subscription plugin ($129).
5. WordPress PayPal
If you’re looking to do nothing more than set up WordPress recurring payments via PayPal, WordPress PayPal is exactly what you’re looking for.
While most serious websites that accept payments on WordPress accept credit cards, this may be a great option if you’re still in proof of concept or are simply seeing if people are willing to buy what you’re selling.
But it’s also important to note that people can check out via PayPal and pay through PayPal with their credit card. It’s just not quite as professional as accepting credit cards right on your website.
This plugin allows you to very easily add PayPal Buy Now, Donation, Add to Cart or Subscription style PayPal buttons directly to your website.
And you can manage all your PayPal buttons and WordPress recurring payments right from your WordPress dashboard.
The plugin uses easy-to-use shortcode so adding these PayPal buttons to your site is almost as easy as copying/pasting.
[wp_paypal button=”subscribe” name=”My product” amount=”1.00″ recurrence=”1″ period=”M” src=”1″]
WHMCS offers web hosting automation tools to its customers, and one aspect of its product suite is the ability to automate billing. Not only can you send out invoices, you can collect payments and taxes, remind users of upcoming or overdue payments, and more.
WHMCS offers integration with all major payment gateways, which means you can accept most forms of payment. Furthermore, WHMCS utilizes off-site gateways, which means that you don’t have to worry about PCI compliance (the third-party vendor, such as PayPal, is the entity responsible for ensuring that they’re PCI compliant).
To use WHMCS to accept payments using your WordPress site, you’ll need the WHMCS Bridge plugin.
In addition to enabling WHMCS for your WordPress site, its theme inheritance feature means that you don’t need to style the plugin for it to look like your site.
7. Your Membership Plugin
If you already use a plugin for the purpose of managing memberships, you may be able to use its billing features for recurring payments, especially if the payments are for those memberships.
One such option is MemberMouse, which is a WordPress-oriented solution that allows you to manage your customers (and provide them with a management portal), sell products, subscriptions, and memberships, create members-only areas for your site, and more. Its billing solutions features support for both free and paid memberships, flexible checkout pages, and integrations with several payment processors.
An alternative to MemberMouse is MemberPress, which bills itself as an all-in-one membership plugin for WordPress. It is designed to help you bill users for content that you create via memberships and subscriptions. Though the use cases for this plugin is limited it can be a good option for people looking to accept recurring payments for their WordPress site’s content.
If you’re looking for a free option that allows you to get started with basic membership features for your website, look no further than Ultimate Member. You’ll be able to implement a customer-facing portal that makes it easy for people to sign up and become a member. However, if you need more in terms of features and functionality, Ultimate Member offers paid extensions that can be purchased all at once or individually.
8. 3rd-Party Software
Instead of actually accepting recurring payments through their WordPress site, many WP professionals are simply keeping those recurring paymets in their invoicing software.
Software like Freshbooks, Ninja, Sprout Invoices, Quickbooks, Zoho Invoice, Pancake, Zuora, Recurly, Rebilly, Chargebee, Chargify and Fusebill all allow you to implement repeated and automatically paid invoices every month. So it’s an easy way to integrate monthly recurring payments into your existing systems.
There are upsides and downsides to using your invoicing software for recurring payments.
By using your invoicing software, you make it easier to balance your books. Your invoicing software will likely be able to automatically input your revenue amounts and the amounts received values into your record books. You won’t have to do any additional work or set up any integrations to make sure that something like this happens.
The downside, however, is that you’ve removed a key feature of your site away from WordPress — after all, you aren’t using WordPress, or one of its plugins, to accept payments. This means that you’ll need to transfer payments-related information to WordPress somehow, especially if the users’ payment status impacts their ability to see your content.
So if you haven’t checked already, take a peek into the invoicing software you already use and see if recurring billing is an option.
Accept Recurring ACH Payments
While credit cards are the easiest payment types to handle for all parties involved (especially when it comes to recurring payments), there is still a time and place for transactions made via ACH.
However, when it comes to setting up the ability for users to make recurring payments via ACH, you will need to jump through several hoops. For the purposes of this example, however, we will be using WooCommerce Subscriptions as the plugin supporting integration with payment processors and Stripe as the payment processor itself. We will also need to enable ACH in the Stripe dashboard, as well as implement the payment method (ACH) itself.
Step 1: Install WooCommerce Subscriptions
Once you’ve purchased a license to WooCommerce Subscriptions, you’ll need to upload the plugin and install it using the WordPress Dashboard. To do so:
- Log in to WordPress.
- In the left-hand navigation, go to Plugins > Add New.
- Near the top of the page, click Upload Plugin. In the prompt that opens up, select the location where the plugin file is located, and click Install Now.
- Once you’ve installed the plugin, you can activate it.
At this point, you are ready to set up the subscription products you want to offer. By default, all manually-added subscriptions are set to renew manually as well. However, you can change subscriptions so that they are automatically billed.
Step 2: Integrate WooCommerce Subscriptions with Stripe
You will need an extension for WooCommerce Subscriptions to set up automatic recurring payments. There are a variety of options available, but for the purposes of this tutorial, we will focus on Stripe. This is another plugin that you will need to install:
- Log in to WordPress.
- In the left-hand navigation, go to Plugins > Add New.
- Using the search bar, type in WooCommerce Stripe Payment Gateway and click Search Plugins. When the desired result appears, click Install Now.
- Once the plugin has been installed, you can activate it.
At this point, you can set up WooCommerce to work with Stripe. There will be a WooCommerce setting on the left-hand navigation bar. Click to launch the plugin and switch to the Payments screen. For full details on configuring the plugin, see WooCommerce’s detailed docs.
Click Save changes when done.
Step 3: Enable and Implement ACH for Stripe
Once you’ve set up ACH payments, remember to set this as an acceptable payment type on WooCommerce.
Wrapping Up 🍬
Accepting recurring payments presents several challenges over accepting one-time payments, but there are a lot of options available on the market that is designed to help you with this process.
The best option for you when it comes to accepting recurring payments depends on your business model and what you’re offering (e.g., does the user get regular updates or are they paying for access to a static set of content?). We tried to cover a variety of options for a variety of needs, but if you need help choosing the best fit for you, don’t hesitate to connect with WP Buffs, a leader in WordPress security and performance.
Want to give your feedback or join the conversation? Add your comments 🐦 on Twitter!