8

So I've implemented PayPal fully into my system. The system works on user 'packages', all at set prices. Each user has a subscr_id (set by PayPal) assigned to them, along with details of the package they've bought.

I need to be able to modify the subscription so the user can select a different package. Essentially I just need to be able to change the amount and the 'custom' field (this contains package details, coupons used, etc).

I would have thought, and hoped, that it would be as simple as showing the user another form with hidden fields for 'modify', 'subscr_id', 'custom' (new value) and 'amount' (new value). Unfortunately I can't find this anywhere online, and PayPal's documentation is so monolithic that I find myself going round in circles for hours at a time.

My IPN is all set up and working fine, I literally just need to build a form that allows me to set the 'amount' and 'custom' variables to something new... the bit I thought would be easy! Any help is greatly appreciated. Thanks in advance.

Mike
  • 8,767
  • 8
  • 49
  • 103

2 Answers2

2

I've been looking into this recently. You can create a "Modify Subscription" button to change subscription details such as amount and period. When the user clicks this button, they login and see the old subscription details and the new subscription details, and must approve/save it for it to take effect. One major issue though is you can only increase the subscription amount by 20% within a 10-day period.

To create the modify subscription button just use the regular subscription HTML button with the new parameters you want, and add an extra parameter "modify=2" (2=modify only, 1=modify or sign up).

Also I think that the custom variable field does not change even if you modify the subscription, but I am not 100% sure on that.

cambo
  • 973
  • 4
  • 11
  • 22
  • I confirm that the custom field doesn't change :-( Seeking another field to store my datas in these cases... – Sebas Feb 12 '13 at 21:50
  • Regarding to the 20% thing, up to the doc it is when you use express checkout only, so a regular standard account would not be limited. Didn't check yet. – Sebas Feb 12 '13 at 21:51
  • Unfortunately I've just hit the 20% issue using a standard checkout (not Express) so it appears to apply there also. Pretty pissed! Wishing there was a viable alternative to Paypal. – Simon East May 31 '13 at 07:28
  • You wouldn't believe the number of "issues" we've had since implementing them over 2 years ago. We are also looking for a good alternative to PayPal that has a global presence like them and supports both standard and recurring payments. If anyone can suggest some options that would be much appreciated! – cambo May 31 '13 at 12:36
  • Since august 2013 the behaviour changed: now the custom field does update on a subscription modification – Jan M Jan 09 '14 at 14:11
1

After a wee bit of searching, hopefully this will help:

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_html_subscribe_buttons#id09A7G0502UI

If you became a PayPal Merchant after October 15, 2009, you can edit a buyer’s subscription profile.

As a subscription service provider, you can edit a buyer’s subscription profile in the Edit Profile page. Use this page to update buyer information, adjust the cost or cycles of the subscription, and specify how to handle missing or failed payments.

Jon
  • 12,684
  • 4
  • 31
  • 44
  • 1
    Yeah, I found that a few hours after posting. It isn't much use to me now though unfortunatly, as I've had to build a very backwards mechanism. PayPal doesn't allow instant modifications. So if someone wants to start paying for the 'pro' package instead of 'basic' they'd get instant access but not pay for 30 days. They could then lower their subscription for a day, then modify it again the day after billing - essentially getting the best service for the lowest price -- quite a loophole. I've made it so they have to cancel then re-subscribe, not ideal, but the only way it seems. Thanks – Mike Feb 10 '11 at 09:45
  • I think the better link here is https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_html_subscribe_buttons#id08ADFA005QU – coderintherye Oct 25 '12 at 21:09