Subscription modification

Forums General Subscription modification

Viewing 15 posts - 1 through 15 (of 15 total)
  • Author
  • #667
    Carole Asselin

    Trying something else before diving into the protected content with files and such.

    I have one recurring membership and i want to offer an upgrade to a GOLD membership, which would include additional content (that is usually sold separately). The current payment is $10/month, and i want to increase it to $15/month.

    I created this code:

    [s2Member-Pro-PayPal-Form level="*" ccaps="lab,lab'.date('Ym').',wm'.date('Ym').',GOLD" desc="GOLD Membership" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="" ta="0" tp="2" tt="W" ra="15" rp="1" rt="M" rr="1" rrt="" rra="2" accept="paypal" accept_via_paypal="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0"]

    Since i don’t want to force the members to pay the upgraded price NOW, i am giving them a 2 week period. But when i do that, the page displays this error message:

    Invalid form configuration. Invalid “rr, tp” attributes. The “rr” (Regular Recurring) attribute is “BN” (Buy Now), and “tp” (Trial Period) is not “0”.

    The strange thing is that it does not seem to match the form i have.
    If i change the tp and tt values to 0, it works but i don’t want the members to start paying NOW; i would like to keep their current payment schedule, but just up it at the next payment. Am i asking too much of s2M again?

    Carole Asselin

    Depending on who is going to look at this, the url of the page is this:

    Creative Scrap – GOLD

    The form is inside a conditional so an admin can see it, but otherwise, you need to have the correct ccap to see it (not sure if the error message would still show or not).


    Yeah, it’s odd. I don’t see that form being a buy-now, so I’m not sure why you’d get that error.

    Are you positive that that’s the shortcode that output that error? If so, could you try reproducing it in a clean test installation?

    Remember having logging enabled and using a non-admin account for the test purchase.

    Carole Asselin

    Yes i am sure it is the code. I copied and pasted it.

    I tried on a different page, with the exact same error.

    I tried it only as a shortcode (not a php) but i get another error because of the hack i have to use, which is only allowed inside a php code.

    I tried it on a different site, but i don’t have paypal enabled on that site, so i am getting an error message about Paypal instead.

    I tested it with a non-admin account in a different browser. Same thing.

    I tried to remove all the “hack code” and left only two ccaps, and i still get the same error.
    Here is the CURRENT shortcode (not even in a php code):

    [s2Member-Pro-PayPal-Form level="*" ccaps="lab,GOLD" desc="GOLD Membership" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="" ta="0" tp="2" tt="W" ra="15" rp="1" rt="M" rr="1" rrt="" rra="2" accept="paypal" accept_via_paypal="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0"]

    And here is the page:

    Carole Asselin

    Ok i set up Paypal on the other site, copied the same code (changed the Custom value) and i get the exact same error.

    I am quite puzzled.

    Carole Asselin

    Anyone else has a “clean installation” where they could copy and paste that code? If you also get the error, then there might be a bug.
    Should i submit a ticket??

    Krum Cheshmedjiev

    Not checked the code, but maybe level=”*” can be used with modification=”1″ only?

    Carole Asselin

    I can try, but i don`t want to specifically set the level to 1, but keep the level to whatever it is (even though in my case i am only using 1). I had issues with level 1 in a code when it would cancel the subscription immediately, but this time, i would like the NEXT payment to be increased, not charge the member right away.

    Carole Asselin

    OK after reading more, it looks like the “*” is only for the Buy Now, which might explain why the error message is referring to the BN. So, this means that i have to use “1”. That is fine. I can do that, and i don’t get an error.

    Then, the question is this one:
    – is there a way to ONLY increase the price on the NEXT payment, instead of requiring it NOW?

    From past experience, using the *1* had cancelled the current subscription (which was VERY confusing to the members). And if it is cancelled, i am afraid it will charge immediately. Or maybe i can give a whole month free “trial”?


    The asterisk in the level attribute is used when selling only the capability, which can only be done with buy-now, not a subscription.

    What do you mean by increasing the next payment? You mean in a subscription? Only when it’s a new subscription, you can’t modify an existing one. And you can only set the first payment (initial) or all the following payments to be different (recurring), but not only the 2nd or 3rd payment (these will be the same as all the recurring payments, they can’t be different).

    Yes, using 1 in the shortcode, will sell a new subscription, ending an existing one. The user can’t have multiple subscriptions.

    Carole Asselin

    OK, let`s have a scenario:

    – you have a $10 subscription that is paid on the 10th of the month.
    – you want to upgrade to a $15 subscription but you click on the “upgrade” button on the 15th of the month

    In fact, you have already paid $10 for the month so i don’t want you to have to pay $15 5 days after you paid that $10, so ideally, i would like your level to upgrade now, but start paying $15 only on the 10th of next month.

    Is that even possible?


    Yes, you’d need a bit of PHP to calculate each case, though. The upgrade would have an initial term without charge (i.e. trial) for the days left until the date you want the new charge to be made.

    These may help:

    Carole Asselin

    OK, reading those it seems that s2M should do what i want, and not what it does:

    The new terms will take effect at the end of the current billing cycle. In other words, if a Customer signs up for a monthly Subscription on Jan 1st at $9.99/mo… then they upgrade on Jan 15th to $99/year; they will be billed $99 on Feb 1st and be re-billed Feb 1st of each year.

    This means that effectively, it should be updated on the next scheduled payment, right? (as i am using the Paypal Standard integration).


    That’s what he said for PayPal buttons. Read what he said for the pro-forms, which are what you’re using.

    You may want to ask him directly if the behavior changed or if that explanation is still valid.

    Carole Asselin

    Which means that it would be easy with a button and more convoluted with a form? If that is the case, i might as well go for a button instead of a pro-form!

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