Cannot reproduce PayPal cancellation of double paid/purchased upgrade, cancels both upgrades

Mouth

Well-known member
Affected version
1.5.18
If there is a refund/chargeback, the upgrade is removed/cancelled immediately.
I had an issue in early April where this caused a problem. XF v1.5.18 in-use at the time.
Scenario:
  • User double purchased a 1 year recurring upgrade, Apr 3 and Apr 4 (unfortunately, /admin.php?user-upgrades/transaction-log doesn't show the new upgrade expiry date) via PayPal
  • Several hours after the 2nd/double payment on Apr 4, the user cancelled the 2nd PayPal purchase/payment
  • XF "Cancellation: Payment refunded/reversed, downgraded" the upgrade, and thus erroneously removed the entire upgrade.
I would have expected the Apr 3 purchase to set the upgrade expiry to Apr 3, 2019, the Apr 4 purchase to set the expiry to Apr 4, 2020, and the cancellation/refund of the Apr 4 purchased to keep the upgrade active but bring its expiry back down to Apr 3, 2019. User Change Log shows the user being removed from the Additional User Group from the Apr 4 cancellation/refund.

User Upgrade, adds user to an Additional User Group (Premium Members):
Screen Shot 2018-05-28 at 11.36.36.webp

Screen Shot 2018-05-28 at 11.38.01.webp

I've added a manual user upgrade to resolve the issue for the user.
 
Do you know what led the user to be able to purchase the same upgrade more than once?

Do you have an add-on that allows a user to purchase a user upgrade multiple times?

By default, once an upgrade is purchased, it isn't possible to purchase it again:

1535338816605.webp
 
We've run into this. There are quite a few situations in which XenForo 1.x will mishandle PayPal events; I'd have a hard time listing all of them. I haven't actually tested this, but just as an example of how someone could probably purchase an upgrade multiple times (I believe we've encountered similar situations):
  1. Attempt to start a subscription with PayPal
  2. Pay in such a way that an eCheck is used, which takes several days to go through
  3. Attempt to subscribe again, this time with an instant payment method
  4. eCheck eventually goes through, resulting in two subscriptions
Most of the problems we run into involve eChecks, declined or reversed payments, and delayed callbacks from PayPal.
 
Yeah that can happen, but it doesn't appear to be the case here. It seems like they purchased and completed the payment on the 3rd but somehow repeated the payment on the 4th, which isn't possible if a previous purchase was completed.
 
@Chris D it does depend on the admin user's timezone for how close that 3rd and 4th dates actually are. Especially since the hours section isn't displayed in that log view
 
Top Bottom