There is unfortunately some nuance to how this works for users of Salesforce Advanced Currency Management, due to a longstanding limitation of Salesforce. The short answer to “what do we do in this case” is that we convert revenue amounts using the flat rates that are defined in the basic (i.e. non-advanced) “Manage Currencies” tab. In other words, we ignore the dated exchange rates altogether despite the fact that the customer has there are defined dated exchange rates.
For the interested reader, here’s why it works this way. Our touchpoints use formula fields to calculate revenue (derived from the associated opportunity amount). Salesforce natively supports currency conversion for these formula calculations, but only for their basic flavor of currency support. It’s impossible for us to define a formula field that references the dated exchange rates. Salesforce simply does not support that capability, so we have no way to reference the dated rates in our revenue calcs calculations despite the fact that those dated rates exist in Salesforce. (I know it sounds crazy but that’s how it works.)
How do I know which feature bit to enable?
Keep in mind that there are two different feature bits for this feature. Both are located on the CRM.General tab: Multiple Currencies and Advanced Currencies. Multiple Currencies should be enabled if the customer utilizes utilizing more than a single currency, whereas the additional feature bit Advanced Currencies can be enabled if the customer your org uses Salesforce’s “Advanced Currency Management” feature where the user can set a time-based range for conversion rates.
Unfortunately, we do not know when a customer user switches between Simple or Advanced if Advanced had already been turned on. Because of that, the customer user needs to keep the Advanced Currencies setting aligned with their CRM setting manually. This should be apparent to the customer user if the conversions are incorrect, which means we didn’t know which level of conversion to apply.
Salesforce and Dynamics display their amounts with the 3-letter Conversion Code, so for consistency, our converted amounts also display with the 3-letter Conversion Code and not the symbol.
users see if they don’t have multi-currency enabled?
If the customer user doesn't have the multi-currency feature, we will default to their Currency Locale from the CRM and change all ISO codes that show their spend and revenue in the corporate currency. If this is incorrect and the customer has a mixed use of currency, the solution would be to upgrade to get the multi-currency feature.
a user used a workflow to populate a converted field, how should they use this field moving forward?
Since our offering will now handle the conversions for the customer, we recommend that they remove the workflows and custom field and allow us to import their raw Amount value.