CRM Extensions

Microsoft CRM 2013: Currency exchange rates actualization

In this article I will share with you a small add-on I developed for one of my customers.
Let’s assume that you are an employee of a company that uses CRM with several currencies. Of course, you want to have actual information in your system and the currency exchange rates should be current. Microsoft CRM allows to have in your system one base currency and many other currencies. Every currency has an exchange rate field that is used for calculation of base fields of your currency fields but there is no out-of-box possibility to actualize exchange rates.

I have added to my CRM system several currencies:


Using my add-on you can keep your currency exchange rates up-to-date:

Using my add-on is simple:
1. Download solution:

2. Import it to CRM (If you download and import an unmanaged solution, you will have to publish the solution and activate workflow).
3. Open Settings – Sync Schedules (this is a custom entity that is part of the solution) and create a new Sync Schedule record, fill in the Next Execution DateTime field (for example midnight of your current day):

4. Run the Sync Currency Exchange Rates workflow against your Sync Schedule record that you’ve created in the previous step:

Wait till the workflow is executed and then go to the currencies to check that the currency exchange rates were updated:

Screenshot of a workflow I’ve designed follows. The logic of the workflow is really simple:

  1. Wait till the next execution date.
  2. Update Currency exchange rates.
  3. Update next execution date as current plus 1 day, which will invoke the recurrent execution of the workflow.

PS: I used webservice for getting the  actual exchange rates.

12 Comments on “Microsoft CRM 2013: Currency exchange rates actualization

    1. Vinod, Code that I developed should work. On the other hand it would be complicated to migrate solution because you can import it to CRM 2013 or CRM 2015. So I’m afraid that answer is no – you just can’t import solution to CRM 2016.

  1. Pingback: URL
  2. Hello,
    I got sync error since may:
    “A validation error occurred. The value of ‘exchangerate’ on record of type ‘transactioncurrency’ is outside the valid range.”

    Can you send me code or is there any chance that you will fix that?

    Best regards

    1. Petr, there is a chance that response from webservice has been changed. I can send you a sourcecode if you want.

  3. Greetings, Andrii!

    The solution download does not work. Is there an updated link where I can download this solution? Thank you!

    1. Veronica,
      That solution is not available anymore. I will update post with code when I have free minute.

Leave a Reply

Your email address will not be published. Required fields are marked *