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

XF 1.1 User Upgrades Not Applying

#1
So we just instituted a user subscription system at:

http://forums.spacebattles.com

I have now had over $100 of money contributed towards subscriptions... and none of them have applied! I had done a test subscription with my own paypal account being used to pay for the upgrade (we have a separate business account where the upgrade money is going into) and it worked fine.

Why all of a sudden would it not work? More importantly, can I save this situation?

Using notification URL: http://forums.spacebattles.com/payment_callback.php.
 

Liam W

Well-known member
#2
So we just instituted a user subscription system at:

http://forums.spacebattles.com

I have now had over $100 of money contributed towards subscriptions... and none of them have applied! I had done a test subscription with my own paypal account being used to pay for the upgrade (we have a separate business account where the upgrade money is going into) and it worked fine.

Why all of a sudden would it not work? More importantly, can I save this situation?

Using notification URL: http://forums.spacebattles.com/payment_callback.php.
The notification URL you enter into PayPal doesn't actually matter - it's submitted when the purchase is made, you just have to set one to enable IPN's.

There is a payments log in the AdminCP. You should check that to see if there are any validation errors.

admin.php?user-upgrades/transaction-log

Just remember that if your default IPN URL is set to the forum, then every transaction on your PayPal account will add an entry to that log.

Liam
 
#3
The notification URL you enter into PayPal doesn't actually matter - it's submitted when the purchase is made, you just have to set one to enable IPN's.

There is a payments log in the AdminCP. You should check that to see if there are any validation errors.

admin.php?user-upgrades/transaction-log

Just remember that if your default IPN URL is set to the forum, then every transaction on your PayPal account will add an entry to that log.

Liam
It is saying that that page doesn't exist. Are you sure it is a "/" between upgrades and transaction?
 

Liam W

Well-known member
#4
It is saying that that page doesn't exist. Are you sure it is a "/" between upgrades and transaction?
Yes, my mistake sorry - I didn't notice you're using XF 1.1, that log was added in a later version.

Unfortunately, it does make it a bit harder to debug, as there's no way of knowing what the validation script is doing/getting wrong.

Is it running correctly? You can check PayPal's IPN logs to check that it was successfully executed.

Also, is the funding coming from people purchasing the upgrade? Silly question, but just wanted to check all angles :)

Liam
 
#5
Yes, my mistake sorry - I didn't notice you're using XF 1.1, that log was added in a later version.

Unfortunately, it does make it a bit harder to debug, as there's no way of knowing what the validation script is doing/getting wrong.

Is it running correctly? You can check PayPal's IPN logs to check that it was successfully executed.

Also, is the funding coming from people purchasing the upgrade? Silly question, but just wanted to check all angles :)

Liam
Yes the funding is coming from people going through the forum account upgrades.

I'll check the logs...

IPN.png

Well I'm glad to see that the transactions aren't lost forever!
 

Liam W

Well-known member
#8
HTTP response code 500
So, something is causing the request to fail.

The script returns 500 generally when the validation fails.

That could happen for several reasons:
  • The charged price isn't the same as the price of the upgrade
  • The token passed to PayPal back to the validator isn't correct
  • The user isn't valid
  • The currency paid was different to the one you set
  • And a few more...
Could any of them be the issue?

Was the notification url needed in 1.1?

Could it be a different location for 1.1, so that is not the correct URL?
No - like I said, XenForo passes the validation callback to PayPal. The one you set doesn't do anything, it just enables IPN's.

Liam
 
#9
Ok, so I'll be totally honest and say that I have no idea how to even start troubleshooting this given the options you listed above.

My biggest concern is I don't want to accidentally eliminate the backlog of requests it is still trying to send, from the looks of things it should apply as soon as I get this worked out.
 

Liam W

Well-known member
#10
Ok, so I'll be totally honest and say that I have no idea how to even start troubleshooting this given the options you listed above.

My biggest concern is I don't want to accidentally eliminate the backlog of requests it is still trying to send, from the looks of things it should apply as soon as I get this worked out.
PayPal will stop sending requests after a number of failures, although the rate at which it retries slows down with every fail.

I'll check the confirmation class again, to see exactly where it could go wrong.

EDIT: @The Observer do you have any server errors?

One major thing, is the money being sent to the same email address that is set as the PayPal primary account on the user upgrades page?
 
#11
PayPal will stop sending requests after a number of failures, although the rate at which it retries slows down with every fail.

I'll check the confirmation class again, to see exactly where it could go wrong.

EDIT: @The Observer do you have any server errors?

One major thing, is the money being sent to the same email address that is set as the PayPal primary account on the user upgrades page?
No server error log entries.

I... uhmm... I had changed the primary e-mail address. That one was still ON there, just changed from primary. Could that be it? I just changed it back.
 

Liam W

Well-known member
#12
No server error log entries.

I... uhmm... I had changed the primary e-mail address. That one was still ON there, just changed from primary. Could that be it? I just changed it back.
Almost certainly. The primary email option has to match the email used to pay.

I just noticed something as well, in your database is there a table by the name of xf_user_upgrade_log?

If so, look in there - it'll tell you where it's failing :)

Liam
 
#13
Almost certainly. The primary email option has to match the email used to pay.

I just noticed something as well, in your database is there a table by the name of xf_user_upgrade_log?

If so, look in there - it'll tell you where it's failing :)

Liam
Well that SEEMS to have worked.

I now have 5 subscribers... now I just have to hope that the backlog of previous subscribers gets processed.

If it doesn't, I'll be back for more advice!

Thanks so much.