I am running multiple sites off my Magento install, with multiple store views for each website.

Each of my store views is based on a different currency. My issue is due to contractual agreements etc I need to have the prices of my products individually set, rather than based on a currency exchange rate.

My process so far is as follows. I have set all my currency exchange rates to 1:1 so there is no conversion. For each of my products I have taken off the 'Default Store View' for pricing on each of my websites (now saving the product prices from Magento backend sets the same price across all stores, however, creates an EAV record for the pricing for each store view, so I have linked in the database to my local system that changes the price direct in the database giving a different price for each store view for each product). So my pricing across each store and currency is correct.

On the product view page, the price shows correct and can be bought at the correct price and no problems so far (due to the pricing taken from the EAV table).

At this point, I will mention I have for all of my products I have a 'price' set and also a 'special price'.

The category view page, however (and as I understand is taken from the Price Index Table, rather than the EAV to save time and processing etc. With the indexed table created and referenced to on a Website ID only, rather than store ID......) So the price is shown on the category view is wrongly taken from the default store price on the item. After a bit of playing around though, I noticed that ONLY the special price is showing as referenced from the Indexed table, the price that is shown (with a strikethrough as I have a cheaper special price) is actually correct.

Is this 'price' field always taken straight from the EAV instead of the indexed table?

Also is there a way that I could change the special-price field to take the value from EAV rather than the indexed table?

I have toyed with the idea of creating my own price block to be used on the catalog view pages only, however, this is a little out of my knowledge base (still getting the hang of Magento......)

1 Answer 1


To be honest, I'm sure you can do it that way, but you are always going to run into issues I think.

IMO, you'd be better of using a module such as http://innoexts.com/promotion/currency-pricing/ - I have no affiliation with these guys, but I've used this module before and it does what what you are after.

  • OK, thanks Liam, however I am still trying to get my head around the fact that the regular price (that does not appear in the indexed table) shows up in the price block in the category pages. Why would it only refer to certain prices in the index? In fact for the point of using indexed tables at all, if it is returning 1 value from the EAV table and 1 from the indexed table it is pointless using the index at all as it is still calling the EAV information,........... or am I missing something??
    – jworthy
    Commented Nov 19, 2015 at 16:29
  • Thanks for your help liam, I tried the innoexts module. For some reason it completely took down all of my websites. I did however find another extension that works brilliantly for me (bsscommerce.com/multistore-pricing.html) incase anyone needs it. I cannot see why the innoexts wouldnt work for anyone else, just my store setup didnt want to play ball with it.
    – jworthy
    Commented Dec 3, 2015 at 8:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.