Page MenuHomePhabricator

Donation link with country and currency is setting currency based on country
Closed, ResolvedPublic

Description

A donor received an email link with hpc (latest donation amount) = 10000, hpcCurrency (latest donation currency) = JPY, country = US. The result was the donor making a 10000 USD donation when they did not intend to. It seems like the country is overriding the currency here or the currency is being ignored by donate wiki.

@Pcoombe can you shed any light on this?

Event Timeline

https://donate.wikimedia.org/?country=US&hpc=10000&hpcCurrency=JPY gives the expected result for me: ignore the hpc since the currency doesn't match, and just show default USD amounts

Do you have any more info on the specific link?

Previous discussion on this in T381437 and specifically T381437#10906269. Adding @ppenloglou too for info

@Pcoombe The link would have been something like:
https://donate.wikimedia.org/?wmf_campaign=C2526_Email1&wmf_medium=email&wmf_source=sp%%MAILING_ID%%&contact_id=%%CONTACTID%%&contact_hash=%%CONTACT_HASH%%&monthlypitch=1&appeal=SupportingWikipedia&uselang=%%ISOLANG%%&hpcCurrency=JPY&hpc=10000&country=US

Has this changed recently? This happened Oct 2. It is also possible that the donor did not realise the currency had changed and entered the amount themselves.

Is it desirable for the country to override the currency in this case? If the donor is coming from an email that specifically calls out their last donation amount, does it make sense to change the currency on the donation form to something different?

I know what happened in this case and I've let DR know in an Issue Tracker spreadsheet that we use internally too.

What happened:
This particular CTA was meant to use a donor's both_funds_highest_native_amount which in this case had the value 10,000 . Because we now also provide a hpcCurrency parameter in the donate.wiki URL, we have to supply that as well. At the time, we didn't have an equivalent currency field for highest so our next best choice were AF_highest_native_currency & endowment_highest_native_currency.

In this case we used AF_highest_native_currency which happened to have a value of USD. Thus the combo of hpcCurrency=USD&hpc=10000 occurred in their donate.wiki URL.

In reality, their highest donation across both funds was for Endowment and was 10,000 JPN.

@Lars has now kindly created a much needed field for us named both_funds_highest_native_currency and is available in Acoustic. Work tracked here https://phabricator.wikimedia.org/T407388 .

Now we can safely say:

&hpcCurrency=%%both_funds_highest_native_currency%%&hpc=%%both_funds_highest_native_amount%%

Thanks @ppenloglou! I didn't connect this to that recent change.

I do still wonder if it makes sense to allow country to override currency though.

Passing hpcCurrency is not an instruction to donate.wiki that says "Change currency to X". hpcCurrency's value is compared against the currency donate.wiki generates (which is dictated by country).

If these two match, then we allow hpc to alter the ask amounts in the form.
If they don't match, the value of hpc is ignored and the ask amounts fallback to that country's/currency default set.

Lars claimed this task.

Thanks @ppenloglou.