Hey there, Admin! Let’s chat about managing Salesforce Multi-Currency, how to set it up, and some typical considerations.
Alright, any company using Salesforce for their sales process is well-covered by the Standard currency fields, especially in the Opportunity Objects and all related ones. The challenge comes when your company needs to offer its products or services abroad in other countries, where probably the local currency is different. The good news is that Salesforce has standard functionality that supports this very well, allowing opportunities (and other objects) to handle different currencies and show the “normalized” amount in the user’s preferred currency.
The key here is the ConvertRate table. It’s a special object where Salesforce keeps the exchange rate for the two involved currencies, and it does the conversion on runtime when you query or display the data in the UI. You can find a simple article on how to set it up.
Why Advanced Multicurrency is a Big Deal
Salesforce also has a feature called Advanced Currency Management, where you can set the exchange rate and define the period of time for those rates. This is crucial.
Now, imagine you’re doing business all over the world. You’ve got customers paying in dollars, euros, yen, you name it. If you don’t have Advanced Multicurrency, your company could be losing a lot of money. According to the smart folks at Harvard, without having the right dated conversion rate for each transaction, you could end up with a whopping 30% drop in revenue accuracy. But enabling this feature comes with some warnings.
So, once you’ve enabled Multicurrency, it’s like turning on a switch.
- You can’t go back.
- All records (and UI) will show the “Currency ISO” field as required.
- Custom objects? They won’t play nice with fancy dated exchange rates, so you might need a nifty tool from the AppExchange like Automatic Currency Updater Pro. And don’t forget, updating those conversion rates can be a bit of a manual dance. No set-it-and-forget-it here! Unless, of course, you set up an app or build your own update system.
- CPQ, Vlocity, Financial Force, and customizations: Most of that is built using Custom Objects, so the previous point applies here too.
Now, here are some other things to keep in mind. Once you’ve flipped the Multicurrency switch, there’s no turning back. Reports might not be your best friend when it comes to currency fields, and you’ll want to stamp all your existing records with a default currency code before you take the plunge.
Oh, and when it comes to testing, the temporary build org only speaks USD, so keep that in mind. And those decimal places? They might not behave the way you expect them to. You’ll want to set them up per currency in the Manage Currencies section.
Remember, the primary currency will be your default corporate one unless you say otherwise. You can even have a secondary currency amount in parentheses, just for fun. Reports will show both the primary and personal default currency, depending on who’s running the show.
And don’t sweat it if you add a currency and then change your mind. You can’t delete it, but it won’t bother your end-users. It’s just a little behind-the-scenes quirk.
After all this, every currency field will show off its ISO code before the amount. So, get ready to see USD, EUR, and more!
More critical points here:
After enabled, multiple currencies can’t be disabled for your organization.
- If multiple currencies are enabled, field-to-field filters in reports don’t support currency fields, like amount.
- Upon enablement, existing records are stamped with a default currency code that you provide in your enablement request. For example, if your organization contains records using USD and EUR, switch them all to the same default currency before enablement. Support for this type of conversion is also available as a Salesforce paid implementation service.
- Standard and custom objects, such as Account, Lead, Case, Opportunities, Opportunity Products, Opportunity Product Schedules, and Campaign Opportunities, have currency fields that support multiple currencies. Reports related to these objects and fields also support multiple currencies. By default, page layouts for these objects have multi-currency-compatible fields in which you can specify the currency for the record. Typically, these fields are available only when creating a record or editing an existing record. The selected currency is used for the primary amount field.
- When you create and test a package, the temporary build org has only USD configured. Using a currency code other than USD for testing results in an error
- After enablement, the number of decimal places defined in a custom currency field is ignored. Instead set decimal places per currency through Manage Currencies in Setup.
- After enablement, the primary currency displays as usual and, optionally, a secondary currency amount appears in parentheses. The primary currency is typically the default corporate currency unless it’s overridden at the record level. The amount shown in parentheses is the user’s personal default currency, calculated based on the conversion rate settings defined in your organization. To control whether the converted currency amount appears, enable or disable parenthetical currency conversion from the Manage Currencies page.
- In reports, the primary currency reflects either the default corporate currency or the currency selected for the record. The secondary currency reflects the personal default currency of the user running the report or the currency specified in the report criteria.
- Users can specify a personal default currency on their personal information page. If parenthetical currency conversion is enabled, the personal default currency displays as the secondary currency amount (converted amount). Changing the personal default currency updates the converted amount in real-time.
- After a currency is added to an organization’s list of supported currencies, it can’t be deleted from the administrator’s list of currencies, even when it’s deactivated. The presence of inactive currencies in the administrator’s list is a cosmetic issue that doesn’t affect end users. A deactivated currency isn’t visible to end users but remains visible to administrators. Salesforce recommends that you keep this issue in mind during testing and use only those currencies that you eventually plan to use in your organization.
- After enablement, all currency fields display the ISO code of the currency before the amount. For example, $100 displays as USD 100.
Please remember, if you plan to implement this for your company, we highly recommend keeping these points in mind and installing an app such as Automated Currency Updater Pro, and forget about the problems.
So, there you have it, my friend. Embrace Multicurrency, but keep these quirks in mind. It’s like traveling the world – exciting, but you’ll want to pack wisely!