I'm currently working on a new Magento ecommerce solution for our website. Basically, I've migrated all the old data over using a tool for this purpose. However, the old orders have come over having a currency of $. I'm not sure why, as the base currency etc was set to £.

In any case, to fix it, the migration tool support suggested a re-migration of all the data again, not just the orders. However, we've updated the Magento data a fair amount and didn't really want to migrate again. So I'm wondering if there is another, safe solution to change older orders' currency, so it displays in £ and not $.


EDIT: Ok so on inspecting the table sales_flat_order, I can see that old orders have "USD" in the columns base_currency_code, global_currency_code, order_currency_code and store_currency_code. I'm simply planning to update the values in these columns to have the value "GBP" (after backing up the table first of course!).

  • Maybe the old orders were placed using $ and not £
    – Marius
    Oct 15, 2014 at 8:23
  • Sadly, the old orders are in £. The old orders were migrated from a Volusion store (an American website, but it's probably clutching at straws to suggest that could be why!). Oct 15, 2014 at 8:32

1 Answer 1


I updated two tables to update currencies. These were sales_flat_order and sales_flat_order_grid. Now the old orders show the correct currency in the Magento backend.

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.