WooCommerce is one of the most popular eCommerce plugins for WordPress (see our full review), so it’s no surprise that many users want to use WooCommerce to sell memberships or subscription products in addition to existing inventory. The bonus to setting up a membership site with WooCommerce is the flexibility to sell other products, such as complementary products or tools, as well as the advantage of several marketing extensions already available for WooCommerce. However, setting up a membership site using WooCommerce will require a few plugins and may be overkill for some simple membership sites. This is more for those of you looking for a solution that supports selling more than just memberships and can scale with your store and site.
To set up your membership site, you’ll need some plugins to handle the membership setup, and another to handle recurring billing. You’ll want to download the free Groups plugin for WordPress, and will then want the WooCommerce Groups extension for $79 that allows you to sell these groups as products. To handle recurring billing, you’ll want the WooCommerce Subscriptions extension for $199, which brings the total set up costs to $278 for the first year. Renewal fees for support and updates will be around $139 per year after the first year.
So what do you need to know to set up your membership site? We’ll go through the process of setting up a membership site using WooCommerce and what it addresses on our membership site checklist.
Memberships are created using the Groups plugin and its WooCommerce integration, and content restriction is achieved by using these plugins as well. Since Groups isn’t a true membership solution, this part of the setup isn’t exactly intuitive. You can follow along with the Groups documentation for help with the process.
The first thing you’ll need to do is create “groups” for your memberships. Since each membership will be created as a product that uses the group restriction rules, you can create an unlimited number of membership products, and customers can purchase multiple memberships to support content-based membership sites. Groups can be created in a couple of ways. First, from the Groups menu, you can create a “capability” that groups will be able to use. I named my capability after the membership levels I used (basic, silver, and gold).
Once you’ve added the capability (which is essentially a restriction level for the posts, pages, or products you’re selling), you can add that capability to a group:
If you’re already working on a post or page, you can select the capability required for access to the content from the “Access Restrictions” box. If you need to add a new group or capability, you can do so from this box as well:
Setup is a bit time intensive, but does allow you to complete customize membership access, and will also allow you to create a pay-per-post system by creating a subscription product for a post with its own restriction capabilities. Another benefit to using Groups is the ability to integrate discounts with the extremely flexible WooCommerce Dynamic Pricing extension. This allows you to provide bulk discounts as well as membership level discounts (in addition to other discounts and quantity-based pricing rules), so membership can allow customers a discount level for your store.
Content restriction is possible using the capabilities of each group. You can set a capability required for read access to posts, pages, and custom post types from the WP editor. Any group that has this capability will be able to read the content. For example, if both “silver” and “gold” memberships have “silver” capability, then when the capability for read access is set to “silver”, members who have purchased either membership will be able to read it.
For each page, post, or custom post type you’d like to restrict, you’ll have to set the access restrictions in the editor. This is unfortunately a time consuming process, as you can’t set restrictions for post categories or tags to expedite the process. You’ll also have to link your subscription products to the corresponding groups / restriction rules when you set them up to ensure that customers are placed in the correct group upon purchase:
Groups does not provide for other membership capabilities aside from content restriction, so depending on your model, this setup may not work for you. If you need to drip content, for example, you’ll need to find a different solution (I’d check out our list of general WordPress membership plugins). Groups also has no way of restricting login information to prevent sharing membership credentials.
Recurring / Subscription Billing
The recurring billing side of the equation is handled by the WooCommerce Subscriptions extension. This is beneficial for those of you who are just selling subscriptions to physical products, such as magazines or subscription boxes, as you won’t need the Groups plugin or corresponding WooCommerce extension. Subscriptions supports sign-up fees, free trials, and fully supports discounts, as well as including its own discounts. For example, if a coupon code is used for a subscription, that coupon is applied to the first billing with any sign-up fees, but is not applied throughout the duration of the subscription. You can also create subscription-specific discounts for sign-up fees and a recurring discount if needed.
Billing schedules are also very flexible, and allows you to set recurring billing based on a custom schedule in terms of days, weeks, months, or years, or you can set a defined length of time for a subscription (ex: bill once for 3 months of access). You can also limit customers to purchasing one subscription, or can allow customers to purchase multiple subscriptions (though they have to purchase each separately), which will be beneficial for sites using a topic-based model (selling access to certain kinds of content) rather than a tiered membership. Setting up subscription products is done the same way as WooCommerce simple or variable products (with the benefit that variable products can be used for tiered memberships and subscription switching), so usage shouldn’t be too difficult for regular WooCommerce users.
And here’s the frontend:
Customers can optionally be given control over their subscriptions, including the ability to pause, resume, or cancel subscriptions from the “My Account” page, which functionality that I believe is currently limited to WooCommerce Subscriptions and MemberPress. You can disable this ability as an administrator if you prefer. You can also allow customers to change subscriptions so that they can upgrade or downgrade subscriptions themselves. When a customer switches subscriptions, you have the option to prorate fees associated with the change, which makes Subscriptions a pretty powerful billing management system.
WooCommerce Subscriptions comes bundled with PayPal Standard for payment processing, but is not limited to solely using PayPal. You can manually process subscriptions for any WooCommerce gateway integration by requiring customers to pay for a new subscription when theirs expire. However, I’d recommend using one of the 14 supported official gateway extensions for Subscriptions that allows you to automatically process and charge subscriptions (and Stripe is included!). This will probably make your life much easier as it automatically bills subscribers to avoid the barrier of forcing manual renewals, which will also lead to higher conversions.
Purchasing any of the listed WooCommerce extensions will include support and updates for one year from the date of purchase. After one year, if you need support and updates, you’ll have to renew your product license from WooThemes for 50% (estimated) of the purchase price. Having worked with Brent Shepherd, who develops WC Subscriptions, I can say that Subscriptions is a quality product and that it’s constantly updated and expanded (check out the feature roadmap here). You’ll also benefit from extensive documentation while setting up and managing your store.
The WooCommerce Groups Integration also comes with extensive documentation and one year of support and upgrades from the WooThemes team.
If you’re looking for a membership specialist, there’s probably a different solution out there for you. Groups + Subscriptions does not have the ability to restrict post categories and tags, nor can it drip content if needed for your membership model. However, the benefit to using this setup is that it integrates seamlessly with your existing WooCommerce store, and provides a great option for sites that sell products in addition to memberships and will scale up no matter how many products you sell. The fact that shipping is included and plenty of shipping extensions are also available make it compelling for memberships tied to physical, shippable products.
If you’re just creating a content site, this may work for you depending on your needs (though it’ll probably be overkill for those of you with small followings). However, if you want a very extensible solution in terms of marketing tools and integrations, a solution for subscriptions to physical products, or a solution that integrations both a store and memberships, then WooCommerce is a platform you’ll want to explore further.
Looking for More info on Membership Sites using WooCommerce?
Want more information on setting up membership sites using WooCommerce? Check these articles / documents out:
- For more questions with Subscriptions, you can check out the WooCommerce Subscriptions FAQ or documentation to get detailed info.
- You can also check out the WooCommerce Groups Extension documentation for questions with the Groups side of setup.
- Do you actually need content dripping? Check out this post by Memberful, which provides some good insight.
- Looking for a solution to a recurring billing problem? Chris Lema has an article on using WooCommerce Subscriptions for a coaching business.
Note: This post may contain affiliate links. Providing the most comprehensive and objective WordPress eCommerce resources is our mission. Have more questions? See our affiliate policy. You can use the plain links below if you prefer that we not receive a referral commission: