Page MenuHomePhabricator

Payment session lost causing error page throwing exception
Closed, ResolvedPublic

Description

Noticed this while working through the fraud filters. On "reject" in the Phase_Validate case, the page is redirected without the payment parameters which causes the error page attached below (url: https://localhost:9001/index.php?title=Special:AdyenCheckoutGateway&appeal=JimmyQuote&ffname=error-cc&gateway=adyen). On digging deeper, it was realised that the session was lost at some point in the process.

Screenshot 2021-11-05 at 15.03.35.png (1×1 px, 506 KB)

WIP Gerrit patch: https://gerrit.wikimedia.org/r/c/mediawiki/extensions/DonationInterface/+/736651/

To reproduce locally
Make a donation attempt that triggers the filters that gives a Referrer risk score of 70

Event Timeline

Change 736651 had a related patch set uploaded (by Damilare Adedoyin; author: Damilare Adedoyin):

[mediawiki/extensions/DonationInterface@master] WIP: Handle payment result on reject in validation phase

https://gerrit.wikimedia.org/r/736651

DStrine triaged this task as Medium priority.Dec 3 2021, 5:18 PM

I ran into this today testing on production when I forgot to add the utm_campaign to the test URL. The donations were authed in the Adyen console.

frauderror.png (237×1 px, 39 KB)

Change 753599 had a related patch set uploaded (by Ejegg; author: Ejegg):

[wikimedia/fundraising/SmashPig@master] Validate params for getPaymentMethods before call

https://gerrit.wikimedia.org/r/753599

Change 753600 had a related patch set uploaded (by Ejegg; author: Ejegg):

[mediawiki/extensions/DonationInterface@master] Adyen: Don't throw errors in getCheckoutConfiguration

https://gerrit.wikimedia.org/r/753600

Change 753599 merged by jenkins-bot:

[wikimedia/fundraising/SmashPig@master] Validate params for getPaymentMethods before call

https://gerrit.wikimedia.org/r/753599

Change 753600 abandoned by Ejegg:

[mediawiki/extensions/DonationInterface@master] Adyen: Return array on errors in getCheckoutConfiguration

Reason:

see I66904685ea9b1c1b6ec6d701de0584b17c6840a3

https://gerrit.wikimedia.org/r/753600

Change 842549 had a related patch set uploaded (by Ejegg; author: Ejegg):

[mediawiki/extensions/DonationInterface@master] Catch errors in setClientVariables

https://gerrit.wikimedia.org/r/842549

Change 842550 had a related patch set uploaded (by Ejegg; author: Ejegg):

[mediawiki/extensions/DonationInterface@master] Show error form when error in getPaymentMethods

https://gerrit.wikimedia.org/r/842550

Ejegg subscribed.

The same patches should solve this and T293131

Change 842549 merged by jenkins-bot:

[mediawiki/extensions/DonationInterface@master] Catch errors in setClientVariables

https://gerrit.wikimedia.org/r/842549

Change 842550 merged by jenkins-bot:

[mediawiki/extensions/DonationInterface@master] Show error form when error in getPaymentMethods

https://gerrit.wikimedia.org/r/842550

greg assigned this task to Ejegg.
greg set the point value for this task to 1.
Dwisehaupt removed the point value for this task.Nov 9 2022, 8:38 PM
Dwisehaupt set Final Story Points to 1.