Forum Replies Created
-
AuthorPosts
-
June 18, 2025 at 3:08 am in reply to: Paid membership via PayPal results in upgrade prompt (no registration link) #30640
admin
KeymasterWhat you described doesn’t align with how the Simple Membership plugin handles member registration in its standard setup. In the standard registration flow, the plugin uses the email address entered during the PayPal checkout for creating the membership account.
Each membership account must have a unique email address. If an account already exists with a specific email, that same email cannot be used again for registration. As a result, the plugin won’t send a “complete registration” prompt if the email is already tied to an existing account.
For your use case, we recommend using the alternate registration scenario described here:
https://simple-membership-plugin.com/allowing-members-create-account-prior-completing-membership-payment/In this flow, users first register using any email address of their choice. Later, they can complete a paid membership purchase using any PayPal account—without linking it directly to the account email.
Let me know if this 2nd option works for your setup.
June 11, 2025 at 5:11 am in reply to: Understanding how subscription cancellation works with Stripe #30614admin
KeymasterIf you set the membership to “Expire after 90 days,” the member’s account will expire 90 days after access is initially granted.
For recurring subscription payments, each successful payment extends access by another 90 days from the date of that payment—regardless of when the initial access began. This ensures continuous access as long as payments keep arriving within the expiration window.
Because there are multiple ways to configure access (such as one-time payments, recurring subscriptions, etc.), we’ve provided a detailed explanation of the various scenarios in our documentation.
https://simple-membership-plugin.com/adding-membership-access-levels-site/Since you are using recurring payments, the following documentation will be useful for you:
https://simple-membership-plugin.com/membership-level-configuration-for-subscription-recurring-payments/admin
KeymasterIf you’re working with one of the plugin’s system pages, it must be referenced by its Page ID—this is by design and serves important architectural purposes. Avoid creating duplicate copies of system pages. If you need to change the URL of a system page, delete the existing one first and then recreate it following the steps in this guide:
https://simple-membership-plugin.com/recreating-required-pages-simple-membership-plugin/
Sidenote: You cannot use a draft page as a redirect URL in the Simple Membership plugin. Draft pages are not considered valid URLs and will not function properly for redirection purposes.
June 10, 2025 at 7:05 am in reply to: Understanding how subscription cancellation works with Stripe #30609admin
KeymasterWhat happens when a subscription is canceled depends on how the membership level is configured. If you haven’t seen it already—or if you plan to adjust your setup—this guide is a helpful reference:
https://simple-membership-plugin.com/what-happens-when-paypal-subscription-cancelled/
You’ve mentioned that the membership level is set to “No Expiry”. In this case, when a Stripe subscription is canceled, the member’s account should be set to “inactive” immediately upon receiving the cancellation notification.
If that’s not happening, it likely means the Stripe webhook isn’t configured correctly. Please follow these troubleshooting steps:
#1) Refer to the following webhook configuration section of the Stripe subscription button documentation:
https://simple-membership-plugin.com/sca-compliant-stripe-subscription-button/#create-a-webhook-in-your-stripe-accountEnsure your Stripe account’s webhook is set up exactly as described in this guide.
#2) Next, enable debug logging and perform a test transaction and cancellation. This will help confirm whether the plugin is receiving the cancellation notification from Stripe:
https://simple-membership-plugin.com/enable-debug-logging/
In some cases, overly strict server firewalls or security settings can block Stripe’s webhook events. If this happens, the plugin won’t receive the cancellation notice, resulting in the member still having access.
Let me know if this info in helpful.
admin
KeymasterThank you for the details.
It appears that in some countries, PayPal does not pass the email address to the client side during guest checkout due to privacy restrictions. We’ve made an improvement in the plugin so it can perform an additional server-side query to retrieve the email address in such cases.
Just a quick note: the screenshot you shared seems to show the classic/standard PayPal button. We recommend switching to the new PayPal (API-based) subscription button, which provides a more modern and reliable checkout experience:
https://simple-membership-plugin.com/create-paypal-subscription-buttons-paypal-api/If you prefer to continue using the classic PayPal checkout option, consider updating your registration flow so that users are required to create their account before making payment. This approach ensures a smoother and more consistent experience:
https://simple-membership-plugin.com/allowing-members-create-account-prior-completing-membership-payment/The plugin update we’ve made should improve the guest checkout experience when using the new PayPal API integration.
We intend to release this version in the next week or so. However, in the meantime, I am going to give you an updated copy of the plugin so you can use it and see if this works better on your site.
You can download an updated copy of the plugin from our site using the following link. Let me know if this makes any difference:
https://simple-membership-plugin.com/wp-content/uploads/simple-membership.zipIf you want to try this update, first delete the currently active copy of the plugin then upload and activate the above mentioned one. You won’t lose any data (members, payments, buttons, settings etc.) in the process so it is safe to do this.
admin
KeymasterThank you. Could you also share a screenshot of the payment button’s configuration? That way, I can replicate the same button setup on my site.
admin
KeymasterThe best way to troubleshoot this is by following the steps outlined in this guide:
https://simple-membership-plugin.com/forums/topic/test-for-plugin-and-theme-conflict-before-posting-an-issue-or-a-bug/Start by deactivating all plugins except the main Simple Membership plugin, then test the login functionality.
If it works correctly, begin reactivating your other plugins or addons one at a time. After activating each one, test the login again. This process will help you identify which plugin is causing the unwanted redirection, so you can investigate its settings or configuration further.admin
KeymasterPayPal checkout always requires the customer to enter an email address, and that email is expected to be forwarded to the plugin. I’ve never seen a successful PayPal checkout complete without the buyer providing an email.
Can you confirm whether you’re using the PayPal Standard button or the new PayPal API button?
Also, please provide a screenshot of the PayPal checkout window showing exactly what is being selected. This will help me understand the flow you’re seeing. There might be a country-specific variation in how PayPal behaves, which I’m currently not aware of. I’ll need to replicate the exact setup on my end to investigate further and identify any potential issues.
admin
KeymasterRegarding the free level change/update shortcode feature you mentioned, please note that it does not have any built-in functionality to remember or restore the membership level a user had before their account expired:
To achieve this functionality, a custom solution would be required. The custom implementation could follow a logic similar to the following:
1) Store Previous Membership Level on Expiry
When a user’s account expires and the system auto-downgrades them to a free level, a custom mechanism would need to save the user’s current membership level (before the downgrade) in their member meta data:https://simple-membership-plugin.com/auto-downgrade-an-expired-members-account/
2) Restore Saved Level on Button Click
Then, when theswpm_update_level_toshortcode is used, the feature can be extended to check for a previously stored membership level in the member’s meta data. If found, it can update the member’s level back to that value instead of using the level ID defined in the shortcode.admin
KeymasterWe’ve added a couple of new functions in the latest version of the plugin to help you apply content protection programmatically. You can find details about these functions in the following section of the documentation:
May 24, 2025 at 9:47 am in reply to: How can I edit a page builder page (Beaver Builder) after protecting page? #30441admin
KeymasterWhat is the full URL that you see when you go to edit a WordPress page in that builder?
admin
KeymasterOur plugin can protect a page if it is part of the WordPress system. So, to apply general protection using our plugin, the form you’re referring to must be embedded on a WordPress page.
If embedding it on a WordPress page isn’t possible, the alternative is to implement custom code that checks whether a member is logged in and applies protection accordingly. This custom implementation would need to be done on your end.
Our plugin provides helper functions for checking login status. You can refer to the following page for some useful examples and functions to assist in building your own solution:
https://simple-membership-plugin.com/simple-membership-miscellaneous-php-tweaks/admin
KeymasterHi, It looks like you are using the form builder addon which is a paid addon. Please submit a ticket using the following page:
https://simple-membership-plugin.com/premium-addon-support/admin
KeymasterIn addition to what @wzp mentioned, you can use section protection to hide the renewal button unless the account status is ‘inactive’ or ‘expired’. This ensures it’s not visible to logged-in members with an active account.
https://simple-membership-plugin.com/apply-partial-section-protection/
admin
KeymasterIt’s likely that the username and password values are not being included in your API request. Without these details, the system cannot create the corresponding WordPress user account.
To investigate further, edit the following file from the API addon:
swpm-api/classes/class.swpm-api-profile-endpoints.phpSearch for the following line of code in this file:
SwpmUtils::create_wp_user( $wp_user_info );Add some debug code before or after this line to confirm whether your API call is reaching this point.
-
AuthorPosts