This is a complex issue to describe but it’s definitely a severe bug affecting the entire platform. Bear with me.
I have a $15 tier. Here’s an example URL I use:
https://www.patreon.com/oauth2/become-patron?response_type=code&min_cents=1500&client_id=X&scope=X&redirect_uri=X
The min_cents
parameter is set to 1500
($15). And it works perfectly for people who pay in USD, but not for people who pay in different currencies.
To explain this, here’s the process:
- User clicks on the link and is redirected to Patreon.
- Patreon checks if the user has already pledged this sum. If they have, Patreon shows them the “Connect to site” with allow button and then finally sends them to the URL set in
redirect_uri
. - If they have not pledged, Patreon shows the payment screen.
This redirect process works in all cases besides when the user pays in a different currency. In those cases, they will be stuck on the payment screen.
In my test case, I had a user pledging the $15 tier but paid in pounds. So £11.50.
Here’s their screen:
As you can see on the summary on the right side, they have already pledged this sum (credit matches pledge total), but yet, they are being displayed this screen, when they should have been redirected to redirect_uri
. Do you see the problem? This user shouldn’t even have even been sent to the payment page, where they are now stuck. They have already pledged this tier and should have been sent to the redirect url.
When I fetch the member data via the API, everything checks out properly. This user has pledged the correct tier ($15). Meaning, Patreon is not recognizing the currency conversion properly.
I can confirm this because I asked the user (with the $15/£11.50 pledge) to click on a link with min_cents
set to 1000
($10) and it redirected properly.
To test this bug, try this:
- Setup a Patreon creator page (using USD as main currency), with a $15 tier.
- Pledge this tier using pounds (should be £11.50).
- See how Patreon won’t redirect to redirect_uri when it should:
https://www.patreon.com/oauth2/become-patron?response_type=code&min_cents=1500&client_id=X&scope=X&redirect_uri=X
This is the type of bug that makes perfect sense if you test it yourself.
I am senior level developer so please let me know if you need anything technically from me to test and resolve this bug. Thanks!