One purchase cancels a recurring payment

Forums General One purchase cancels a recurring payment

Viewing 23 posts - 1 through 23 (of 23 total)
  • Author
    Posts
  • #549
    Carole Asselin
    Participant

    This has happened 3 times at least, so far, and twice to the same person. They have a monthly recurring payment, set through Paypal, for $10/month. This has been active for years now. The members purchases a one-time fee product, and by doing that, within seconds gets a notice from Paypal that *I* cancelled her membership (i also get a similar notice). We have NO IDEA why it happens, and it has happened several time, yet, it does not happen all the time (another customer with the same recurring payment, made the exact same purchase minutes before, and had no problem, and another one, a few minutes after).

    Has that ever been documented or reported?

    What might you need to troubleshoot the cause of this?
    I am lucky those clients are long time clients so they don’t mind the inconvenience, but it is still quite an inconvenience.

    #550

    Was the one-time payment for a level or a custom capability?

    I ask because subscriptions are only for levels, and the user buys a different level, the subscription for the one he had gets cancelled.

    I don’t think that this should happen when it’s just the purchase of a custom capability without the level.

    Could you show me the shortcode for the form/button the user got when he paid the one-time and got his subscription cancelled?

    I look forward to your update.

    #551
    Carole Asselin
    Participant

    Sure, this is the code:

    [s2Member-Pro-PayPal-Form level="1" ccaps="wjan2016" desc="Patchwork Scrapping" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="scrapbookcampus.com" ra="9.99" rp="1" rt="L" rr="BN" accept="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0" /]

    I used a level = “1” so i would not require people to register first, and log in to get the form to show up. I only use two levels: Free (0) and paid (1).

    As i said, i had two other customers, use the same form, minutes before and minutes after who also had a recurring membership and didn’t experience this, so i can’t see the code being the culprit.

    #552
    Krum Cheshmedjiev
    Participant

    Please also show the code of the form/button which cancels this recurring payment.

    #553
    Carole Asselin
    Participant

    I am not sure what the code was because i had to redo it, but back then, i used the php code from you, Krum (years ago). But again, i would assume it is quite similar to this one:

    `<input name=”business” value=”admin@digiscrapcampus.com” type=”hidden”>
    <input name=”cmd” value=”_xclick-subscriptions” type=”hidden”>
    <!– Instant Payment Notification & Return Page Details –>
    <input name=”notify_url” value=”http://scrapbookcampus.com/?s2member_paypal_notify=1&#8243; type=”hidden”><input name=”cancel_return” value=”http://scrapbookcampus.com/&#8221; type=”hidden”>
    <input name=”return” value=”http://scrapbookcampus.com/?s2member_paypal_return=1&#8243; type=”hidden”><input name=”rm” value=”2″ type=”hidden”>
    <!– Configures Basic Checkout Fields –>
    <input name=”lc” value=”” type=”hidden”>
    <input name=”no_shipping” value=”1″ type=”hidden”>
    <input name=”no_note” value=”1″ type=”hidden”>
    <input name=”custom” value=”scrapbookcampus.com” type=”hidden”><input name=”currency_code” value=”USD” type=”hidden”>
    <input name=”page_style” value=”paypal” type=”hidden”><input name=”charset” value=”utf-8″ type=”hidden”>
    <input name=”item_name” value=”Custom Scrap Course” type=”hidden”>
    <input type=”hidden” name=”item_number” value=”1:element,forum,element<?php echo date(‘Ymd’); ?>” />
    <input name=”invoice” value=”” type=”hidden”>
    <!– Identifies/Updates An Existing User/Member ( when/if applicable ) –>
    <input name=”on0″ value=”” type=”hidden”><input name=”os0″ value=”” type=”hidden”>
    <!– Identifies The Customer’s IP Address For Tracking –>
    <input name=”on1″ value=”” type=”hidden”>
    <input name=”os1″ value=”” type=”hidden”>
    <!– Controls Modify Behavior At PayPal® Checkout –>
    <input name=”modify” value=”0″ type=”hidden”>
    <!– Customizes Prices, Payments & Billing Cycle –>
    <input name=”src” value=”1″ type=”hidden”><input name=”srt” value=”” type=”hidden”>
    <input name=”sra” value=”1″ type=”hidden”><input name=”a1″ value=”59″ type=”hidden”>
    <input name=”p1″ value=”3″ type=”hidden”><input name=”t1″ value=”M” type=”hidden”>
    <input name=”a3″ value=”10″ type=”hidden”><input name=”p3″ value=”1″ type=”hidden”>
    <input name=”t3″ value=”M” type=”hidden”>
    <!– Displays The PayPal® Image Button –>
    <p>
    <input src=”http://scrapbookcampus.com/Images/Button-I-want-to-500.jpg&#8221; style=”border: 0pt none ; width: auto; height: auto;” alt=”Buy Now” type=”image”>
    </p></center>

    #555

    I used a level = “1”

    That may be the reason, as I explained in my previous reply… I’d try having a conditional so it only adds the level for a visitor, but logged in users only get the custom capability, without the level, in the pro-form.

    Try that with the user that had the problem and see if you can reproduce it then.

    #556
    Carole Asselin
    Participant

    OK, i can do that, but then, that would not explain why other members who had the same recurring payment, and used the same form, didn’t see their recurring payment stopped?

    I really don’t like to use a conditional to have 2 pro-forms (one for logged in and one for not logged in) because i have to rely on the registered members to log in before making the purchase. If they don’t, it causes other issues (that is why i suggested that an additional feature would check the email and associate ccaps based on the email, no matter what).

    #557
    Krum Cheshmedjiev
    Participant

    Other member can have different EOT, so this can be a reason, I think.

    In “Buy now” buttons must not set a level, so the form you show is for subscription, actually, not for “buy once”. (And I am forget that I create it, and what we think at this time… :-/ )

    #559
    Carole Asselin
    Participant

    Other member can have different EOT, so this can be a reason, I think.

    They don’t have a EOT as it is “ongoing”.

    #561

    that would not explain why other members who had the same recurring payment, and used the same form, didn’t see their recurring payment stopped?

    I’m not sure why it was different for them. The form you showed me isn’t selling just a ccap, it’s selling Level 1 plus the ccap for a one-time payment. That’s why the Level 1 subscription ended when your customer purchased it again for a one-time payment.

    Did the other customers follow the same steps under the same situation as this one with the problem? Did they use the same form to purchase that ccap or is there another form that just sells the ccap somewhere in the site? Had they started their subscriptions with s2Member and were they tied to their WP accounts? Just guessing a couple of situations where they’d not have that behavior happen.

    I really don’t like to use a conditional to have 2 pro-forms (one for logged in and one for not logged in) because i have to rely on the registered members to log in before making the purchase. If they don’t, it causes other issues

    You’d have the same situation with the current form without the coditional… If they’re not logged in and purchase, it’ll go towards a new account instead of the existing one. It’s better to always try to make sure that the existing user is logged in when he purchases.

    The safest way may be to always only sell to logged in users, and visitors only have free registration as the next possible action, and then upgrade.

    that is why i suggested that an additional feature would check the email and associate ccaps based on the email, no matter what

    Yeah, that’d be a nice feature to have. I’ve suggested it before as well. I don’t know when/if it’ll be implemented, though, so I wouldn’t count on it. It’ll be better to make this work with what you have, in my opinion.

    #563
    Carole Asselin
    Participant

    Yes, all three customers used the exact same form (there is only ONE place to make that purchase) and all three had the same ccap for the recurring subscription. I had set the level 1 as the only paid level i am using. I don`t use any other level so whether they buy a recurring subscription or a “buy now” product, they all end up with a level 1, so why would one affect the other?

    The safest way may be to always only sell to logged in users, and visitors only have free registration as the next possible action, and then upgrade.

    Technically yes, the practically, it means a longer process for the user, therefore a less desirable experience for the user who will feel like they have to jump through hoops. That is why i made that suggestion to Jason: on my zencart store, it knows if you are an existing customer or not, and will do the work in the backend instead of requiring the client to do all of it.

    #567

    I agree that it’d be best if it told the user the email is being used, and to login instead of signing up again. That said, it doesn’t prevent an existing user from signing up with a second account if he uses a different email address then the first time by mistake.

    I think it’s important to have a message reminding the existing user to login.

    I mentioned selling only to logged in users because then you eliminate the problem of selling to an existing user while he’s logged out. I know it adds the step of registration first, and it’d seem it will cause loses, but you could make that free registration attractive with a freebie, and not hard asking only the bare minimum of fields (similar to an email opt-in).

    But that’s a separate issue from the one where the existing subscription for level 1 is ended when he then purchases level 1 with a one-time payment. We were talking about existing users, which is when that issue would happen.

    The reason why the logged in/out topic came up is because I’m suggesting selling the ccap individually, without the level. That works for the logged in user, but isn’t possible for a logged out user, so it requires the level to be added to the form.

    When selling individual ccaps, I think it’s fine to have a conditional that doesn’t add a level to the form when the user is logged in, so it doesn’t affect existing subscriptions, but adds the level when the person is logged out so the ccap can be sold to him. Not perfect, but works.

    #568
    Carole Asselin
    Participant

    When selling individual ccaps, I think it’s fine to have a conditional that doesn’t add a level to the form when the user is logged in, so it doesn’t affect existing subscriptions, but adds the level when the person is logged out so the ccap can be sold to him.

    Is there a way other than by having two forms?
    My other question would be whether it would solve the problem if i just used a regular Buy now button instead of a form? Thinking of it, i don`t really need a form.

    Right now, the form allows a new member to register and purchase in one step, but it might be causing more issues than it saves. Can a button give a level 1 without affecting a level 1 recurring subscription?

    #570

    Can a button give a level 1 without affecting a level 1 recurring subscription?

    No.

    Is there a way other than by having two forms?

    No, individual capabilities can only be sold to logged in users. To sell to a visitor you’d need to add the level too. This is a limitation with the existing implementation.

    You could create a feature improvement request making it possible to sell an independent custom capability to a visitor, so it’ll register him and assign him level 0, but work for logged in users as well not touching their level. https://github.com/websharks/s2member/issues

    solve the problem if i just used a regular Buy now button instead of a form?

    It’s the same for buttons to sell capabilities. WP Admin -> s2Member -> PayPal Buttons -> Capability: “you can sell one or more Custom Capabilities using Buy Now functionality, to existing Users/Members”.

    #572
    Carole Asselin
    Participant

    With all that, i still don’t get why someone with a level 1, buying something with a level 1, would see any change in a recurring subscription. The subscription and the level are not really related, are they? I guess i don’t understand the path behind that (and i guess i don’t need to either).

    #573
    Carole Asselin
    Participant

    You know, something else is odd now. If a user is already registered to the site, but has a level 0, buying a ccap without a level (level = “0”) should keep the user at level 0, correct? But then, BUYING something changes from level 0 to at least 1. How is that done?

    – A user has level 0 (free subscriber) and wants to buy a ccap that would bring him to a paid member level (level 1)
    – A user has level 1 (paid member) and wants to buy a ccap that would keep him to a paid member level (level 1)
    – A visitor who has never purchased or subscribed and wants to buy a ccap that would bring him to a paid member level (level 1)

    If i use a pro-form and ask for registered members to login, that is so the form with level = “*” be applied, but how does the free member gets his level 1?

    I am confused now.

    #576

    The subscription and the level are not really related, are they?

    They are completely related. The subscription is created when selling a level, and when the user buys a level again, the existing subscription gets terminated. Even if he purchases the same level, s2Member will end the existing subscription. If he purchases the new one with recurring payments, then a new subscription gets created, but if it’s a single payment, then that’s that.

    If a user is already registered to the site, but has a level 0, buying a ccap without a level (level = “0”) should keep the user at level 0, correct? But then, BUYING something changes from level 0 to at least 1.

    If you sell it with the pro-form’s level set to 1 (level="1") yes, but if you are selling a independent ccap, level would be set to * (level="*"), so the member’s level would not change.

    If i use a pro-form and ask for registered members to login, that is so the form with level = “*” be applied, but how does the free member gets his level 1?

    You can sell the independent capability to level 0 users too, the level doesn’t matter, only that he’s logged in. So the free user can purchase the capability and he’d remain at level 0.

    See the documentation here WP Admin -> s2Member -> PayPal Forms -> Capability: “regardless of which Membership Level they have on your site (i.e., you could even sell Independent Custom Capabilities to Users at Membership Level #0, normally referred to as Free Subscribers, if you like)”

    #578
    Carole Asselin
    Participant

    Hum… ok.. i think s2M has evolved faster than i followed. Level 0 used to be Free and levels 1+ were paid. That was IT. So ALL my “buy now” buttons and forms have been set for level 1 so i could immediately sort out who were the “customers” (level 1) and who were the “leads” (level 0), so this improvement is actually limiting a previous feature, which i didn’t realize.

    The subscription is created when selling a level, and when the user buys a level again, the existing subscription gets terminated. Even if he purchases the same level, s2Member will end the existing subscription. If he purchases the new one with recurring payments, then a new subscription gets created, but if it’s a single payment, then that’s that.

    Maybe there should be a differentiation between recurring payments and buy now INSTEAD of basing it on levels vs ccaps. Something i might suggest, if it can prevent awkwarness of the system mixing things while we try to make them simple.

    #583
    Carole Asselin
    Participant

    Looking into what i might have missed in the “improvement” of s2M, i see this is still there:

    Level #0 (Free Subscribers):
    Visitor
    This is the Label for Level #0 (Free Subscribers).

    That might lead to confusion in others if it is not exactly the case!

    #586
    Carole Asselin
    Participant

    So, to summarize, would you say that unless i have NO option for ANY recurring subscription, i should ALWAYS use the level = “*” instead of level = “1” because any Buy now purchase with a level 1 would mess up any subscription?

    #590

    What you could do is use the conditional to check for the level, instead of whether he’s logged in. So if the user already is level 1, then change the level to asterisk in the pro-form. E.g.

    [s2If current_user_can(access_s2member_level1)]
        [s2Member-Pro-PayPal-Form level="*" ccaps="wjan2016" desc="Patchwork Scrapping" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="scrapbookcampus.com" ra="9.99" rp="1" rt="L" rr="BN" accept="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0" /]
    [else]
        [s2Member-Pro-PayPal-Form level="1" ccaps="wjan2016" desc="Patchwork Scrapping" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="scrapbookcampus.com" ra="9.99" rp="1" rt="L" rr="BN" accept="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0" /]
    [/s2If]
    
    #592
    Carole Asselin
    Participant

    With this code, if a user is level 1 but has not logged in, what will happen?

    If they fill the form with their correct information, it will be rejected as their email address will be known as already in use. OR it can be a situation where the user might be using a different email address, creating a different account, and having some ccaps associated with one account, and others to another account (pretty confusing).

    #594

    That’s correct.

    That’s why I recommend reminding users to login if they already have an account, or only sell to logged in users.

Viewing 23 posts - 1 through 23 (of 23 total)
  • You must be logged in to reply to this topic.