How to Merge 2 leads with different currencies

Overcome Salesforce’s Leads merge limitation using Delpha and a record-triggered flow. Learn how to align Lead currencies before merging in multi-currency orgs.

How to Merge Leads with Different Currencies in a Multi-Currency Salesforce Org

Salesforce blocks the merging of Leads that have different currencies when Multi-Currency is enabled. This limitation can disrupt your deduplication process — but Delpha provides a smart workaround using automation.

This guide explains how to automatically align currencies on duplicate Leads before merge using a record-triggered Flow.

❗ Salesforce Limitation

Salesforce does not allow merging Leads with different CurrencyIsoCode values when Multi-Currency is enabled. This is a hard block and not configurable through standard settings.

Delpha-Compatible Workaround

Delpha lets you automate the fix using a Flow that:

  • Detects when a pair is ready to merge (Auto Yes or Steward Yes)

  • Compares the currency of both Leads

  • Aligns currencies to allow the merge

Setup: Flow to Align Currencies

Step 1: Flow Trigger

  • Object: DDQ Duplicate Record

  • Trigger: On Create or Update

  • Conditions:

    • delpha__status__c = Auto Yes OR Steward Yes

    • Name = Lead

  • Trigger every time record is updated and meets conditions

Step 2: Retrieve the Lead Records

Use Get Records twice:

  • One for delpha__RecordId__c

  • One for delpha__MatchedRecordId__c

Object: Lead Store: All fields from both records for further processing.

Step 3: Check if Currencies Differ

Use a Decision element with condition:

{!Get_Lead_1_Data.CurrencyIsoCode} ≠ {!Get_Lead_2_Matched_Data.CurrencyIsoCode}

Only continue if currencies are different.

Step 4: Determine the Master Record

Use a Formula (Boolean) named Lead1IsMaster:

{!Get_Lead_1_Data.CreatedDate} < {!Get_Lead_2_Matched_Data.CreatedDate}

This assumes you're using Oldest Created Date as the merge rule. If using custom rules, adjust accordingly.

Step 5: Align the Currency

Based on the master:

  • If Lead1IsMaster = True, update Lead 2’s currency to match Lead 1

  • If False, do the reverse

Use Assignment or Update Record actions accordingly.

Lead2.CurrencyIsoCode = Lead1.CurrencyIsoCode

✅ Final Steps

  • Save the flow

  • Test with two Leads having different currencies

  • Activate the flow

Summary Table

Element
Purpose

Trigger

On DDQ Duplicate Record update

Filter

Status = Auto Yes or Steward Yes

Master Logic

Based on CreatedDate or formula

Update Action

Align non-master currency

Last updated

Was this helpful?