The Membership Cancel page includes a shortcode that allows members to immediately cancel their membership. This post covers some alternative methods to manage or modify the default behavior of member cancellations.


Don’t want to allow members to cancel?

The default [pmpro_cancel] shortcode outputs a message and button that a member would click to cancel their account.

One of the commonly requested features is to remove this behavior and require members to contact you in order to cancel their membership.

To do this, navigate to Memberships > Page Settings and click “Edit” for the page assigned as the “Membership Cancel” page. Then, remove the [pmpro_cancel] shortcode and replace it with your desired content. You could simply put a message and a contact email address, such as:

Please contact us as info@domain.com to request a membership cancellation.

Or, add a contact form using a plugin such as Gravity Forms, Ninja Forms, Caldera Forms, or the “Feedback” module of Jetpack.


Downgrade Membership instead of Canceling

If you offer a “free” membership level, this post includes the recipe to change a member’s level when they cancel or expire. Using this method, a member could use the default cancellation process, their paid membership level would be removed, any attached subscription at the gateway will be cancelled, and their membership level will be changed to your default (downgrade) level.

View the Tutorial


Delete the User Account

If you run a VERY tight ship and want to remove the WordPress user when they cancel their account, this post includes the recipe to do so. We don’t recommend doing this as it messes up a lot of data in Memberships > Orders. It’s also smart to maintain a list of canceled members for future marketing efforts. Perhaps you would like to invite them back at a discount or offer a new membership that wasn’t previously available. That said, there can be other reasons that you would need to delete the user account so we still want to demonstrate how this is done.

View the Tutorial


Cancel a Member Automatically After Failed Subscription Payment

This method doesn’t relate to a member canceling themselves, but rather when the gateway lets your site know that a member’s subscription payment failed. The Failed Payment Limit Add On allows you to specify a number of “tries” before the membership is cancelled.

Be sure to check with your gateway settings, as some gateways (such as Stripe) allow you to set rules related to retries and failed payments on recurring subscriptions. These can override the settings of the Failed Payment Limit Add On.

View the Add On


Have another creative member cancellation request?

This post has covered a few alternative / custom methods as related to member cancellations. If you have another idea on how you would like to manipulate cancellations, post a comment below or open a topic in our member forums for support on the methods described above.


Author’s gravatar

We’re using PMP with BuddyPress. It has a “delete account” button by default for users in their Settings menu. We’ve hidden it for now, but if they did delete the account through BuddyPress, will it cancel their recurring payment at the Gateway?

Reply
Author’s gravatar

I’m not sure how the BuddyPress delete function works, but if it actually deletes the WP user then yes PMPro will detect that and try to cancel the subscription at the gateway. Even so, it’s not a great idea to delete WP users who are PMPro customers as that deletes a lot of data about the user that you’ll want for your orders/etc.

I think you should probably hide that function as you are doing and instead give users a way to get to the PMPro cancel page to cancel their accounts. I know some folks are really concerned about their privacy and closing old accounts. You might want to allow them to request account deletion and do it manually. Maybe we can figure out a way to account for user deletions without breaking the data that PMPro needs.

Reply
Author’s gravatar

How can I customize the cancellation page text? This text: “Are you sure you want to cancel your [level name] membership?”

Reply
Author’s gravatar

You could create your own cancel page template: https://www.paidmembershipspro.com/documentation/templates/customizing-via-theme-templates/

Or add custom code hooking into the “gettext” filter. This would be a little trickier than usual because that string is a bit different based on the membership level being cancelled. Here’s an example of how to write code filtering on gettext: https://gist.github.com/strangerstudios/0ff19daaee3bcfc76b441982c1c6645e

We can help provide a more specific solution in our member forums.

Reply
Author’s gravatar

Stupid Question:
Trying to use “Cancel a Member Automatically After Failed Subscription Payment”

It tells me to add the following in functions.php
define(‘PMPRO_FAILED_PAYMENT_LIMIT’, 3);

I want to confirm if the code will end with “3” in all cases?? or only if we want to cancel after 3 failed attempts??

I want to cancel after the first failed attempt and I have set the same under the drop down option in Advanced Settings. But I just want to confirm if the above code needs to be replaced by 1 instead of 3.

Thanks

Reply
Author’s gravatar

Is there a way when the user or us ( at the admin level) cancels the payment or their membership that it will default back to a certain user level. We have paid memberships but we also have one level called Free Access and I want it to default back to that when the membership expires, payment fails, memberships cancelled, etc.

Reply

Leave a Reply

Your email address will not be published. Required fields are marked *