What is It?
Advanced Currency Management is a function provided by Salesforce that allows for dated exchange rates. However enabling ACM requires understanding the limitations.
What is Standard Multi-Currency?
Enabling “standard” multi-currency is still a requirement before activating ACM. So it is good to understand it’s functionality. Standard multi-currency allows an admin to set:
- The “corporate” currency which is the default value used for reporting. This is typically the local currency for the headquarters of the organization but there are some exceptions to the rule so it is good to verify with the customer
- The ability to configure several currencies in the org
- Finally the conversion rate of 1 unit of the corporate currency to 1 unit of the other currency. For example US$1 = CA$1.27
Enabling multi-currency in an org is possible by:
- Go to Setup — Company Information and click the Edit button
- Check the checkbox for multi-currency.
- Set the currency values appropriately
The administrator should set the exchange rates within Setup and have a procedure in place to update this exchange rate on a regular basis based on company rules. Sometimes the update is annually. Sometimes it is quarterly.
Once on, an administrator should check page layouts to ensure that the Currency picklist is available for objects where a currency amount will be entered.
Users can also adjust their default currency by adjusting their profile’s locale. Otherwise Salesforce will use the corporate currency by default. Automation tools like Flow and APEX can also affect the currency picklist automatically on behalf of the user if desired.
Records created in these other currencies will be automatically converted to the user’s currency as set on the profile and shown on the screen next to the value committed to the database. Understand that this converted value is NOT accessible via query. It is strictly shown on the user interface.
Understand that this exchange rate is used regardless of the date or age of the records. This means that the conversion shown could alter as the exchange rate in Salesforce changes. If the goal is to have a “set” converted value that is permanently minted to the record, a customization will be needed.
How does Advanced Currency Management Differ?
Advanced Currency Management works within a subset of objects to support dated exchange rates. With dated rates, admins can load historical and future exchange rates and change them as appropriate. This is better since now the converted amount shown on the screen will not adjust as the date changes. ACM runs on the Close Date field on the Opportunity.
Enabling it is simple enough:
On the same setup screen that enabled Standard Multi-Currency this is a button labeled “Enable Advanced Currency management”
Once it is enabled, there is a new Setup menu labeled “Manage Currencies”.
There are limitations introduced to Salesforce once ACM is enabled. Reading and understanding the limitations is important.
Understand that only a subset of objects will be supported by ACM. CPQ in particular does NOT support ACM and so if conversion rates are important for objects outside of ACM’s control then a customization is necessary.
How Can I Get Around These Limitations?
Traction is currently working on a tool that will use number fields on objects to store converted rates onto objects based on data from the ACM table. We will update this page as that tool is completed