Paid Membership Subscriptions – Effortless Memberships, Recurring Payments & Content Restriction
Paid Membership Subscriptions – Effortless Memberships, Recurring Payments & Content Restriction
Description
Paid Member Subscriptions is the #1 WordPress membership plugin focused on growing recurring revenue.
Increase conversions and generate subscription revenue with a feature-packed membership solution. It lets you accept recurring payments, register and manage new members, create subscription plans and restrict access to premium content.
Paid Member Subscriptions is designed to help you kickstart your subscription business in just a few minutes and begin generating income as quickly as possible.
Integrates with WooCommerce, allowing you to restrict product viewing and purchasing to members-only as well, offer special discounted product price based on subscription plans as well as allow your customers to purchase subscription plans through the WooCommerce Checkout.
You can also use it to setup an Elementor membership site fast and easy.
Free Demo | Compare Free vs Pro | Documentation
Optimize Membership Monetization And Boost Your Revenue
Offer premium access and exclusive benefits for members, establishing a thriving paid community that generates income through membership fees or subscription plans. This is ideal for:
* Paid Membership Services
* Online Courses
* Online Coaching
* Online Consultancy Services
Automate Revenue Streams With Our Proven Membership Tools
Keep your focus on content creation while Paid Member Subscriptions takes care of consistently generating revenue for you through its automated recurring revenue model. This is ideal for:
* Content restriction on blogs, news sites, and content hubs
* Members-only content subscriptions
* Private WooCommerce Stores
* Members-Only WooCommerce Stores
Build And Grow Your Community While Also Monetizing It
Communities are all about collaboration. By giving members the opportunity to gain exposure, promote their services or create networking opportunities, you’re building a valuable community that people are willing to pay to be a part of. This is ideal for:
* Business Directories
* Member Directories
* Online Associations and Clubs
* Online Communities
Shortcodes & Blocks for Member Registration, Login, Content Restriction and managing Membership Plans
You can use one of the following shortcodes or available blocks to get started:
- [pms-register] – adds a front-end user registration form where users can purchase a membership level
- [pms-login] – create a front-end member login form
- [pms-restrict subscription_plans=”9,10″] Special content for members subscribed to the subscription plans that have the ID 9 and 10! [/pms-restrict] – to restrict content based on subscription plans or logged in status
- [pms-account] – setup a WordPress members area where members can easily edit their account information and manage their subscription plan(s)
- [pms-payment-history] – adds a front-end table with the member’s payment history
- [pms-recover-password] – adds a recover password password form, that enables users to reset their password if needed
Membership Modules:
Content Restriction
You’ll find it really simple to restrict entire posts, pages or custom post types or just portions of them.
Restrict Content offers you options to:
- display content based on logged in status
- show content to members only, setup private pages for subscribers
- partial content display by using the [pms-restrict][/pms-restrict] shortcode
- display another template for restricted posts
-
restrict Gutenberg blocks
Integrates with Elementor page builder allowing you to restrict content for Elementor sections and widgets based on logged in status or subscription plans, by using the visual interface.
Membership Payments
Accept PayPal or direct credit card payments from your subscribers. You can keep track of all member payments, payment statuses and purchased subscription plans. Access to detailed payment logs.
Recurring Payments
Ability to accept recurring payments through the PayPal or Stripe payment gateways. The recurring setting can be forced or you can let the user choose whether he wants to subscribe for a recurring subscription or not.
Hierarchical Subscription Plans
You can create an unlimited number of hierarchical subscription plans (eg: Free, Silver, Gold). Each new user can choose a membership plan (subscription) during the registration process.
Existing users can purchase a subscription plan from a page with the [pms-subscriptions] shortcode.
Members can upgrade their subscription plan from the [pms-account] page, the same page also allows the member to Renew, Cancel or Abandon his subscription.
Subscription plans can offer free and/or paid memberships on your website.
Discount Codes
Create an unlimited number of discount codes and offer percentage or flat rate based discounts for your memberships.
Members Management
Have an overview of all your members and their subscription plans. Easily add/remove members or edit their subscription details.
Membership Emails and Messages
Customize default member emails and setup member messages sent/displayed on certain user actions.
Admin emails can also be customized.
Free Trial and Sign-up Fees
You can configure your subscription to have a free trial period and a sign-up fee, allowing you to have more control on your subscription setup.
Pay in Installments
Configure a subscription that ends after a certain amount of billing cycles.
Stripe
Effortlessly process credit card payments, both one-time and recurring, directly on your website with Stripe. Stripe provides a secure and intuitive payment solution that seamlessly integrates with your WordPress site, ensuring smooth transaction management and an enhanced user experience.
Accept a wide range of additional payment methods including Apple Pay, Google Pay, Bancontact, iDeal, Giropay, and more.
Reports and Exports
Whether you prefer to maintain your own records of your members’ database, do custom reports , or you simply need to import records into another service or application, such as MailChimp or Excel, you can do that with Paid Member Subscriptions. Export all member records to a CSV at anytime.
Payment history can be exported to a CSV file, letting you then import the payment data into Excel, QuickBooks, or other accounting software that can process a CSV file.
WooCommerce Integration
Paid Member Subscriptions integrates beautifully with WooCommerce, allowing you to do the following out of the box:
- Create a Members-only Store – restrict access to the Shop page to members-only
- Restrict Product Viewing and Purchasing – control who can see or purchase a WooCommerce product based on logged in status and subscription plan. Easily create members-only products.
- Offer discounted product prices to members – offer special product prices to members based on their active subscription. Set membership discounts per product or subscription plan.
- Sell subscription plans as products – associate products with Subscription Plans to offer customers a membership with a product purchase or allow customers to purchase Paid Member Subscriptions plans using the WooCommerce Checkout
Others
- automatic refunds directly from your WordPress dashboard
- GDPR
- automatically log users in
- hide admin bar
- prevent account sharing
- redirect default WordPress pages
- setup a WordPress members area
- enable reCaptcha v2 or v3 on your forms
Powerful Add-ons
Paid Member Subscriptions has a range of premium Add-ons that allow you to extend the power of the membership plugin:
Basic Add-ons (available in the Agency, PRO or Basic versions)
- Global Content Restriction – add global content restriction rules to subscription plans, based on post type, taxonomy and terms
- Email Reminders – create multiple automated email reminders that are sent to members before or after certain events take place (subscription expires, subscription activated etc.)
- Advanced Subscription Toolkit – extend your Subscription Plans and Discount Codes with extra options like automatic downgrade after expiration, limit member count, schedule availability for subscription plans and more
- LearnDash – create multiple automated email reminders that are sent to members before or after certain events take place (subscription expires, subscription activated etc.)
- Navigation Menu Filtering – dynamically display menu items based on logged-in status as well as selected subscription plans
- Fixed Period Membership – create subscriptions plans that end at a specific date, no matter when a member subscribes to it.
- Pay What You Want – accept donations and let subscribers pay what they want when purchasing a subscription plan
- bbPress – integrate Paid Member Subscriptions with the popular forums plugin, bbPress, to restrict your forums and topics.
Pro Add-ons (available in the Agency & PRO versions only)
- Multiple Currencies – Enable visitors to pay in their local currency, either through automatic location detection or by manually selecting their preferred currency
- Pro Rate – Pro-rate subscription plan Upgrades and Downgrades, offering users a discount based on the remaining time for the current subscription
- Tax & EU VAT – collect tax or vat from your users depending on their location, with full control over tax rates and who to charge
- Group Memberships – sell group subscriptions to your users
- Content Dripping – create schedules for your content, making posts or categories available for your members only after a certain time has passed since they signed up for a subscription plan
- Multiple Subscriptions per User – setup multiple subscription level groups (e.g. Physics, Math) and allow members to sign up for more than one subscription plan, one per group (e.g. Physics Beginner and Math Advanced)
- Invoices – both you and your members will be able to download PDF invoices for each payment that has been completed
- Files Restriction – secure your valuable content and ensure it reaches only those who have subscribed and paid for access
- Mailchimp – integrate Mailchimp to keep your membership audience up to date. Automatically add or update subscribers, enable Double Opt-In, and sync custom fields between Mailchimp and member profiles
- Brevo – sync your members with Brevo to manage contacts smoothly. Automate newsletter subscriptions, use Double Opt-In for compliance, and link custom fields between Brevo and your member data
The Ultimate Membership Bundle
Combine user registration, memberships, and recurring revenue in one powerful plugin bundle called the Ultimate Membership Bundle.
Get access to both Paid Member Subscriptions Pro and our all in one user management plugin, Profile Builder Pro. These two plugins are designed to work perfectly together, offering you a powerful toolkit for managing and expanding your user base while generating revenue through paid memberships and recurring revenue.
Paid Member Subscriptions in your Language
We’re focusing on translating Paid Member Subscriptions in as many languages as we can. So far, the translations for 10 languages are almost complete, but we still need help on a lot of other languages, so please join us at translate.wordpress.org
You will be able to download all the available language packs as well as help us translate Paid Member Subscriptions in your language.
For more information please visit our documentation page
Website
https://www.cozmoslabs.com/wordpress-paid-member-subscriptions/
Documentation
https://www.cozmoslabs.com/docs/paid-member-subscriptions/
Addons
https://www.cozmoslabs.com/paid-member-subscriptions-add-ons/
Installation
- Upload the paid-member-subscriptions folder to the ‘/wp-content/plugins/’ directory
- Activate the plugin through the ‘Plugins’ menu in WordPress
- Create a new page and use one of the shortcodes available. Publish the page and you’re done!
Screenshots

