This Add On offers multiple forms of integration with WooCommerce. Continue reading the features and documentation below to explore the many ways you can connect this ecommerce plugin with Paid Memberships Pro.
Key Features of the Integration
- Set Custom Product Pricing based on Membership Level.
- Set a Global Percentage Discount for All Products Based on Membership Level.
- Works with WooCommerce Subscriptions Premium Add On for WooCommerce.
- Works with the Multiple Memberships Per User Add On for Paid Memberships Pro.
- Synchronizes the Billing Address Fields Between WooCommerce and Paid Memberships Pro.
- Sell a Membership in Paid Memberships Pro as a WooCommerce Product (To sell subscriptions with the WooCommerce checkout process, you can use the built-in subscriptions functionality or the WooCommerce Subscription Extension. PMPro’s checkout process includes recurring subscription processing).
Video Demo
Installation
- Upload the ‘pmpro-woocommerce’ directory to the ‘/wp-content/plugins/’ directory of your site.
- Activate the plugin through the ‘Plugins’ menu in WordPress.
Membership Products and Per-Level Pricing
This plugin adds a new “Membership” tab to the Product Data meta box on a single product edit page. In this section you can set a product to give customers a membership level or add custom pricing to the product by membership level.

Membership Products
Membership Products are products which assign the customer a PMPro membership level after their order is completed. It is important that you have disabled “Guest Checkout” and have enabled “Account Creation as Part of Checkout” via WooCommerce Settings.
If a user adds a Membership Product to their cart, any Member Discounts or Pricing will be applied as if the user already had that membership level.
We have added a setting to the Membership tab of the Product Data meta box to “mark the order as completed immediately after checkout to activate the associated membership”.
Alternately, you can mark your WooCommerce membership product as a Virtual Product and use a plugin such as WooCommerce Autocomplete Order.
The membership level expiration date will be inherited from the level as set up under Memberships > Settings > Edit Membership Level. It is important to note that the price for membership will not be inherited from the level. You must set the price in the WooCommerce product. If you require your level to create a subscription, you must use the WooCommerce Subscriptions (premium) extension. When using WooCommerce Subscriptions to sell PMPro memberships, you may not be able to use all features of WooCommerce Subscriptions. Below is a list of incompatible WooCommerce features:
- Upgrade / Downgrade Subscriptions
- Subscriptions Proration
We recommend that you only allow one membership product to be purchased in a single order. This will prevent two of the same memberships from being added to the cart. Also note that a single product should not be both a “Membership Product” and have settings for Member Discount Pricing.
To recap, if you intend to fully use WooCommerce for membership checkout, please note the following:
- All of the level pricing details would be set up via the product in WooCommerce.
- If you are using WooCommerce as the “product” for membership, none of the settings in Paid Memberships Pro’s Memberships > Settings > Levels in the admin are used.
- You will need the WooCommerce Subscriptions plugin to charge recurring payments. Note that Paid Memberships Pro does include recurring subscriptions in the plugin for no additional cost but you must use the Paid Memberships Pro checkout process to use this feature.
- You do not need to set up any of the pages within the Memberships > Settings > Page Settings page in the WordPress admin. You can optionally set the Levels page to the category of products for your membership levels. Other account type pages can be set to your WooCommerce My Account pages.
- None of the emails sent by Paid Memberships Pro will be used with the exception of the Cancellation emails. WooCommerce emails will be sent at checkout and for any recurring payment received.
- Members will use the WooCommerce “My Account” area to manage their orders and subscription.
Product Pricing by Membership Level
The Membership tab of the Product Data meta box also lists pricing fields for each membership level on your site.
Using these fields, you can create different prices for users with different membership levels. If they don’t have a membership, the price won’t be affected.
Global Product Discounts By Membership Level
In addition to membership pricing, site-wide discounts can also be applied depending on membership level. PMPro WooCommerce adds a new option to the Edit/Add Membership Level page where you can specify a Membership Discount.
- Navigate to Memberships > Settings > Levels.
- Select a level to edit.
- Locate the “Other Settings” box.
- Edit the setting for “Membership Discount”.
- Save Level changes.
Currently, membership discounts can only be applied as a percentage off of the product’s price.

It is important to note the following rules related to members-only pricing:
The product price will be calculated as:
- The regular price less member discount if applicable
- The sale price (if set) less member discount if applicable
- The member price set under Edit Product > Membership > LEVEL NAME price:, less the global member discount set under Memberships > Edit Level.
Members Only Products
If you’d like to offer certain products to members only, see the Custom Post Type Membership Access add on.
Members Only Store
If your entire store is locked for members only, see this post on Locking Your Entire eCommerce Shop for Members-Only.
Catalog Mode for Non-Member
If you would like non-members the ability to see your store items but restrict them from seeing prices and ability to purchase, see this post on Turn your WooCommerce Store into a Catalog for Non Members
Use WooCommerce to Sell Memberships with Your Payment Gateway of Choice
If you would like to see how to sell Memberships using the WooCommerce Checkout, the payment gateway of your choice and Paid Memberships Pro to view this post: Use WooCommerce to Sell Memberships with your Payment Gateway of Choice.
Compatibility with Other PMPro Add Ons
As all of the membership level pricing details would be set up via the product in WooCommerce, most of the Paid Memberships Pro checkout related Add Ons are not compatible with our WooCommerce integration. Here is a list of the most frequently asked about PMPro Add On compatibilities.
Compatible:
- Add Member From Admin
- Approval Process for Membership
- bbPress Integration
- BuddyPress Integration
- Custom Post Type (CPT) Membership Access
- Member Directory and Profiles
- Multiple Memberships Per User
- Multisite Membership
- Roles for Membership Levels
- All email marketing integrations
Not Compatible:
- Add Name to Checkout Add On
- Add PayPal Express to Checkout Add On
- Addon Packages
- Affiliates: Lightweight Affiliate Tracking
- Auto-Renewal Checkbox at Membership Checkout
- Cancel on Next Payment Date
- Capture Name & Address for Free Levels or for Offsite Gateway
- Check Payment Levels Add On (deprecated)
- Donations Add On
- Email Confirmation Add On
- Gift Membership Add On
- Goals Progress Bar
- Group Discount Codes Add On
- Invite Only Membership
- Lock Membership Level Add On
- Pay by Check Add On
- Payment Plans Add On
- Proration
- Recurring Payment Email Reminders
- Set Expiration Date Add On (pending)
- Shipping Address on Membership Checkout
- Sponsored/Group Members Add On
- Subscription Delays Add On
Action and Filter Hooks
apply_filters( 'pmprowoo_checkout_level', $custom_level );
apply_filters( 'pmprowoo_mmpu_force_add_level', false );
apply_filters( 'pmprowoo_get_membership_price', $discount_price, $level_id, $price, $product );
do_action( 'pmprowoo_extra_tab_options' );
This is a Free Add On.
Create a free account or log in to gain access to downloads and documentation.