reaction icon indicating copy to clipboard operation
reaction copied to clipboard

Wrong scale for RUB currency

Open dtaipov opened this issue 7 years ago • 4 comments

Prices in Russian rubles appears 100 times as much as their correct values. For example, a price "$12.99 - $29.99" shows up in rubles like "75490 - 1 74284 руб." Correct values should be "754,90 - 1 742,84 руб."

Reproduces on the main page and the product details pages.

Fixed this in local database by removing "scale: 0" property from meteor.Shops.currencies.RUB with query: db.Shops.updateMany({}, {$unset: {"currencies.RUB.scale": ""}})

Versions: Node: 6.11.0 NPM: 3.10.10 Meteor Node: 4.8.4 Meteor NPM: 4.6.1 Reaction CLI: 0.19.0 Reaction: 1.5.4 Reaction branch: master

dtaipov avatar Oct 27 '17 08:10 dtaipov

@aldeed since we have deprecated currencies field in Shop, Can we close this as well? ref: shop/simpleSchemas.js#L694

trojanh avatar Nov 23 '19 12:11 trojanh

@trojanh The issue appears to still exist in the new api-utils package. It should be fixed there.

https://github.com/reactioncommerce/api-utils/blob/trunk/lib/CurrencyDefinitions.js#L365

aldeed avatar Nov 26 '19 21:11 aldeed

The same thing happens with CLP (chilean peso), but in this case i cant remove scale = 0 since we don't use decimal places with money. Do someone know the reason why price is multiplied by 100 when scale is 0? https://github.com/reactioncommerce/api-utils/blob/5b32c0066cc93eb28155caa4507704d735694666/lib/formatMoney.js#L23

The same thing happens in reaction-admin (imports/utils/formatMoney.js#L23) and the component-library (package/src/utils/formatMoney.js#L23)

Manizuca avatar Jul 29 '20 04:07 Manizuca

Hi @dtaipov! :) Is there anyone assigned to this issue?

rafeyshah avatar Jun 07 '23 16:06 rafeyshah