Member Registration Form (Account Details + Select Payment Method)

Membership options: Group Memberships, Fixed Period Subscription & Pay What You Want & more

Select your subscription plan and billing details form in Paid Member Subscriptions

Member Account - Subscription Plan Details

Member Profile - Edit Account and Billing Details

Member discounted products for WooCommerce store

WooCommerce shop page restricted on the front-end for non-members

WooCommerce product discounts for members and restriction settings for individual product

Paid Membership Subscriptions onboarding wizard

Settings interface - Membership, Recurring Payments, Content Restriction & more

Subscription Plans listing from Paid Member Subscriptions - membership plugin

Members Management

Membership Recurring Payments Details

Discount Codes for Membership Plans

Available Add-ons for extending your membership site
Faq
Here are some examples of what you could sell from your membership site: premium tutorials, newsletter, magazine, database, online community, software, apps, videos, ebooks, audio files, discount codes, fan clubs, consulting, coaching etc.
You can sell one-time or recurring memberships with any custom duration you wish.
You can also give users a free trial to your plans and/or charge a sign-up fee.
Yes, you can have both free and paid memberships on your site.
Yes, you can create percent or fixed-amount discount codes that are available for selected subscriptions. You can limit the uses of a discount code, make it available only to new users, have a set period in which the discount is available, and many more. Learn more
Yes, the plugin allows you to restrict content and make it available to paid members only.
Any type of content can be restricted including posts, pages, and custom post types. We also have an integration with WooCommerce so you can restrict access (or purchase) to these products
We also offer an Elementor integration which lets you restrict any Section or Widget and make it available only to paid users.
You can also restrict Gutenberg blocks and Divi Modules
Yes, the registration form can be customized using Profile Builder.
You can change the order of the form fields, remove fields that aren’t required and also add extra fields to the form like Inputs, Checkboxes, Selects, Radio buttons, and more. Learn More
Yes, this is possible through Profile Builder as well using its Email Confirmation feature. In this case, the payment will happen after the user has clicked the link he received in the confirmation email after registering. Learn more
Yes! Users can pay with a credit or debit card without leaving your website through the Stripe payment gateway.
Through Stripe you can also access additional payment gateways like iDeal, Bancontact, Giropay and more.
Users can pay using Apple Pay and Google Pay by using the Stripe payment gateway and enabling these Payment Methods. Learn More
Revolut Pay or Alipay can also be used, alongside the Stripe specific Link payment method.
For more information please check out Paid Member Subscriptions documentation.
Reviews
Perfect with Profile Builder !
By matteoooo on November 19, 2025
Combined with Profile Builder, it is an excellent plugin ! I strongly recommend.
has everything we needed + great helpdesk
By catherinenhung on November 5, 2025
We were looking for a plug-in that would allow both subscription ($$) and membership accounts - and the search was more challenging than we originally thought it might be. Turns out most plug-ins allow only one functionality - either subscription or membership - and the perspective of having to (1) install, (2) pay for, (3) test, and (4) eventually make it all work together for two separate plug-ins just seemed way too much when you're up to your ears trying to launch a website. We're pleased Paid Membership Subscriptions has it both. The helpdesk team is gold - definitely something to hold on to in the era of automated support. Cheers!
Exactly what we needed
By ronke47 on September 27, 2025
I run a nonprofit with over 150 members and was looking for a way to automate online membership signups. I think I tried virtually every WP membership plugin including several very expensive premium ones, but Paid Members Subscriptions is the only one that was both lightweight and checked all our boxes. New members can register online and current ones can check their status and renew. New signups are automatically added to our Mailchimp audience (we had to get the sister plugin Profile Builder Basic for that). Since we are an educational nonprofit, I am happy we can lock down sections of the site for members while leaving the bulk of the site open the public. There is no reason for anyone to deal with registering unless they want to check their Account or get into the Members Only area. Any problems are rapidly addressed though of course there is always the time-zone delay since we are in California and Cozmolabs is in Romania. But really I have absolutely no complaints and much gratitude for this plugin.
Thank you!
By kyami on August 29, 2025
Came from Simple Membership Plugin to the Paid Membership Subscriptions. It was easy to setup and what more perfect display with my theme Foxiz at themeforest.
Sadly restriction content code i need it to put to the settings and it dosent have any tie with this theme. I would say make togheter work 😀 for easier restrict style 😀
All setup was easy anyway.
Keep up good work + dont move out on wordpress.org 😀
PS: My site is registration wall not paywall. So basically pay settings dosent need it. I use it just for beautiful and easy restrication.
Thank you once more.
PS: SMP dosent have SN solution so SN accounts cant read content.
Exelent
By lulupont on August 4, 2025
I am enjoying this very much. Also, the support people are very efficient, fast and respectful.
Handy plugin for subscriptions
By everthingrelationshipcc on July 30, 2025
works well and functions well and recommended
Great product - great support
By crldev on July 23, 2025
I have developed a site for a membership organisation and PMS Pro has delivered everything I needed plus more. I had a problem with accepting payments due to a conflict with a Theme-included plugin. Georgian took it on as if it were his own and identified and fixed the problem very swiftly. This is in big contrast to some user support that I have experienced that would have just said, "it's a plugin conflict". Georgian also spotted something unconnected that may have caused issue in the future, and I have been able to put that right. This was all done in a friendly manner.
Great support
By duvelger on July 2, 2025
PMS is a great and flexible plugin with great support – quick, helpful and always friendly. The only downside is that the upgrade/downgrade system can be a bit confusing. That’s the one area with room for improvement. Otherwise, highly recommended!
— Linn Moe, DuVelger.no
Great and unique
By justinrogersnz on June 21, 2025
Have been using this for years and it does exactly what I need- unique in it's ability to have group accounts, something I had difficulty finding elsewhere. Also the team is super responsive and helpful! Would recommend!
Happy with it
By istok on June 10, 2025
I was glad to implement this in my system
Changelog
2.16.8
- Fix: Issue with Stripe 3D secure authentication failing to continue payment processing on the website without webhooks enabled
2.16.7
- Enhancement: Reduce memory consumption when querying for Payments in the Reports interface roughly doubling performance
- Fix: Issue with the Exclude Restricted Posts From Queries functionality breaking Ultimate Member profile edits in some cases
- Misc: Compatibility with the new Email Marketing add-ons for Mailchimp and Brevo
2.16.6
- Fix: Error being triggered when trying to checkout using the Manual / Offline payment gateway
- Misc: Extended description for the Payment Cycles feature to display exactly the payment terms configured to the admin
- Misc: Small changes for the Setup Wizard
2.16.5
- Include missing security changes from last update
2.16.4
- Fix: Security issue regarding improper authorization on an AJAX handler function. Thanks to Rafshanzani Suhada and the Wordfence team
- Fix: A javascript error being triggered on non registration forms
- Fix: Show the correct price in the back-end Members page tooltip for PayPal Standard or Express subscriptions
- Misc: Added subscription plan id parameter to the success URL after user makes a purchase
- Misc: Use Gutenberg Blocks instead of shortcodes when plugin pages are created automatically through the Setup Wizard
- Misc: Added a confirmation popup when importing subscriptions
2.16.3
- Feature: Added support for Stripe Link in purchase forms. Go to your Stripe account to enable this payment method
- Fix: When a 100% non-recurring discount code is used in combination with free trials, extend the trial duration with a subscription period
- Fix: Stripe issue with sign-up fees not being taken into account for Apple Pay, Google Pay payments
- Fix: Stripe conversion issue for zero decimal currencies and payment gateways like Apple Pay, Google Pay
- Fix: More edge cases where the Stripe form was not being updated correctly based on global/plan recurring settings
- Fix: Improved performance for the Product Discounts Subscription Plans metabox
- Fix: Issue with the Profile Builder form not sending the user registration email when plans were being bought from the form
- Fix: Issue with 100% discount codes vs failed payment method registration leaving wrongly completed payments behind
- Misc: Fixed some notices appearing in some cases
- Misc: Remove an extra key from payment exports that was breaking the csv in some cases
- Misc: Small styling improvements for reports
- Misc: New add-on release compatibility
2.16.2
- Enhancement: The Stripe form is now respecting the global and the specific plan recurring settings when taking payments. This will basically make the Stripe form change to reflect if the payment method will be used for future recurring payments or not
- Enhancement: Add automatic updates support for paid verisons
- Fix: An issue with the old PayPal Email verification where it was failing if the saved email from the website had different letter case
- Fix: Scenario in which form couldn’t be submitted when reCaptcha v3 and Stripe was being used
- Fix: The Labels Edit add-on is now able to also change gettext strings with context
- Fix: Labels Edit not being able to change some plugin strings
- Fix: A notice that could appear in some cases thrown from the content restriction functionality
2.16.1
- Fix: Issue with post content restriction not working correctly
2.16.0
- Fix: Security issue regarding broken access control. Thanks to MD Ismail and the Patchstack team
- Fix: Issue with Stripe manual renewals not being properly marked as finished by the front-end request
- Fix: Clear payment gateway billing info from old style PayPal subscriptions on renewals and change, downgrade, upgrade using the new integration and Stripe
- Fix: An error that could appear in some situations when making PayPal requests
- Fix: Issue with Payment Gateways selector not appearing on the Profile Builder form if a single subscription plan was selected in Profile Builder settings
- Fix: Improve security for refunds
- Fix: A notice that could appear in some cases when filtering restricted posts
- Misc: Fixed some wrong type hints
- Misc: Fixed a situation where a subscription plan price was wrongly cast to absolute instead of float
2.15.9
- Feature: Payment refunds – refunds can now be issued from the Payments page with support for full and partial refunds. Supports all current and past payment gateways
- Enhancement: Automatically expire subscriptions when they are viewed and expired, but the status didn’t change yet. Before, this was only handled by a cron which is still available, but we now also show instant feedback to admins or users, without waiting for the cron to execute
- Fix: Rewrite logic that determines if the subscription plans field is active or not in order to show payment gateways for Profile Builder Conditional Logic compatibility
- Fix: Allow processing CHF payments through the new PayPal integration
- Misc: Allow page regeneration through Setup Wizard if the pages are not set in General Settings
- Misc: Add a filter to be able to force the retrieval of an IP address using REMOTE_ADDR. This basically ignores other params like HTTP_FORWARDED_FOR or HTTP_CLIENT_IP and only relies on that key. Enable with the following filter: pms_get_user_ip_address_force_remote_address
2.15.8
- Enhancement: Improved back-end messages informing what features are available depending on license
- Fix: An error triggered on registration when another plugin is loading an older version of the Stripe library
- Fix: Conflict with the Formidable Stripe plugin, allowing our on-session payments to process normally
- Fix: Issue with Free Trials and Signup fees on the same plan not working with Stripe
- Fix: The logged in GDPR option is now displaying on the Retry Payment form as well
- Fix: Issue with the Payments List Table not displaying the date correctly in certain situations when the Match WP Date format option was used
- Fix: Compatibility issue between the Profile Builder reCaptcha v3 option and Stripe
- Fix: Use the correct subscription price when updating the payment element in front-end and the Multiple Currencies add-on is used
- Misc: Add support for searching payments based on user display name
- Misc: Alignment fixes for GDPR field
2.15.7
- Enhancement: Show information about Upgrades or Renewals in the Reports area
- Enhancement: Show subscription price when hovering over the subscribed plan on the Members Table
- Fix: Issue with license key activation or deactivation not working
- Fix: Issue with Stripe Trial payments not working correctly when the card enforced 3D Secure validation
- Fix: Add back Subscription Plan name to Stripe transactions
- Fix: Restore duration divider for fixed period plans when they are displayed on the front-end form
- Fix: Allow searching for discounts that contain special characters in their title
- Misc: Match label spacing between front-end and back-end for the Manual payment gateway
- Misc: Extend Payments search support
- Misc: The WooCommerce Product Restriction metabox is now listing plans in the same order as the Content Restriction metabox
- Misc: Added a filter so the PayPal Standard account check for IPNs can be disabled
2.15.6
- Fix: Issue with custom tables metadata retrieval
2.15.5
- Enhancement: Added options to restrict content based on All subscription plans to the pms-restrict shortcode and Elementor Content Restriction functionality
- Enhancement: Allow adding a Registration form without subscription plans through the Elementor Registration Widget
- Fix: Security issue relating to LFI on Windows environments. Thanks to LVT-tholv2k and the Patchstack team
- Fix: Some compatibility issues with other plugins that load the Stripe PHP library
- Fix: An issue with the trial already used functionality and Stripe
- Fix: Make sure a customer exists when attempting to process a payment through Stripe
- Fix: Compatibility issue with GiveWP
2.15.4
- Enhancement: Stripe payment gateway updates for improved loading speed, processing speed and reliability
- Enhancement: Added an option that let’s you show the GDPR checkbox for logged in payments. Go to the Settings -> Misc -> GDPR page to enable
- Feature: Customers can now re-use already entered payment methods without having to enter them again. When a logged in user is paying, he can choose if he wants to save the payment method or not
- Fix: The Stripe payment gateway will not generate incomplete Payment Intents in your Stripe account when loading the payment form
- Fix: Issue with Apple Pay/Google Pay not working sometimes
- Misc: Don’t display the All subscription plans option for the Profile Builder Default selected Subscription Plan field
2.15.3
- Feature: Pay in Installments – create subscription plans that automatically end after a set number of billing cycles. Learn more
- Fix: Allow users that are on the older Stripe versions to Update their Payment Details
- Fix: An issue with the Retry Payments feature
- Fix: Small fixes for Reports
- Fix: The Content Restriction metabox is now displaying again on TutorLMS courses
- Misc: Allow setting the payment gateway when manually adding members. This can be enabled using a filter: pms_view_add_new_edit_subscription_show_payment_gateway_field
2.15.2
- Fix: Security issue with the deprecated PayPal Standard gateway relating to the IPN processing functionality. Thanks to ChuongVN and the Patchstack team
- Fix: Stripe connection redirect not going to the specified location
- Misc: Prevent scripts and styles from loading on the WooCommerce Checkout or Cart pages
- Misc: Added a filter to disable the referer redirect when logging in after trying to view a restricted page: pms_content_restriction_redirect_add_redirect_to_parameter
2.15.1
- Fix: Latest update failure
2.15.0
- Enhancement: Added an option to select the status in which the subscription remains while payments are retried. Go to Settings -> Misc -> Payments to configure this
- Fix: Security issue regarding Content Spoofing with paid version active
- Fix: Issue between 100% discount codes for the first payment and PayPal
- Fix: Disable all extra funding sources except PayPal Wallet for the PayPal integration
- Fix: Make sure return URL for PayPal is always set to home_url() if our custom pages are not defined
- Misc: Added support for multiple subscription plan ids when retrieving subscriptions
- Misc: Added disabled state for form submit buttons on block themes
- Misc: Make sure original form submit button is getting reset when the PayPal window is closed
2.14.9
- Enhancement: The Profile Builder Subscription Plans field now includes an
Allsubscription plans option - Enhancement: Added compatibility with Profile Builder Admin Approval to the default registration success messages
- Fix: Issue with PayPal admin connection not working in some cases
- Fix: Always show the PayPal Disconnect button if an account is connected
- Fix: Learndash compatibility issue on fresh websites where no plans were defined
- Fix: Payments issue with Stripe when global recurring option was set to never renew but plan renewal option was set to always renew
- Fix: When a user tries to access restricted content and is sent to a Paid Member Subscriptions login form, after a successful login he should now return to the restricted content
- Fix: Compatibility issue between Stripe Webhooks and TranslatePress. Implemented a general fix to take into account other plugins which might modify the home_url
- Fix: Issue with admins not being able to save, edit, delete strings in the Labels Edit add-on
- Fix: Translation notices continued
- Fix: When processing recurring payments through Stripe, treat Payment Intents with the
Processingstatus similar to how we treat them on initial registration - Fix: Issue with reCaptcha v3 not working on default login forms sometimes
- Fix: When cloning a parent plan, it will now remain a parent plan instead of being transformed into a child plan
- Fix: Renew Subscription link not working correctly when added to a menu through the Navigation Menu Filtering add-on
- Fix: When creating or updating customers in Stripe, make sure the email address is transformed to lowercase
- Misc: On the Edit Member screen, replace the Expiration Date label with Next Payment Date when the user has a single subscription and it is recurring
- Misc: On the Members List, when hovering over a subscription, transform the Expiration Date label to Next Payment date for recurring subsscriptions
- Misc: Added an option to disable the automatic subscription expiration on payment gateway refunds. This can be found on the Settings -> Misc -> Others page, under Subscriptions Settings -> Gateway refund behavior
2.14.8
- Enhancement: Added Bulk Cancel Memberships action for admins, available from the Members table
- Enhancement: Added Bulk Delete Discount Codes action for admins
- Fix: PayPal malformed request issues appearing for some users
- Fix: Stripe issue with Fixed Period Memberships where sometimes an automatic renewal would double the expiration date
- Fix: Issue with the Restrict Comments feature not working correctly
- Fix: A warning appearing on the Stripe Update Payment Method page
- Misc: Fix translation notice appearing from Labels Edit add-on
- Misc: Hide Cancel action from free subscription plans
- Misc: Fix warning coming from Setup Wizard in some cases
- Misc: Add custom actions before and after the PMS Account Subscriptions Table
2.14.7
- Enhancement: Added currency validation in the front-end for PayPal. Added a persistent message in back-end if default website currency is not supported by PayPal
- Enhancement: Added support for Elementor Templates as Content Restriction messages when using the Template Content Restriction type
- Fix: Let PayPal gateway determine the user locale automatically
- Fix: Issue with Activate Subscription email being sent twice when the subscription was being bought from WooCommerce
- Fix: Updated Stripe Apple Pay, Google Pay integration to support the latest changes from Stripe JS
- Fix: Issue with Credit Card details appearing for free plans
- Fix: Compatibility issues with Profile Builder Conditional Logic when gateways are hidden or shown based on a field
- Fix: Issues with back-end assets where some things weren’t being loaded or applied if the name of the plugin was translated
- Fix: Respect the
redirect_toparameter for the login form if present - Misc: Accessibility improvements to account navigation
- Misc: reCaptcha v3 to disable the form submit button while verifying the request
- Misc: Updated placement for the submit button on back-end pages
2.14.6
- Fix: PayPal migration notice documentation page URL
2.14.5
- Feature: Added a new PayPal payment gateway integration which leverages their newer Rest API. Users can now pay without being redirected to the PayPal site through a modal plus other improvements. Learn more
- Enhancement: The default form is now displaying the Name and Password fields on the same row
- Enhancement: Styling changes for Billing Fields, auto fill first and last name based on form data
- Enhancement: Reworked Stripe gateway back-end functionality so it can be shared with PayPal
- Fix: Issue with full name members search not working
- Fix: Issue with the WooCommerce products shortcode not working correctly with the latest update
- Fix: Bulk delete payments not showing the confirmation message
- Fix: Removed extra styling from the Stripe credit card fields for block themes
- Fix: Reworked the process of updating payment intents from front-end with Stripe so it only gets executed once, just before the payment
- Fix: Issue with Stripe webhooks not working correctly in some cases when changing subscriptions
- Fix: Improved subscription logs by logging attempts to Downgrade, Change or Renew the subscription
- Misc: Merged a lot of Javascript front-end functionality relating to the forms in the core js file
- Misc: Merged the Discount Codes and Stripe CSS files into core CSS to reduce HTTP requests
- Misc: Update URL when navigating subtabs in settings
- Misc: Updated Reports graph colors
- Misc: Added an option on the Settings -> Misc -> Others page that once toggled will list Inactive subscription plans in the Content Restriction metabox
2.14.4
- Fix: Security issue with message atribute of the pms-restrict shortcode. Thanks to Muhammad Yudha and Patchstack
- Fix: Issue with Expiration Date End filters not working on the PMS Members page
- Misc: Do not exclude restricted products from WooCommerce queries by default. Added an option to enable this functionality from the Settings -> WooCommerce tab
- Misc: Apply the default WordPress Date Format to the subscription list that is displayed on the back-end Edit User page
2.14.3
- Fix: Don’t disconnect Stripe account on certain errors
- Fix: Account disconnected notice not disappearing when the account was connected again
- Fix: Disconnect button not showing a popup to confirm in some cases
- Fix: Show the loading indicator for the Stripe form while the checkout is getting updated
- Fix: Don’t throw errors if the already loaded Stripe library is missing some newer functionality regarding payment method domains
- Fix: Display some informative messages on the Gateways settings page when the plugin couldn’t automatically register the domain for Apple Pay and Google Pay
- Fix: Issue with notice about translation triggered too early appearing from the plugin
- Misc: Added a new column ‘subscription_plan_base_price’ when exporting members
- Misc: Dashboard Payment Summary widget is now taking into account Multiple Currencies
2.14.2
- Enhancement: Added possibility to filter the Payments List based on different criteria like Subscription Plan, Payment Type, Payment Gateway, Date
- Enhancement: Added a link to the related subscription for each Payment on the Payments List Table and Single Payment View
- Enhancement: When redirecting to the payment details page after a Manual/Offline payment, the URL will now include the payment id, subscription plan ID and subscription ID (only for logged in users)
- Fix: Issue with filtering members generating very long query strings when members were subscribed to multiple subscriptions
- Fix: An issue with Manual/Offline payment gateway where active subscriptions would not be renewed properly
- Fix: Allow admins to modify the Subscription Billing Details of a subscription that uses the Manual/Offline payment gateway
- Fix: Allow searching by username inside the Payments List
- Fix: Allow admins to change the plan of a recurring subscription with one from the same tier if the payment gateway supports this
- Fix: Make sure the Payment Error message is not displaying an empty retry link in some situations
- Fix: Autologin not working when a payment was failing with Stripe
- Fix: Display of sorting indicators on back-end tables
- Misc: When editing a subscription as an admin, show the Billing Amount field only for recurring subscriptions
- Misc: Save related subscription ID to the Payment when an admin is manually creating payments
- Misc: Allow sorting the Payments List table based on the Subscription Plan, Date and Type columns
- Misc: Make sure a clean URL is generated for the Edit Member Subscriptions link on the Members List table
- Misc: Added a tool on the Settings -> Misc -> Others page that can be used to cleanup unnecessary postmeta that was added by the plugin
2.14.1
- Feature: Implemented reCaptcha v3 score threshold option. This can be configured from the Settings -> Misc -> reCaptcha tab subtab
- Fix: Issue with the Members List not showing subscription information in the Subscribed To column when navigating to different pages than the first one
- Fix: An issue that was causing PWYW subcriptions with a price of 0 to require that a payment gateway be selected
- Fix: Set the end time of Fixed Period Subscriptions to the end of the selected day (23:59:59)
- Fix: Make sure our own custom post type post meta keys are not being saved in postmeta for random post types. Next version will contain a tool to remove unnecessary post meta entries that were created
- Fix: Disable autoloading for some bigger options which do not need it
- Fix: Make sure the Failed Payment webhook from Stripe does not process the subscription if there’s a newer Completed payment for the same subscription
- Fix: Compatibility issues with the Elementor Loop Grid widget
- Misc: Include Currency property inside the PMS_Payment class. Payments can also be searched using their currency through pms_get_payments()
- Misc: Change deprecated jQuery event used in Discount Codes front-end
- Misc: Added a filter with the same name inside the pms_is_member function: pms_is_member
- Misc: Reworked Gutenberg Blocks for forms
- Misc: Add a class over the redirecting to PayPal message which appears when the Profile Builder form is used
- Misc: Add a link over the transaction ID which sends you to the PayPal website to view the transaction for PayPal Express as well
2.14.0
- Fix: Issue with Pending Manual Payment email being sent multiple times
- Fix: Make sure Elementor Cache is bypassed when the logged_out_user restriction is applied
- Fix: Issue with PayPal subscriptions not being canceled when the plan is changed to a non-recurring one
- Fix: Some notices that could be triggered on the Reports page in some cases
- Fix: Show correct payment currency on the WordPress Dashboard page and Paid Member Subscriptions Dashboard page
- Fix: Some potential warnings that could trigger from the content restriction functionality
- Fix: The back-end Bulk Delete Subscriptions functionality is now deleting all of the users subscriptions instead of a random one. It also takes into account any filters that are applied, so it can delete only Pending subscriptions for example. The new rule is that it will delete exactly what you see in the
Subscribed Tocolumn - Misc: Show Connect with Stripe button as soon as the gateway is enabled in settings
- Misc: Show a notification when future payments are scheduled through Stripe but the gateway is disconnected
Click Here to view the full changelog.