I'm currently trying to set up a site for a client. They

Hi,

I'm currently trying to set up a site for a client. They have two Subscription Plans and a 14 Day Free Trial. I'm trying to figure out the best way to set this up, and the client is particularly concerned about people abusing the 14 Day Free trial. So far none of the methods I've tried stop people from just continually signing up for the free trial.

What's the best way to tackle this?

In terms of the subscription plans, I see two options:

1. A single plan, with 14 Days free followed by a monthly fee.
2. Two plans, a single finite 14 Day plan and a monthly plan.

With the first option, how do I handle the transition from free to paid, can I only ask for payment details after 14 days? How is this handled?

With the second option, I could just create a link to a Subscriptions page where they could sign up for the paid option, but how do I stop them signing up for the trial again?

Hopefully that's enough information to see what I'm getting at. If not just ask.

Any help with this would be much appreciated. I did a search and found many similar topics but the answers were vague and not particularly helpful and many were over a year old and mentioned potential future updates that may be relevant.

Cheers.

  • Jack Kitterhing

    Hi there @secretlyfamous

    I hope you are well today and thank you for your question.

    I'm not sure if you've seen this https://premium.wpmudev.org/forums/topic/free-trial-members-are-able-to-sign-up-for-trial-after-their-trial-period-expired but that may help a little. With the handling the changeover from free to paid.

    Are you limiting each email address to one username only? If so, they can't sign up for a free trial again, as they'd have to create another user ID, and if you go with the first option as the trial is in with the paid, the trial part will have expired, so they could only move onto paid.

    Whereas if you went with the second option there's not a really of stopping people from signing up twice, as restricting it via IP wouldn't really work, one thing you could use is perhaps the invite codes? And make them one use, that way, people could only sign up once as they need an invite code to sign up, would that work or not really? One problem I can see then is, people need to be aware of the codes but to do that it breaks the point of having them, unless a user had to request access to the site?

    Thank you!

    Kind Regards
    Jack.

  • secretlyfamous

    Hi Jack,

    Yes I saw that, I am still a little unclear on how it handles the transition. Once they're transitioned from Free to paid, what stops them from cancelling the subscription and re-subscribing from the beginning with 14 days free.

    I noticed during some testing that cancelling a finite subscription will block the ability to sign up again until the subscription. If the last stage is serial does this mean that they won't be able to sign up again?

    What if the user cancels and wishes to continue, but from the stage that required payment?

    Basically, I'm trying to understand the workflow for the user. I understand, based on that thread, that if the 2nd stage requires payment, then they will lose access after the first stage expires until they sign up to the paid level. How is this handled. When the user logs in what do they actually need to do to go to the paid stage?

  • Jack Kitterhing

    Hi there @secretlyfamous

    Yes I saw that, I am still a little unclear on how it handles the transition. Once they're transitioned from Free to paid, what stops them from cancelling the subscription and re-subscribing from the beginning with 14 days free.

    The transition would be handled like this, after the 14 day period, they would login and need to pay for their new subscription to activate it, so they would login and go to the subscriptions page to confirm and check out for that, if that makes sense?

    With regards to cancelling and re-subscribing, they would need a different email address, which most people wouldn't use to just gain free access, but one thing you might want to consider is to block the subscriptions based on IP address, but again this isn't a fool proof way, but it would prevent most people from doing it :slight_smile:

    I noticed during some testing that cancelling a finite subscription will block the ability to sign up again until the subscription. If the last stage is serial does this mean that they won't be able to sign up again?

    Just to clarify, a finite subscription is cancelled, user can't resubscribe till period is over or ever? And you wish to know if the serial subscription is the same? Sorry I don't want to provide you wrong advice, that's why I would rather ask and just confirm that :slight_smile:

    Basically, I'm trying to understand the workflow for the user. I understand, based on that thread, that if the 2nd stage requires payment, then they will lose access after the first stage expires until they sign up to the paid level. How is this handled. When the user logs in what do they actually need to do to go to the paid stage?

    The overall workflow would be sign up > 14 days free > after 14 days sign in > subscription page > checkout > subscription activated :slight_smile:

    Thank you for being a WPMU DEV member!

    Kind Regards
    Jack.

  • secretlyfamous

    Hi Jack,

    Thanks for your help, I think I'm getting it.

    With regards to the cancellation, what I mean is that when I cancelled a subscription during a test, the Subscription page shows a message under the subscription that I have:

    Your membership is due to expire on : [Date]

    I was just wondering what would happen if user cancelled a serial subscription. What would appear on the Subscriptions page?

    When I tested it there wasn't even an option to cancel, so I couldn't check. Is this because of the 1 day limit of upgrades and renewals?

    A summary of my questions, hopefully mostly yes or no:
    1. I can set up a trial by creating a plan with a finite 14 day free stage, followed by a serial stage at whatever price the client wants to charge. Correct?
    2. When the user signs in after 14 days they will not have access to the protected content until they pay at the Subscriptions page. Correct?
    3. When testing, it looked like the user was still required to sign into PayPal, and PayPal indicates it would automatically charge after 14 days? Why is this, doesn't that contradict #3? Is this because of the payment gateway?
    4. Assuming 3 is correct, what does this look like, another Subscribe button?
    5. In either case, can the user cancel the recurring payments from the Subscriptions page?
    6. If so, are they able to re-up at the paid level, or would they need to create a new account?

    Basically, this is the process I'd want:
    1. User registers. They sign up for 14 day trial.
    2. After trial lapses, they can visit the sign and choose to continue subscription for payment.
    3. They can cancel their subscription at any time (after a day at least) to stop being charged.
    4. If they cancel, they can't do another 14 day trial with the same account.
    5. Ideally they'd be able to continue subscription after cancelling if they choose.

    Is there anything in there that would be a problem?

    Thanks so much for your help.

  • Jack Kitterhing

    Hi there @secretlyfamous

    I hope you are well today, sorry for the delay with my reply. I'll answer your questions below, on a couple I apologize for the brief reply, but I thought that was what you was looking for, from where you said "hopefully most are yes or no" but if you would like more in depth answers feel free to ask.

    1. I can set up a trial by creating a plan with a finite 14 day free stage, followed by a serial stage at whatever price the client wants to charge. Correct?

    Correct :slight_smile:

    2. When the user signs in after 14 days they will not have access to the protected content until they pay at the Subscriptions page. Correct?

    Correct, they'll need to pay on the subscriptions page before having access to the premium content :slight_smile:

    3. When testing, it looked like the user was still required to sign into PayPal, and PayPal indicates it would automatically charge after 14 days? Why is this, doesn't that contradict #3? Is this because of the payment gateway?

    Hmm this is interesting, so when you finished the subscription sign-up process, PayPal looks like it will automatically charge after 14 days? Do you have this setup with a test subscription (say for a £1 or $1 etc, that I could test live?

    4. Assuming 3 is correct, what does this look like, another Subscribe button?

    3 is pending, based on the above, so I'm afraid now this 4th question is pending :slight_frown:

    5. In either case, can the user cancel the recurring payments from the Subscriptions page?

    The user can cancel the subscription, but this won't cancel the subscription in PayPal they will need to cancel that within their PayPal account.

    6. If so, are they able to re-up at the paid level, or would they need to create a new account?

    They should be able to sign up for the paid level again, but for this, you would need another subscription that is just paid without the free part if that makes sense?

    Basically, this is the process I'd want:
    1. User registers. They sign up for 14 day trial.
    2. After trial lapses, they can visit the sign and choose to continue subscription for payment.
    3. They can cancel their subscription at any time (after a day at least) to stop being charged.
    4. If they cancel, they can't do another 14 day trial with the same account.
    5. Ideally they'd be able to continue subscription after cancelling if they choose.

    All sounds good and correct, just pending on question 3: from the first of set questions.

    I look forward to your answer so I can test this live on your site :slight_smile: Or if you have sandbox enabled that is also fine, I can test with that :slight_smile:

    Thank you for being a WPMU DEV member!

    Kind Regards
    Jack.

  • secretlyfamous

    Hi Jack,

    Thanks for your answers. Unfortunately I don't have a site you can test with right now, so I'll just describe it

    I might actually be misreading what PayPal is saying though. The dollar amount it wants is 0, however the 'terms' column says:

    Free for the first 14 days
    Then $20.00 AUD for each month

    This is with the PayPal Express Gateway.

    I've gone through the process and tested it and it appears that PayPal will automatically start billing after 14 days.

    Now I'm not sure if cancelling the subscription on the site will cancel the payment, or vice versa.

    I've also tested the PayPal Single Payments Gateway, and it doesn't appear to actually go through to PayPal at all. Is this the one that will work they way you describe.

    Presumably after 14 days it will behave much like the other gateway, where it chargers periodically.

    So, assuming I stick with the Single Payments Gateway, and since I don't have time to test it expiring automatically:

    1. After 14 days, I log in. What happens?
    2. If I cancel the subscription through PayPal, what happens on the website?
    3. What if I cancel on the website, will the PayPal payment be cancelled?

  • secretlyfamous

    Hate to be a pest, but I really need an answer to 2 and 3 above.

    Number 1 isn't a huge deal. I'm guessing they just have to go to the subscriptions page and do something? And I can put a note on the protected content page telling them what to do to re-activate?

    My main concern is whether people will keep getting charged if they cancel on the site or if they'll keep access if they cancel with PayPal.

    Ultimately my main concern is stopping people abusing the free trial. Onviously there's not much we can do if they create new accounts, but I don't want people re-upping on the trial with the one account.

  • Jack Kitterhing

    Hi there @secretlyfamous

    I hope you are well today, I'd like to apologize about the extreme delay on this, I missed your previous reply somehow :slight_frown:

    To the issue at hand, I've been testing this with the PayPal express gateway, and using PayPal express, it sets it up at checkout, so a user would pick the subscription, upon checkout, free for 14 days then ex amount per month all through PayPal, so they wouldn't need to individually checkout once the trial has expired if that makes sense?

    You are indeed correct that if you use PayPal single payments gateway, it should work in the way I described in my above posts, but after looking at how the PayPal express gateway works, I would recommend you go with that, as PayPal single doesn't handle recurring subscriptions.

    1: As above, I don't believe that would work in the best way, I'd recommend the PayPal express gateway, as then it will automatically bill and they should automatically continue on the paid level :slight_smile:

    2: If the subscription is cancelled in PayPal, they should continue to have access to the site, till their subscription has expired :slight_smile:

    3: PayPal payments won't be cancelled I'm afraid, that would need to be cancelled directly in PayPal,

    Thank you for being a WPMU DEV member and again sorry about the delay here.

    Kind Regards
    Jack.

  • secretlyfamous

    Hi Jack,

    Thanks for the response. With regards to cancelling with PayPal, when does their subscription expire? If I'm charging monthly then ideally it would expire within a month of them cancelling.

    Here's a couple of scenarios I'm confused about:

    - The user signs up for the 14 day trial, and cancels their subscription on the website after 5 days. Then 9 days later they get a nasty shock and get charged, but can't even get access to the site. Obviously we'd need to somehow give the user notice that they have to cancel from PayPal, but even then I can see people messing this up. How can we avoid this? For example, can we disable cancellation on the website and let PayPal take care of it?

    - A user signs up and after 14 days they start getting charged and now they have access to the site. After another 2 months they cancel their payments on PayPal. How is the expiration handled on a recurring subscription? Is each payment through PayPal actually communicating to the plugin to move the expiration forward another month?

    Basically, is there any real connection between the subscription on PayPal and the Subscription plan. If cancelling on the website doesn't cancel the payment, does it really work the other way?

    Know that cancelling on the website doesn't affect PayPal, this is how I'd expect it to work:

    - User registers.
    - User selects only subscription plan.
    - PayPal sets up automatic payments that begin after 14 days for a certain amount monthly.
    - If the user cancels the payments within 14 days they have access until 14 days are up. After that they are not charged and cannot access protected areas of site.
    - If the user cancels any time after that, they get access for the remainder of the month for which they've already paid. After that they are not charged and cannot access protected areas of site.
    - If the user doesn't cancel they always have access to the protected areas of the site.
    - If the user cancels they need to create a new account and subscribe again.

    Is this how it will work? Apart from the obvious (correct payment gateway, subscription plan) what do I need to do to make it work this way?

    Based on the answers I've been getting I'm not actually confident I can set this up the way I want without at least some of the of the following:
    - It being possible for the user to think they've cancelled their subscription but still get charged.
    - It being possible for the user to cancel their payments but continue to access the site indefinitely.
    - It being possible to cancel a subscription, only to re-subscribe with the trial, thus getting free access as long as they want.

    I've seen the lead developer of the plugin post around here, so I'd love it if he could comment, but at the moment I'm very concerned that if I try to set this up at all, it will come back to bite me.

    Cheers.

    EDIT: I just realized this doesn't have a proper title! Sorry about that. Can I set one at this point? If not, but an admin can, this should be titled "Correct Setup for Free Trial".

  • Jack Kitterhing

    Hi there @secretlyfamous

    I hope that you are well today! :slight_smile:

    Sorry for the delay.

    With regards to cancelling with PayPal, when does their subscription expire? If I'm charging monthly then ideally it would expire within a month of them cancelling.

    If they are on a 1 month serial plan which is recurring, and they cancel, their subscription would expire after the 1 month of when it started and they wouldn't be charged again if that makes sense? i.e They wouldn't loose access straight away to the content.

    - The user signs up for the 14 day trial, and cancels their subscription on the website after 5 days. Then 9 days later they get a nasty shock and get charged, but can't even get access to the site. Obviously we'd need to somehow give the user notice that they have to cancel from PayPal, but even then I can see people messing this up. How can we avoid this? For example, can we disable cancellation on the website and let PayPal take care of it?

    I can completely understand that situation what you might want to do is use the included shortcode for the renew/subscription form and then include a message that cancelling through the website does not cancel the automatic payments, you must cancel from within your PayPal account or something along those lines.

    - A user signs up and after 14 days they start getting charged and now they have access to the site. After another 2 months they cancel their payments on PayPal. How is the expiration handled on a recurring subscription? Is each payment through PayPal actually communicating to the plugin to move the expiration forward another month?

    You are indeed correct, the plugin communicates with PayPal's IPN (instant Payment Notification). This means that when the payment is made, the subscription is automatically moved forward another month with anything manual needed :slight_smile:

    - User registers.
    - User selects only subscription plan.
    - PayPal sets up automatic payments that begin after 14 days for a certain amount monthly.
    - If the user cancels the payments within 14 days they have access until 14 days are up. After that they are not charged and cannot access protected areas of site.
    - If the user cancels any time after that, they get access for the remainder of the month for which they've already paid. After that they are not charged and cannot access protected areas of site.
    - If the user doesn't cancel they always have access to the protected areas of the site.
    - If the user cancels they need to create a new account and subscribe again.

    Yes and no, Yes till you get to the part with the 14 days free, as on checkout the payments are authorized, which means that even if they don't want it after 14 days they would need to cancel before as otherwise they would be charged, as membership doesn't technically have a trial, which means that the current way to do this is more of a workaround which in turns means it doesn't quite function how you might expect :slight_frown:
    If the user cancels they can just resubscribe, they don't need to create a new account :slight_smile:

    If the user cancels any time after that, they get access for the remainder of the month for which they've already paid. After that they are not charged and cannot access protected areas of site.

    Correct :slight_smile:

    1- It being possible for the user to think they've cancelled their subscription but still get charged.
    2- It being possible for the user to cancel their payments but continue to access the site indefinitely.
    3- It being possible to cancel a subscription, only to re-subscribe with the trial, thus getting free access as long as they want.

    1: They could think that, but I believe using the shortcodes would be the best way to communicate this clearly to your subscribers that they must cancel the automatic payments from within their PayPal payments.

    2: That wouldn't be possible, the subscription would expire and the IPN would communicate that no payment has been made so they would loose access till they re-pay :slight_smile:

    3: That is a concern and could very well happen I'm afraid, the only way to avoid that would be to replicate your subscriptions and thus give people who have already subscribed a plan with no free trial within it.

    I'll also ping @Barry to provide his valuable insight :slight_smile:

    Thank you, sorry again about the delay.

    Kind Regards
    Jack.

  • secretlyfamous

    Hi Jack, thanks for your response. That answers most of my questions. My only remaining concern is number 3, about the trial. Does your answer still apply if the user doesn't create a new account?

    We're generally fine with people being able to create a new account with a trial, we don't really expect to be able to do anything about that. I'm more concerned with people being able to just re-up on the trial with the one account, all without ever even having to log out.

    Cheers.

  • Jack Kitterhing

    Hi there @secretlyfamous

    I hope you are well today.

    I see, yes if the trial is on the subscription plan in theory they would be able to reactivate their subscription with the trial again, I must say though I have never tried personally, I believe it's tied with the user ID, But after looking at the structure it looks like it could be reapplied. Which of course isn't the way it would need to work.
    Ideally if they are on a serial plan they would know this, As it would reactivate month on month.

    I'm going to see if the lead developer @Barry can provide some clarification on that.

    Thanks!

    Kind Regards
    Jack.

  • Jack Kitterhing

    Hi there @secretlyfamous

    I hope you are well today.

    I do agree on this and have been testing, as it doesn't have trial functionality out of the box, so the current way of doing the trial is more of a workaround and if that is the only plan available, there wouldn't be another plan to choose, but from my testing even if there is another plan, they could still choose the other one.
    Unless I've missed something here. Hopefully Barry can provide his valuable insight into this for us :slight_smile:

    Thank you for your patience.

    Kind Regards
    Jack.

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.