Exchange rate miscalculation on reports and customer account page

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
12 years ago
Noticed from version 2.30+ (Upgraded to 2.30 from 1.90 where this wasn't a problem so I guess from 2.xx)

I did find a few posts on this, but none of the responses resolves my problem.

I'm using the ECB currency convertion service with Euro as my primary exchange rate currency and in my case ZAR as the primary store currency. Euro rate is set to 1.00 and auto update is enabled which keeps my primary store exchange rate fluctuating.

Currently the exchange between EUR and ZAR is 10.10

Everything looks and works great during check out, payment etc. However when writing the order to the order table it writes the primary store currency rate to the currency rate of the order instead of 1. This causes all the emails the customer sees as well as when they login and check their order to have the order total multiplied by the exchange rate.

So R10 will display as R101.00

In the admin side though everything displays fine, the dashboard shows the correct price, as well as the order totals in the order page.

Am I configuring this wrong? I would guess the amount written to the order currency rate must be the store exchange rate divided by the chosen currency exchange rate, if both are the same this should equal 1.

So if you want to test this you an add the currency ZAR, set it as your primary store currency, set EUR as the exchange currency with ECB as the exchange service, process an order and look at the price on the emails generated
12 years ago
I think this has something to do with the OrderProcessingService.

It's assigning the order currency rate to the customer currency rate.

Where 1.xx used the

currencyService.ConvertCurrency(*some value*, currencyService.PrimaryStoreCurrency, paymentInfo.CustomerCurrency);

I'm guessing the order currency rate should be customer currency rate / store currency rate?
12 years ago
You're absolutely right. It's really weird that nobody reported it before. Thanks for reporting
12 years ago
Fixed. Please see changeset 2e2c49825617
12 years ago
Great stuff!

Thanks!!
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.