1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

So Let's Talk About Paid User Upgrades...

Discussion in 'General XenForo Discussion and Feedback' started by digitalpoint, Jan 29, 2013.

  1. digitalpoint

    digitalpoint Well-Known Member

    I'm thinking I might need to rewrite the user upgrade system that comes with XenForo, but before I start mucking with that, maybe I'm missing some stuff or not looking in the right place?

    It seems okay when you have a few paid upgrades... but when you start dealing with thousands of users with paid upgrades (or even hundreds), the system starts having issues.

    Not handling Canceled_Reversal payment status makes users not get the subscription they paid for in some cases (more info on that here).

    Not handling overlapping subscription periods. For example say a user has a month subscription to something, and in the middle of that month, they upgrade to an annual plan. The annual plan starts then, not at the end of the existing one. In addition, I think the system might (not 100% sure on this) cancel the user upgrade when the MONTHLY one expires, basically making the user not get the annual one. This could be solved by grouping the upgrades so certain upgrades were linked to others, and then any incoming subscriptions extend the end date, rather than ignore it.

    If you look at a user record in the AdminCP, there is no indicator that have an active user upgrade.

    You also can't search if the user has a user upgrade. If you have 100 pages of user upgrades, the only way you can find it to know if the user has one or to manually downgrade it is to page through 100 pages and look for that username. Yeah... no. :) Ability to search for other things too would be nice (like transaction ID).

    Using the (really) old "websites payments" system for setting up the payments is well... really old and very limited. PayPal has a fantastic NVP API (does not require pre-approval to use) that gives WAY more control... like you could tell the user if their PayPal subscription was active or not in PayPal by paying API call... you could let the user cancel the PayPal subscription from your website, etc. More info on that: http://xenforo.com/community/threads/paypal-nvp-api.22939/
    Alfa1, Puntocom, Walter and 7 others like this.
  2. Jake Bunce

    Jake Bunce XenForo Moderator Staff Member

    On this specific point:


    edit - oh wait, you are talking about different upgrades? Then the system needs multiple payment / duration options for individual upgrades.
  3. Arty

    Arty Well-Known Member

    You are correct. Current system is far from usable on large forums.

    I've been running forum that uses subscriptions, sorting through hundreds of pages in order to downgrade user was not an option, so I wrote a custom add-on that subscriptions tab to user editor. Its not a proper add-on because it modifies core XF code, so I won't publish it, but I can send you a copy if you want it.

    Also there is a bug in XF that you might want to fix on your forum: http://xenforo.com/community/threads/paypal-ipns-returning-500.31736/page-2#post-363934
  4. Lisa

    Lisa Well-Known Member

    For what it's worth, I've not had a paid usergroup upgrade work since forever. The payment gets made, the usergroup doesn't change and the user always (without any exception) has to PM me to say they've bought it and have me manually upgrade them. And it's not for a huge site either.
  5. Mouth

    Mouth Well-Known Member

    If that does become your action, it would be terrific to have an option to run a defined/job script upon successful completion of an upgrade. In this way you can perform non-XF actions as a result of the upgrade, such as create an email account when the user upgrade (purchase) has completed. Just, cheekily, getting in early ... ;)
  6. Jake Bunce

    Jake Bunce XenForo Moderator Staff Member

    Check the xf_user_upgrade_log table. Is there any record of the transaction? The record may contain a specific error message if there was a problem. If there is no record of the transaction then make sure the payment completed (in your paypal account). Also check these things:

    1) Make sure your board URL is correct:

    Admin CP -> Home -> Options -> Basic Board Information -> Board URL

    2) Note that the paypal callbacks don't work if your forum is behind a htaccess login.

    Or it's possible Paypal simply failed to send the callback. That happens sometimes in which case you can manually upgrade the user in the Admin CP.

    digitalpoint likes this.
  7. shawn

    shawn Well-Known Member

    Want. Please.

    Everything else Shawn says is pretty much spot-on. I picked up a plugin from somebody that allows the same upgrade to be purchased repeatedly, but my users don't really understand how it works. And if you have overlapping subscriptions, XF doesn't seem to have very elaborate checking to ensure that the expiration actions for the first subscription don't screw up the ongoing subscription.

    Me? I'd just be happy if somebody wrote a plugin that exposed the user_upgrade_active and user_upgrade_expired tables within the acp. Maybe just add a tab on the user account details. The way things are right now, the only way you can accurately add additional time to an existing subscription is to change the end_date field in the DB. If you try to manually add an account upgrade with the acp tools, it defaults to changing the time to today's date plus the upgrade period. So if somebody still has an existing yearly subscription that expires in July and you manually add another on top of it, XF changes the date to 2/4/14, rather than 7/14.

    I am going to make use of that cancelled_reversal bug to get myself a DP premium member account, though. That's a good find.
    kontrabass likes this.
  8. shawn

    shawn Well-Known Member

    While I'm thinking about it, permission settings for upgrades would be awesome as well. That's something we've gotten by without since vB, but it would be great to have again.

    My only fear is that if somebody writes an add-on that does these things, XF will write their own in the next release and I'll have to migrate the data.
  9. surfsup

    surfsup Well-Known Member

    My main concern I have (which im starting to deal with hundreds now) - is the following:

    1. Users are clueless how to take benefits afterwards, a lot use mobile so any notifications isnt sent to them. I need an email or private message stating that they are now signed up as a paid subscriber and it will show a list of how to take advantage of each benefit.
    2. Easier way after or before they are signed up, a way to pay for more years + discounted for the more years they choose to upgrade upon.
    Lemme know, im highly interested ;)
    Mouth likes this.
  10. Lisa

    Lisa Well-Known Member

    No errors, but the record is there and payments have all completed in paypal.

    Yes it is.

    It's not behind htaccess login.

    It's not happening sometimes, it's happened EVERY time since I put the site on xF, which was over 12 months ago :D
  11. Mouth

    Mouth Well-Known Member

  12. HWS

    HWS Well-Known Member

    Yes, it would be about time to continue development at XenForo and steer a fast path with it...

    Seems like we slowly but certainly reach a point where patching current limitations with to many add-ons is simply reaching it's end. The front end of XenForo was written with so many good ideas and careful thougths about usability but the back end on the other side lacks too many urgently needed features to seriously run a forum community.
  13. Diana Notacat

    Diana Notacat Member

    Hi! I don't know if you are still having this issue, but I was having this exact same problem (and came looking here for the solution) and I THINK it's because the IPN url in your Paypal seller settings is wrong! Mine apparently was, so I am hoping that is the fix to this, and maybe will be for you too! After having transfer my domain name, and then importing the forum I totally forgot about updating the settings in paypal itself.

    I found this in the user guide http://xenforo.com/help/user-upgrades/

  14. Lisa

    Lisa Well-Known Member

    Hi, still having the issue but no it's not the IPN :(
  15. kontrabass

    kontrabass Well-Known Member

    Big bump on this. With thousands of user upgrades active, performing customer service is impossible. "When does my sub expire?" I don't know without looking through 240 pages. Upgrade info should be shown in user's profile and should be editable from there. Please! :)

    I really hate to install an addon for this functionality, because it's sure to be released as a core feature at some point, right? ;)
    0ptima and Tracy Perry like this.
  16. Jeremy

    Jeremy XenForo Moderator Staff Member

  17. billybatz9

    billybatz9 Active Member

    Has anyone tried aMember with Xenforo for upgrades? I haven't, but have heard its pretty good. It might be a solution for now.
    But as i said.... I have not tried it, so I do not know the capabilities of aMember. I am too hoping to start a paid subscription upgrade for my forum (when i get it)
    Moshe1010 likes this.
  18. Moshe1010

    Moshe1010 Well-Known Member

    Is there a demo somewhere?
  19. Jeremy

    Jeremy XenForo Moderator Staff Member

    @Moshe1010, the official aMember forums run on XenForo. They most likely use it.
  20. Moshe1010

    Moshe1010 Well-Known Member

    Yea, but you can't really see it from an admin perspective. They have the regular Demo, but I can't find any XF demo with it. I'm wondering what the XF integration gives for admins except for customer's profiles integration (subscription/payment history/ customers details)

Share This Page