beetea2 Posted August 24 Posted August 24 I offer free shipping for orders over US$60. Shipping -> Carriers -> Free Shipping -> Billing by price -> Minimum order value = US$60 No matter what currency I select, if the amount is more than 60 of that currency the customer gets free shipping. e.g. Cart has CA$66.79 (equal to US$48.00) = Free shipping. Am I doing something wrong? TB 1.6.0 PHP version 8.3.24 Panda theme ECB Exchange Rate Module 1.1.0
0 beetea2 Posted Monday at 03:18 AM Author Posted Monday at 03:18 AM (edited) I just installed a brand new TB installation on a sub directory of my main site to test the currency conversion and free shipping. Free shipping does not work as expected when converting from one currency to another. Am I doing something wrong? __________________________ US$ - no free shipping: _____________________________________________________ CAD dollars - same product and quantity - gets free shipping: _____________________________________________________________ My Settings for the free shipping carrier: __________________________________________ Edited Monday at 03:27 AM by beetea2
0 cienislaw Posted Monday at 06:00 AM Posted Monday at 06:00 AM (edited) looks like you found another bug in core as ECB Exchange Rate Module only updates currency exchange rates according to the market. my bad, no problem here. as @the.rampage.rado pointed, carrier wasn't properly configured. just tested my setup with another currency active and when carrier is configured via ranges, everything works ok no matter what currency is selected. Edited Monday at 11:55 AM by cienislaw
0 the.rampage.rado Posted Monday at 11:12 AM Posted Monday at 11:12 AM 7 hours ago, beetea2 said: I just installed a brand new TB installation on a sub directory of my main site to test the currency conversion and free shipping. Free shipping does not work as expected when converting from one currency to another. Am I doing something wrong? __________________________ US$ - no free shipping: _____________________________________________________ CAD dollars - same product and quantity - gets free shipping: _____________________________________________________________ My Settings for the free shipping carrier: __________________________________________ You're misusing the settings. You should have only one carrier for every single carrier you work with and assign free shipping according to weight/price in it as follows: In my case - I offer free shipping over 100 BGN, as you can see you have to add second range (upwards of 100 BGN) and assign 0.00 as cost. Then in FO in BGN (ignore the double currency, this is a local requirement currently as we are addopting the Euro from Januar 1st): And in Euro: In general don't make 'paid' courier up to your free delivery and then second courier for free deliveries for over XXX. This will skew your statistics for courier usage later on. 1
0 beetea2 Posted Monday at 01:00 PM Author Posted Monday at 01:00 PM 1 hour ago, the.rampage.rado said: In general don't make 'paid' courier up to your free delivery and then second courier for free deliveries for over XXX. This will skew your statistics for courier usage later on. Our shipping charges are based on weight when the order is under $60, so we can't use the same carrier for both free shipping and paid shipping. But I think you've shown me the way to set this up.
0 the.rampage.rado Posted Monday at 02:05 PM Posted Monday at 02:05 PM How do you hide your 'weight' courier when the price goes over $60? The customer should see your 'free' courier with FREE and under it same courier with some cost for the weight bracket the order falls into. For me this is very confusing both from customer UI perspective and from administration side.
0 beetea2 Posted Monday at 02:23 PM Author Posted Monday at 02:23 PM (edited) You can hide the weight carrier in Carrier setting page 3 -> Maximum order value $60 Interestingly, Maximum order value seems to follow the exchange rates correctly, whereas Minimum order value does not. In summary, I was trying to set up free shipping by setting the Minimum order value on page three of the Carrier settings, but this does not seem to take into account currency exchanges. Free shipping is now set up by setting free shipping on page 2 to NO, Out of range behaviour to "Disable Carrier" and a single range of $60 to $10000 with $0.00 cost. This allows for the proper currency conversion so that $65 CAD no longer gets free shipping. Thank you the.rampage.rado! You pointed me in the right direction. Edited Monday at 02:27 PM by beetea2
0 the.rampage.rado Posted Monday at 02:29 PM Posted Monday at 02:29 PM Can you describe me the exact settings for both carriers in your initial setup to try and replicate this issue with the minimal order value on my test@
0 beetea2 Posted Monday at 02:44 PM Author Posted Monday at 02:44 PM (edited) Paid shipping -> page 2 -> Handling costs NO, Free shipping NO, Billing by weight, Out of range: Apply the highest cost. I have 4 weight ranges set up. Page 3 -> Minimum order value US$0 Maximum Order value US$60 Free shipping -> page 2 -> Free shipping YES, Billing by price, Out of range: Disable. All zones selected. Page 3 -> Minimum order US$60 Maximum order set at 0.00 to disable. With this set up, an order of US$46 is required to pay a shipping charge. If the currency is changed to CAD with no changes in the cart the order now costs CAD$63.68 and gets free shipping. Localization -> Currencies USD exchange rate 1 CAD exchange rate 1.384437 Perhaps the problem comes from the Free shipping option on page 2? Edited Monday at 02:47 PM by beetea2
0 the.rampage.rado Posted Monday at 03:30 PM Posted Monday at 03:30 PM I replicated the bug with my test setup. It does not take into account the conversion rate at this step "Minimum order value".
0 cienislaw Posted Monday at 07:43 PM Posted Monday at 07:43 PM @beetea2 what value is set in Shipping->Preferences->Free shipping starts at?
0 the.rampage.rado Posted Monday at 07:53 PM Posted Monday at 07:53 PM You should not use the global Free shipping if you set it per carrier.
0 the.rampage.rado Posted Monday at 08:13 PM Posted Monday at 08:13 PM @beetea2, thank you for reporting this bug. You can test the fix from here: https://github.com/thirtybees/thirtybees/pull/2068 But keep in mind that it might be changed during merging so if it's critical and you don't update to edge regularly keep an eye on github so if there are changes in the final fix you can apply them manually. Cheers!
0 beetea2 Posted Monday at 10:25 PM Author Posted Monday at 10:25 PM 2 hours ago, cienislaw said: @beetea2 what value is set in Shipping->Preferences->Free shipping starts at? All set to zero to disable.
0 beetea2 Posted Monday at 10:28 PM Author Posted Monday at 10:28 PM (edited) 3 hours ago, the.rampage.rado said: You should not use the global Free shipping if you set it per carrier. We only have one carrier to send worldwide. If the order is more than $60 we will ship it for free, otherwise they are charged by weight. All orders no matter what value have the option to ship express, but this is never free. And express is charged by weight. I guess you were replying to cienislaw but I quickly found out not to set it on the preferences page. Edited Monday at 11:19 PM by beetea2
0 beetea2 Posted Monday at 10:30 PM Author Posted Monday at 10:30 PM 2 hours ago, the.rampage.rado said: @beetea2, thank you for reporting this bug. You can test the fix from here: https://github.com/thirtybees/thirtybees/pull/2068 But keep in mind that it might be changed during merging so if it's critical and you don't update to edge regularly keep an eye on github so if there are changes in the final fix you can apply them manually. Cheers! Wow! Thanks very much for the speedy work! However I am reluctant to redo my shipping once again. The setup I have now is working as expected. But I'll try this patch on my test site. 1
Question
beetea2
I offer free shipping for orders over US$60.
Shipping -> Carriers -> Free Shipping -> Billing by price -> Minimum order value = US$60
No matter what currency I select, if the amount is more than 60 of that currency the customer gets free shipping.
e.g. Cart has CA$66.79 (equal to US$48.00) = Free shipping.
Am I doing something wrong?
TB 1.6.0
PHP version 8.3.24
Panda theme
ECB Exchange Rate Module 1.1.0
15 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now