I’m having this weird issue, where the in-cart message about how much is needed for free shipping is off.
When in the Swedish market, it works perfectly fine.
But switching to the German market the message is off. And that by a lot.
Free shipping is eligible on an order value of 340kr SEK or 34€. When adding a bundle worth 340kr/34€ in the Swedish market it shows eligibility for free shipping. On the German market it says 290€ needed for free shipping.
If in the German market you go to checkout and enter a German address is shows Free shipping.
Shipping rates are set the same for all Swedish and EU market.
This tells me that it is either an issue in translation or currency change. Or something else?! I have no clue why it does that.
Please feel free to check out my store and test for yourself:
I have checked your checkout page with the above cases. However, the issue ‘Shipping message wrong’ did not occur. Could you please provide a more detailed description or attach a screenshot to better illustrate your case?
It looks like the threshold for Free Shipping is always passed to the frontend in base currency. So if it’s 280 Sek, it’s processed on the frontend as 280 Euro, so if your cart is 40Euro, the difference would still be shown as 240, even though 40 Euro > 280 Sek.
This can be fixed in theme Javascript code, however, I’ve first try to contact theme developers.
Can’t really suggest the JS code edit as I do not have access to the theme code.
Here is the idea – there is this function in assets/theme.js
get totalPrice() {
return parseFloat(this.getAttribute("total-price"))
}
I’d try to modify it like this:
get totalPrice() {
return parseFloat(this.getAttribute("total-price")) * Shopify.currency.rate
}
This will take in account currency exchange rate for selected currency.
this seems to have fixed the currency conversion. Though the entire free shipping threshold is off. It is set at 450kr or 45€. On the cart it is on 280kr or 26 something Euros.
This might be a whole different issue, but would you have an idea on how to fix that?