Product update

Version 3.3 beta released

Restrict Content Pro version 3.3 includes many exciting new features, such as: saved cards for Stripe, support for 3D secure 2.0 with Braintree, a new admin report, and more!

How to test the beta

In order to help ensure the final release of 3.3 goes as smoothly as possible, we need your help testing this beta version.

Testing the beta is very simple. Simply log into your testing site that has Restrict Content Pro installed and activated and navigate to Restrict → Settings → Misc and check the box for Opt into beta versions:

Opt in to Restrict Content Pro beta versions

The beta update will now be available as a standard WordPress plugin update from your Plugins page, though it could take up to a few hours for the notification to appear.

See our FAQ if you have any questions or issues updating to the beta version. If you encounter any bugs, please let us know through our support page.

Note: we do not recommend you test the beta on a live site. Use a testing site. While we do our very best to not cause issues during updates, sometimes issues do slip through unnoticed, so having a staging / testing site is very important.

Saved cards for Stripe

The Stripe gateway has always saved cards inside Stripe, but we’ve never had a UI within Restrict Content Pro that allowed customers to select these cards for new purchases; customers have always had to re-enter their card details for each transaction. We’re thrilled to announce that version 3.3 will allow existing customers to select a saved card to use when upgrading, downgrading, or manually renewing their membership.

This option also extends to the [rcp_update_card] shortcode. When updating the payment method for a Stripe subscription, the customer will be able to choose a saved card or enter a new card.

We hope this will allow for much easier and faster registrations for your existing customers.

Braintree 3D secure support

After adding 3D secure support for Stripe, we turned our focus to Braintree. There are a number of Braintree-related changes in the 3.3 release, including:

  • The Braintree SDK has been updated.
  • We’ve changed our implementation to use the Braintree drop-in UI.
  • The drop-in UI gives us built-in support for using saved Braintree cards for additional purchases.
  • We’ve added support for 3D secure 2.0.

The drop-in UI may be a big visual change, but it will allow us to more easily consider adding support for alternative payment methods through Braintree (such as PayPal payments through Braintree).

In order to utilize 3D secure, it needs to be enabled in your Braintree account. It’s automatically enabled for sandbox accounts, but you will need to contact Braintree to have it enabled in your live account.

Once enabled, some customers may see a 3D secure prompt like this while their card is being processed:

New report for membership counts over time

We’ve added a new admin report that graphs your number of memberships with each status over time. In order to accurately track this information each day, we’ve added a new database table called wp_rcp_membership_counts. Each day Restrict Content Pro runs a cron job that counts the number of memberships for each level and in each status and records those numbers in the database table. This values then generate a graph much like this:

This graph allows you to get a picture of the overall status of your membership site over a period of time. Are active memberships trending up or down? How does your number of expired memberships this month compare with last month?

Unfortunately, as this table has only just now been added, historical data is not available. But the numbers will start getting logged as soon as you upgrade to version 3.3, and then you’ll have all the information available from here on out!

Support for reCAPTCHA v3

Once upgrading, you will have the option of enabling reCAPTCHA version 3. In order to remain fully backwards compatible with supporting version 2, you may select your desired version number in Restrict → Settings → Misc.

If you were previously using v2 and decide to switch to v3, you will need to generate a new set of keys from the reCAPTCHA website and update your settings accordingly.

Unlike v2, which shows an “I’m not a robot” checkbox, reCAPTCHA v3 is nearly invisible on your site. When enabled, all your customers will see is a reCAPTCHA logo in the bottom right corner of the page. Your customers do not have to interact with it at all. Google then uses a scoring system to determine how likely it is that the user is a real person.

This is a great option if you want the help of reCAPTCHA to prevent spam without inconveniencing your customers.

Full changelog

  • New template file: card-update-form-fields.php
  • Modified template files: card-update-form.php, register-total-details.php
  • New: Added support for using saved Stripe cards for new purchases.
  • New: Updated the Braintree SDK, added support for the drop-in UI, and added support for 3D secure.
  • New: Added support for reCAPTCHA v3. This can be enabled in Restrict → Settings → Misc by changing the version number. You will also need to generate v3 keys.
  • New: When in test mode, test credit card numbers are now displayed in the registration form for supported gateways. This allows for easier and faster testing. This can optionally be disabled with this filter: add_filter( 'rcp_show_test_card_on_registration', '__return_false' );
  • New: Added RCP_GATEWAY_SANDBOX_MODE constant. This allows you to force sandbox mode to always be enabled. Recommended on staging sites.
  • New: The membership next renewal date is now displayed in the registration form.
  • Improvement: Attempt to auto-style the Stripe Elements field, using styles on existing on-site checkout fields.
  • Improvement: Our discounts database code has been rewritten to use our new custom table engine. This resulted in a number of discount classes being deprecated and new classes/functions being introduced. All changes should be fully backwards compatible.
  • Improvement: Code changes that allow for payment gateways to override the card update form.
  • Fix: If someone applies a one-time 100% off discount code and does not sign up with auto renew, their expiration date is incorrectly set to “never expires”.
  • Fix: Always set the type attribute on all admin text input fields. This fixes a display inconsistency in WordPress 5.3+.
  • Fix: Invalid HTML markup with Stripe Elements.

Release date for 3.3

The beta version of 3.3 is available today and we hope to release the final version on or near the 3rd of December.

Similar Posts


  1. Is there any plan to release more integrations with third party plugins, other membership plugins such as PMP and MP are already ahead in that space as they have a lot of native integrations with 3rd party plugins that is limiting use of RCP on projects. I know it will involve partnering with these developers, but it will be win-win for all parties. TutorLMS is one that comes to mind as it is a growing force and viable alternative to Learndash in the WP LMS space

    1. We don’t have any immediate plans at this time, but we will certainly keep that in mind! Thanks for your feedback.

      1. +1 for TutorLMS integration.

        I heard from TutorLMS team that they’re investigating the possibility to support RCP. I hope you guys already in talk with them re. this integration.

  2. Looks nice on this update. I’m excited to get these changes implemented in our processes in the new year. Keep up the good work!

  3. RCP – Love the updates, and I love your mailings.

    I have one site that I’m hoping to use it for that is actually a real (physical) membership venue.

    Sometimes we will be upgrading memberships on the back end when folks ask in-person (rather than them logging into the portal themselves and upgrading).

    If I’m reading the documentation correctly, this cancels any ‘recurring payments’. Does this mean that the member needs to log back in anyway and then re-enable ‘Auto-renew’ themselves? Or am I mis-reading this? (see the ‘How can I change the membership level?’ part).

    We are planning on using auto-renewal for these members and we don’t want to have them go from a (for example) 1 workout per week to 2 workout per week plan (having asked us to do so) – and then to find out that their Auto-renew wasn’t functioning.

    1. Hi Paul!

      The customer would need to manually renew their membership to set up a new subscription at the payment gateway. If you’re using the Stripe gateway then you can do this for them following these instructions: If you’re using PayPal then the customer has to do it themselves in order to authorize the new amount via their account.

      If you have further questions about this then please feel free to get in touch with us here: We’ll be happy to discuss this with you in more detail.

Comments are closed.