Schedule update of Currency Exchange Rates in Dynamics 365 CE with Flow

Posted by

Working with multiple currencies in Dynamics 365 CE, you might have the need to update the currency exchange rates on a regular basis. There are custom solutions and even a XrmToolBox plugin to do the job but let’s keep it simple and just do it with Flow.

Here is the overview of the flow:

First I initialize a variable of the type Float, since the Exchange Rate field in Dynamics 365 is a decimal number. Then I call the webservice for the exchange rates against the base currency Euro:
http://www.floatrates.com/daily/eur.json

Next I get all currency records from Dynamics 365 except the one for Euro (EUR) since that’s our base currency. Then for each record I get the details and set the Exchange Rate variable with the value from the respons (JSON) of the webservice:
float(body(‘HTTP_Get_Exchange_Rates’)?[body(‘Get_Currency_record’)?[‘isocurrencycode’]]?[‘rate’])

Last I update the currency record with the new exchange rate.

That’s all.

Credits to Pieter Veenstra who’s blog post Microsoft Flow – HTTP – calling webservices, XML vs JSON helped me with just doing the right thing. Cheers, gast!

Leave a Reply

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