Omnata Product Documentation
  • Omnata Sync for Snowflake
    • What is Omnata Sync for Snowflake?
    • How it works
      • Terminology
      • Branching Mode
      • Sync Directions and Strategies
        • Outbound
        • Inbound
      • Rate Limiting
      • Access Control
      • Notifications
      • Security and Privacy
      • Internal tables
      • Internal Stored Procedures
      • FAQ
    • Step-by-step guides
      • 1. Install the Omnata Sync Engine
      • 2. Install the Omnata Plugin
      • 3. Configure the Plugin
      • 4. Create a connection
      • 5. Create a sync
    • Apps
      • Aerobotics
        • 📘Release History
      • Airtable
        • 📘Release History
      • Amazon Ads
        • Privacy Notice
      • ApprovalMax
        • 📘Release History
      • Bamboo HR
        • 📘Release History
      • Clockify
        • 📘Release History
      • Contentful
        • 📘Release History
      • GitHub
        • 📘Release History
      • Github
      • Google Ads
        • 📘Release History
      • Google Sheets
        • 📘Release History
      • HubSpot
        • 📘Release History
      • Hubspot
      • Infor Data Lake
        • 📘Release History
      • Jira
        • 📘Release History
      • LinkedIn Ads
        • 📘Release History
      • Mailgun
        • 📘Release History
      • Marketo
        • 📘Release History
      • Meta Marketing
        • 📘Release History
      • Microsoft Ads
        • 📘Release History
      • Microsoft Dynamics 365 Business Central
        • 📘Release History
        • 📘Release History
        • 📘Release History
        • 📘Release History
        • 📘Release History
      • Microsoft Entra ID
        • 📘Release History
        • 📘Release History
        • 📘Release History
        • 📘Release History
      • Microsoft Excel
      • Microsoft SQL Server
        • 📘Release History
      • Monday.com
        • 📘Release History
      • MRPeasy
        • 📘Release History
      • PayHero
        • 📘Release History
      • Pinterest Ads
        • Privacy Policy
      • PostgreSQL
        • 📘Release History
      • Salesforce
        • Salesforce Permissions needed
        • Formula Fields
        • How we use the Salesforce APIs
        • 📘Release History
      • Salesforce Marketing Cloud
        • OAuth for APIs, SFTP for file transfer with GPG on outbound
        • OAuth for APIs, SFTP for file transfer
        • OAuth for APIs, Cloud Storage for file transfer
        • 📘Release History
      • Shopify
        • Outbound sync data structures
        • 📘Release History
      • Slack
        • 📘Release History
      • Tiktok Ads
        • Privacy Policy
      • Typeform
        • 📘Release History
      • Wise
        • 📘Release History
      • Xero
        • 📘Release History
      • Zendesk Support
        • 📘Release History
        • 📘Release History
    • Plugins
      • Anatomy of a Plugin
      • Example Plugins
        • Example Plugin: Slack
        • Example Plugin: Zoho CRM
      • Creating Plugins
      • Advanced Plugin topics
        • Advanced rate limiting / concurrency
        • Custom Jinja filters
        • Custom Record Transformers
        • Dynamic Configuration Forms
        • Test case generation
    • Branching
      • Inbound Sync branching
      • Outbound Sync branching
    • Integrations
      • dbt
        • Validation Tests (coming soon)
    • 📘Release History
  • Omnata Connect for Salesforce
    • Overview
    • Getting Started
      • Install the Salesforce App
      • Connect to your data warehouse
        • Snowflake
        • BigQuery
        • Rockset
        • Firebolt
        • SingleStore (previously MemSQL)
      • Deciding which mode to use
    • Omnata with Salesforce Connect (External Objects)
      • Object Configuration
      • View your data in a list
      • Link to other objects
      • Use in a Report
      • Database schema changes
      • Writing to External Objects
    • Omnata with Salesforce Lightning Components
      • Object Configuration
      • View your data in a list
      • Link to other objects
      • Using the Lightning Component on a page
      • Assigning Permissions
    • Advanced Features
      • Row Level Filtering
      • Multi-Currency handling
        • About Multi-Currency
        • Support in Omnata Connect
        • Apex Features
    • Integrations
      • Datadog
    • Omnata with Salesforce Apex
    • Security
    • Use cases
      • Linked object drill-downs
      • Global Search
      • ERP and historical data
      • Embedded product metrics
    • Best Practices
      • Global Search
      • Change Management
      • Snowflake table design
      • Salesforce page layout
      • Salesforce Caching
Powered by GitBook
On this page
  • Background
  • Single-Currency
  • Multi-Currency
  • Advanced Multi-Currency
  1. Omnata Connect for Salesforce
  2. Advanced Features
  3. Multi-Currency handling

About Multi-Currency

PreviousMulti-Currency handlingNextSupport in Omnata Connect

Last updated 3 years ago

Background

Salesforce has a “Currency” data type for handling numbers that represent financial amounts. As described , they are not a primitive data type but act as presentation logic for a number field. You can see the difference below, where the number “123” is entered into a currency field and a regular number field respectively:

To summarise, Salesforce can be placed into one of three modes, described below.

Single-Currency

Multi-Currency

In this mode, Salesforce is aware of more than one currency:

A single currency is nominated as the “Corporate” currency, and is the only currency initially. Other currencies are added manually by the Salesforce administrator from a list of standard ISO currency codes, but the conversion rate must be entered and maintained by the administrator (i.e. no external exchange rate services are utilised).

The conversion rate of every other currency is expressed relative to the corporate rate. If you ever switch the corporate rate to a different currency, all other currencies will have their rates updated to be relative to this new currency.

In this mode, individual users can choose their local currency from their user settings, from the list of currencies recognised by their company (per above):

Now, every record automatically contains a field named “Currency”, which determines how any Currency fields for that record should be interpreted:

Below are two records, and all fields had the value “123” entered. The first record had AUD selected, the second had EUR. The user viewing the record has their local currency set to AUD. So the first record is displayed as-is, the second shows the EUR amount and also the equivalent AUD amount for convenience.

If the user switches their local currency to USD, the same list now looks like this:

Note that as the exchange rates are updated over time, revisiting old numbers will change how they are displayed, as today’s rate is always used in their presentation.

Advanced Multi-Currency

In this mode, Salesforce is aware of not only multiple currencies, but keeps a record of their exchange rates over time.

So when configuring the currency table, there is a date dimension:

And when drilling into an individual currency, you can see its historical values:

Handling multiple currencies in Salesforce is described in .

The default, where the entire organisation treats all financial amounts as one currency. That currency can be configured :

On the surface, this appears to provide convenient universal functionality. In reality, these dated exchange rates only apply to a very limited number of Standard objects (Opportunity related) with a non-configurable effective date. For example, Opportunity objects always use the Close Date to determine the currency rate. For more information, see .

this series of articles
like so
here
here