Search Over 30,000 FREE Plugins from the Official WordPress Plugin Directory Repository

Paid Memberships Pro - WooCommerce Add On

Integrates Paid Memberships Pro with WooCommerce.

This plugin requires Paid Memberships Pro and WooCommerce be installed, activated, and configured.


  • Use WooCommerce Products to Buy PMPro Membership Levels
  • Add Specific Pricing Based on Membership Level for Each Product
  • Apply global discounts based on membership level
Author Stranger Studios
Contributors strangerstudios, jessicao
Tags member, Membership, paid memberships pro, pmpro, prices, pricing, subscription, woocommerce
  1. pmpro-woocommerce screenshot 1

    The "Membership" meta box on a single product. Optionally use this WooCommerce Product to buy a PMPro Membership Level or set specific pricing based on membership level for each product.

  2. pmpro-woocommerce screenshot 2

    The "Set Membership Discount" field on the "Edit Membership Level" page (Memberships > Membership Levels > Edit).

  1. Upload the pmpro-woocommerce directory to the /wp-content/plugins/ directory of your site.
  2. Activate the plugin through the 'Plugins' menu in WordPress.


  • BUG: Fixed issue where products with blank membership pricing were being marked as free for members. Use "0", "0.00", or "0,00" to mark something as free. Use blank ("") to have a product use the main price or sale price.
  • ENHANCEMENT: Made the wording of the member discount a bit more clear on the edit level page.


  • FEATURE: Added a setting to the membership section of the edit product page with a checkbox to "mark the order as completed immediately after checkout to activate the associated membership".
  • BUG: Fixed bug when setting membership price to 0.
  • BUG: Fixed PHP notices on WooCommerce single product page when PMPro membership price discount was empty.
  • BUG: Fixed issue where member prices were not being applied to products for members.


  • BUG: Fixed bug where site would crash (PHP whitecreen) if Paid Memberships Pro was not active.


  • BUG: Fixed bug when applying membership discounts to membership products and subscriptoins.
  • BUG: Fixed warnings on edit membership level page.


  • Hooking into scheduled_subscription_end_of_prepaid_term to cancel PMPro memberships for manually renewing WooCommerce Subscriptions when they hit expiration.


  • Using current_time('timestamp') in a couple strtotime calls.
  • Added links to docs and support in the "plugin row meta".



  • Commented out filters on "woocommerce_order_status_pending" and "woocommerce_order_status_processing" hooks. This keeps PMPro from removing a user's membership level when they are renewing which can cause issues. (Thanks, Trisha Cupra and others.)

  • Fixed bug with getting the expiration_number for levels with an X months expiration. (Thanks, Arnaud Devic)

  • Fixed the pmprowoo_checkout_level_extend_memberships() filter added in 1.2.5.


  • Now applying end date extension filter to woo commerce checkouts as well. So if an existing member purchases a product for their level that has an end date, their end date will be extended from the old end date. (Thanks, trishacupra)


  • Fixed bug with WooCommerce Subscriptions being put "on hold".
  • Fixed bug when entering a membership price > 1000.
  • Fixed bug on some setups which set membership price to 0 if nothing was entered.


  • Fixed bug when setting member price to "0" in product settings.


  • Added option to "Apply Member Discounts to WC Subscription Products?" to the PMPro Advanced Settings tab.
  • Fixed bug where membership discounts wouldn't be applied if no membership products were in the cart.
  • WooCommerce now mimics PMPro checkout, creating a custom level array instead of passing the ID. So if your level has an expiration number and period, it will be used when adding the level to the user checking out in WooCommerce... i.e. expiration dates "work" now. You can filter the level information using the pmprowoo_checkout_level filter.
  • Added pmprowoo_checkout_level filter to allow filtering the checkout level (to use PMPro expiration dates, etc. if Subscriptions addon is not installed)


  • Fixed updating of WooCommerce billing address user meta when brand new users checkout with PMPro.


  • Updating user meta for billing address when the Woo Commerce billing address is updated and vice versa.


  • Fixed fatal error that would be thrown if PMPro is not also activated.


  • Fixed adding/updating membership when order status is changed to completed


  • Released to the WordPress repository.


  • Fixed a bug where the get_price filter wasn't running when products/prices were loaded over AJAX (e.g. in the order review).
  • Added code to force account creation at checkout if the cart includes a membership level.


  • Fixed bug where products were erroneously counted as "subscription products" and thus discounts may not apply. You may have to edit these products and click "update" to get the settings to save correctly.


  • Added membership products
  • Added membership discounts
  • Moved PMPro options to separate tab


  • Added per level pricing to the edit product page. (Thanks, jessica o)


  • This is the initial version of the plugin.

I found a bug in the plugin.

Please post it in the issues section of GitHub and we'll fix it as soon as we can. Thanks for helping.

Version 1.3.1

Requires WordPress version: 3.8 or higher

Compatible up to: 4.7.2

Last Updated 28 Jan 2017

Date Added: 26 Feb 2014

Plugin Homepage


4.8 stars
4 ratings


Not Enough Data

Works: 0
Broken: 0