How do account upgrades work?


Well-known member
Okay... so I created an account upgrade path for $20 yearly through paypal...

I just had the first person purchase it. I received the payment on paypal and everything.

However, when I look at the Active User Upgrades page in my adminCP, they are not there.

Is something wrong?
I have tested manually upgrading a user and that works fine with the users appearing in the Active User Upgrades screen.

I haven't tried doing it by purchasing an upgrade though.
Well looking in the adminCP, not only is the user upgrade not listed, but looking at that user's profile, they didn't receive the secondary usergroup join as they should have.

This seems like a HUGE bug that needs to be fixed. We're working with real money here after all.
I looked through the cron tasks, a task in only required to revoke user upgrades, not create them initially.

I'm looking through the database, and there is no record of the user upgrade at all.
Yeah, I can not get the user upgrade system working... I had a user try three times... He kept getting to the page:

"Thank you for purchasing this upgrade.
When the payment has been approved, your account will be upgraded."

Payment has already been approved on paypal. Yet they never got the upgrade.
No... I fixed it...

I had to go into my Paypal Profile settings and explicitly set my IPN callback to: <domain>/payment_callback.php

Its odd though, I don't ever remember having to do this with vBulletin. As well, this sounds problematic, because what if I have multiple forums, all paying to the same account; it seems to only be able to send the callback to a single domain.
The callback is required, but we tell PP to use it in the request - I don't see why it would need to be configured in PP as well.
The callback is required, but we tell PP to use it in the request - I don't see why it would need to be configured in PP as well.
Well what happened is my IPN callback setting was DISABLED... which means it wasn't accepting ANYTHING.

I had to re-enable the IPN callback in PP, but it required a callback URL.
The callback url specified in your account doesn't matter,
because the URL sent by xenforo will override the url specified in your account.
Many people wonder what to do about specifying the Return URL or Notification URL. Set the URLs to the appropriate address for *one* of your stores. It must point to a valid address. But when processing transactions from your various Zen Cart stores, the appropriate address for each store will be substituted automatically.
My IPN was also disabled in my paypal account, and the previous post are accurate.

The callback is required, but we tell PP to use it in the request - I don't see why it would need to be configured in PP as well.
Another tidbit to keep in mind is that with the IPN needed, the forum needs to be publicly accessible. In my case I had the forum directory password protected because I did not want google archiving my test site, but others may have reasons for having non-publicly accessible forums with paid upgrades... such as an intranet. But I seriously doubt someone will encounter that often.

To be clear - with my test site password protected, the IPN never came, and account upgrade was never confirmed nor took effect.
Other nuances, though I'm not sure they are worthy of a stand alone thread:
  1. I created a $1 for 1 day re-occurring upgrade, then purchased it using a 2nd paypal account
  2. Clicking the 'cancel' button on that resulted in re-direction to paypal with a 'invalid cancel button' message displayed.
  3. I manually canceled the re-occurring paypal subscription - but the cancel button was still listed in my account upgrades.
  4. The next day the cancel button was still there, with this message "Expires: 10 minutes ago" :) - which I would imagine will disappear when the cron runs.. I will edit when that is updated.
EDIT: within 2 hours the "Expires: ____ ago" went away as I predicted.
Top Bottom