Quote dashboards display inconsistent currency values after multi-currency enablement

After enabling multi-currency for our global sales operations, our CPQ quote dashboards are showing inconsistent currency values. Some quote totals display in USD (our corporate currency), while others show in the local opportunity currency. We’ve configured the corporate currency as USD and set up proper exchange rates for EUR, GBP, and JPY.

The multi-currency dashboard settings appear correct - we’ve enabled ‘Show values in corporate currency’ on all dashboard components. However, when I look at individual quote records, the amounts are correct in their local currencies. The issue is specifically with how the dashboard aggregates and displays these values. Currency field mapping seems inconsistent - some components convert to corporate currency while others don’t. Here’s an example of the data discrepancy we’re seeing:


Quote Q-10245: EUR 50,000 (should show as USD 54,500)
Quote Q-10246: GBP 30,000 (shows correctly as USD 37,800)
Quote Q-10247: JPY 5,000,000 (shows as JPY, not converted)

Is there a specific configuration for CPQ quote dashboards to ensure consistent currency conversion across all components?

You’re encountering a multi-layered currency conversion issue specific to CPQ dashboards. Here’s the complete solution:

First, multi-currency dashboard settings in Winter '25 require explicit field-level configuration. The ‘Show values in corporate currency’ setting at the dashboard level is just a default - each component needs individual currency field mapping. Edit each dashboard component, go to the component properties, find the Amount/Currency field mappings, and verify they’re set to use ‘Converted Amount’ rather than the raw currency field. CPQ’s SBQQ__NetAmount__c doesn’t auto-convert in dashboards even with corporate currency enabled.

Second, corporate currency configuration for CPQ requires additional setup beyond standard Salesforce multi-currency. Go to CPQ Settings > Pricing and Calculation > Currency Settings and enable ‘Use Corporate Currency for Reporting’. This setting specifically tells CPQ to populate converted amount fields that dashboards can use. Without this enabled, CPQ quotes maintain their original currency values even when corporate currency is active.

Third, currency field mapping inconsistencies occur when dashboard components mix standard Opportunity currency fields with CPQ-specific quote currency fields. Your dashboard components need to use consistent field sources. Create custom formula fields on the Quote object that explicitly convert amounts:

// Formula field: Quote_Amount_Corporate__c
IF(CurrencyIsoCode = 'USD',
   SBQQ__NetAmount__c,
   SBQQ__NetAmount__c * DatedConversionRate
)

This formula ensures consistent conversion logic across all quotes regardless of currency. Update your dashboard components to use this formula field instead of SBQQ__NetAmount__c directly.

Fourth, the selective conversion failure (GBP works, EUR and JPY don’t) indicates your dated exchange rates have coverage gaps. Run this SOQL query to verify:

SELECT IsoCode, ConversionRate, StartDate
FROM DatedConversionRate
WHERE IsoCode IN ('EUR','GBP','JPY')
ORDER BY StartDate DESC

If EUR or JPY have missing date ranges, quotes created during those periods won’t convert. Add dated exchange rates to cover all historical periods when quotes were created.

Finally, CPQ quote dashboards cache currency conversion calculations. After fixing the configuration and exchange rates, you need to force a recalculation. Create a simple Apex batch job that touches all quotes to trigger conversion recalculation:

// Pseudocode - Recalculate quote conversions:
1. Query all quotes with non-USD currencies
2. For each quote, update a dummy field to trigger recalc
3. Save quotes to refresh conversion cache
4. Dashboard components will pick up new converted values
// Execute as one-time batch job after config changes

After implementing these five components - component-level currency mapping, CPQ currency settings, consistent formula fields, complete dated exchange rates, and forced recalculation - your quote dashboards will display consistent corporate currency values across all quotes regardless of original currency. The key is that CPQ currency conversion operates separately from standard multi-currency and requires explicit configuration at multiple levels.


This draft is based on general Salesforce knowledge. It has not been verified against your specific version and environment. Practitioners: verify the steps and share your experience below.

CPQ quote currency handling is separate from standard Salesforce multi-currency. Even with corporate currency enabled, CPQ quotes use their own currency fields that might not automatically convert in dashboards. Check if your dashboard is using the SBQQ__NetAmount__c field versus the converted currency formula field. You might need to create custom formula fields that explicitly convert CPQ amounts to corporate currency using the CurrencyIsoCode field.

Verify your currency field mapping in the dashboard component properties. For each component, edit the settings and ensure the ‘Currency’ option is set to ‘Corporate Currency’ rather than ‘Document Currency’. Winter '25 changed how dashboard components handle multi-currency fields - you need to explicitly specify corporate currency conversion at the component level, not just the dashboard level.

I checked the component settings and they’re all set to show corporate currency. The weird thing is that GBP quotes convert correctly but EUR and JPY quotes don’t. Could this be related to how the exchange rates are configured? All three currencies have active exchange rates defined in the system with the same effective date.

Check the dated exchange rates table. Sometimes exchange rates get configured with future effective dates or gaps in coverage. If a quote was created on a date when the exchange rate wasn’t active, the dashboard won’t convert it properly. Go to Setup > Company Information > Manage Currencies > Manage Dated Exchange Rates and verify that EUR and JPY have continuous coverage for all the dates your quotes were created. Any gaps will cause the conversion to fail silently in dashboards.

CPQ has a known issue with dashboard currency conversion when quotes use advanced pricing features like contracted pricing or volume discounts. The SBQQ__NetAmount__c field stores the final calculated amount but doesn’t always trigger the standard currency conversion logic in reports and dashboards. You might need to create a custom Apex trigger that populates a separate currency field with the converted amount whenever a quote is saved. That way the dashboard has a reliable field to aggregate.

Confirmed this resolves the issue — remapping each dashboard component’s Amount field from SBQQ__NetAmount__c to the Converted Amount field in Winter '25 fixed our inconsistent CPQ currency displays.