#fossil_api
1 messages Β· Page 1 of 1 (latest)
π Welcome to your new thread!
β²οΈ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
β±οΈ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
π This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1402643129257164821
π Have more to share? Add more details, code, screenshots, videos, etc. below.
btw I have EUR enabled as a settlement currency with attached EUR bank account
Hi there π that seems to be expected, as Adaptive Pricing is only available when the Price you use is based on a currency that your account can settle funds in.
Additionally, Adaptive Pricing requires the currency for your prices to be one of your settlement currencies.
https://docs.stripe.com/payments/currencies/localize-prices/adaptive-pricing#:~:text=Additionally%2C Adaptive Pricing,your settlement currencies.
A US account settles funds in usd, so I wouldn't expect Adaptive Pricing to work if you switch to using eur Prices in that account.
Ah, so you also are combining this with multi-currency settlement. π€ I'm not exactly sure that using those two together really "combines" them in that way
Because the docs say:
Additionally, Adaptive Pricing requires the currency for your prices to be one of your settlement currencies. Prices automatically convert during checkout.
So I enabled that. But then on Checkout, there is no option to pick another currency when testing. I do not see USD. I am in Europe btw so maybe I need to use a VPN to test this?
I'm not sure Adaptive Pricing is expected to work in this situation. Seems like you've already found the same doc I'm referencing about the settlement currency restriction. I'm poking around internally to see if I can find anything stating about whether Multi-Currency Settlement can be used to expand the coverage of Adpative Pricing.
Ok. Thanks. I expected this to "just work" haha. Also I noticed now that I am still pricing in USD, when a user picks EUR and checks out I am not actually paid in EUR on the 2nd bank account.
It just converts to USD.
(I'm not seeing USD on that Checkout Session either, and I'm in the US)
ok
From my POV I see no reason to not make this a possibility but perhaps Stripe has a good reason this won't work currently.
Yeah, can definitely see how this would be helpful, and will file product feedback suggesting this change if it isn't how it's expected to work currently.
I also just tried making EUR my default currency but same result.
Is there any reason that when a user now chooses to pay with EUR due to adaptive pricing, I still get paid out in USD? The EUR balance on the account stays at 0.
Is this a live payment or a test payment? How are you checking your balance afterwards? Do you have relevant object IDs, like the Checkout Session ID, that you can share?
This is a test one. But I also noticed it with live payments. I enabled the EUR bank account and figured anything where the user pays in EUR with adaptive pricing would be settled there but thats not how it works I guess
pi_3Rt7XyK6bb44tQgA1szzSVYK this one was paid in EUR
Based on what I'm finding so far, it does seem like this should work, but I'm not sure why it isn't. Looking to see if it's something I'm going to be able to dig into more, or if this is going to need to be turned into a ticket so we can loop in our product eng teams.
Thanks π
Do you happen to have a test page that would generate and direct me to a fresh Checkout Session to test Adaptive Pricing?
I have an idea of what is going on for the testmode Checkout Session that I was looking at. I forgot that Adpative Pricing only does its localization once, when the session is first accessed. I think you accessed the session before, and locked the Adaptive Pricing behavior to Europe, which is why I'm not seeing USD presented.
Let me see
My internet just got cut off for a bit so if it happens again, I will reply but might be slow lol
Do you need to be in live mode or test mode?
Test mode would be preferable, but I'm not completing a payment so either should work.
Okay let me make something
Thank you! β€οΈ
And I just got confirmation from our product team regarding the behavior around the currency that is used for settlement.
That is purely based on the currency you specify for your Price object, or in this case that you use inside of price_data.
If you use price_data.currency: usd, and the customer sees EUR because they're in Europe, you will still receive the funds in usd.
Ah so that doesn't work with adaptive pricing. Ok
Well, it does, but we had to be careful about how much magic we put in the flow.
If you create a usd Price, then suddenly you start receiving transactions based in some currency you've never heard of before that could impact your integration and lead to errors in your code.
Similarly, there is a fee (if I'm not mistaken) for you to settle funds in eur vs usd, so if we did that conversion automatically it would drive up your Stripe fees. This way that feature is available to you, but you have to choose to use it.
I see. But how do I make that work then? I am confused now π Because I thought it wouldn't work but now you say it CAN work?
I do have EUR bank account enabled for settlement.
Set the currency to eur when creating the Checkout Session. Then the transactions should settle in eur.
In the line items.price_data right?
I see USD when accessing the eur link you shared π₯³
Ah right yeah ok. I get it now. But then adaptive pricing is off
wtf how
Because I was the first one to access the session from the US, so it localized to the US
You mean if I opened a Stripe checkout before, it keeps defaulting to wherever I am? How can I reset/change this for testing purposes in the future.
Yup, exactly. You can't avoid that behavior or "reset" the localization. Creating a new Checkout Session is the best way to retest.
Ah I just opened a VPN to NYC and I see it now too. The hell, I did this earlier and it wouldnt change anything haha
Haha, lots of little things go into these flows "just working" the way they should π
Alright cool. So currently, the only way to "split" currency settlements is if I detect the users country server side and base my EUR/USD setting in line_items based off that right. Can't do this with adaptive pricing.
Correct, Adaptive Pricing won't settle funds in a currency other than the one you provided when creating your Price (or within price_data), it only changes the currency that the customer sees and is able to pay in from their perspective.
The only difference I see, is that I am only offered card or bank transfer now on USD. Not Cashapp etc. if I use the EUR pricing but end up using USD to pay.
With USD pricing, I see Cashapp, Affirm, Amazon Pay etc
Can you share the IDs of those sessions?
Hey stepping in for toby who needs to step away -- i can take a look at those sessions when you have them
req_uMzXHSatd2EgfE
req_G6qYHHORwdiCEJ
I believe these were the ones. Thanks for the help so far @wheat arch
Hmm ok thanks. Yea i see the difference here which doesn't appear to be unblocked by AP.
Let me see what i can find out
Thanks!
Still digging into this, working on a couple of theories
Can you help us by doing a test creating a session with currency gbp to see what ends up showing for a US customer?
with VPN to UK?
https://horizoncloud.ai/stripe?currency=gbp
Can append any currency on this
You don't need to even access it, just create the session, share the request ID, i can access the URL from the US via VPN
Ok, right, gbp is not a settlement currency for you, so no AP and no Cashapp.
Thanks for the test page! Still digging π³οΈ
Hey we're still investigating this, but we should convert to a support case so we can get back to you directly.
I'm going to have our bot DM you a link you can use to open a case with us
Hello @trail sedge, we have sent you a direct message, please check it at https://discord.com/channels/@me/1402683982818312225
- πThe message has instructions on how to open a direct support case with our Developer Support team, in order to help you more effectively.
Click that link (log in to your dashboard if needed) and submit the case and we can follow up there