Skip to content
Request a 30-minute call
← All posts
Salesforce
September 2, 2026
5

Duplicate Accounts Are Quietly Breaking Your Integrations

Duplicate accounts aren't just messy. When an integration matches to the wrong one, payments and history land where nobody looks. Here's how to fix it.

A team I work with couldn't find a customer's recent payments in Salesforce, even though their payment system clearly had them on file. The sync was running. Nothing looked broken. So where was the money?

It was on a different account. At some point, someone had created a second account for the same customer by hand. When the sync went looking for a match, it attached the payment to the duplicate. The real account looked like it was missing history. The duplicate had history nobody ever looked at.

While we were in there, we found a second problem. A handful of syncs had failed outright, and nobody had been told.

Why this happens

Most teams think of duplicates as a cleanliness issue. Annoying, but harmless. That's true right up until an integration starts making decisions based on them.

  • Integrations match on whatever you gave them. Usually an email, a name or an external ID. If two records share that value, or the right record is missing it, the sync picks one, and it isn't always the one you'd pick.
  • Duplicate rules don't always apply to integrations. Salesforce's duplicate rules can warn users or block them from saving a duplicate. But an integration calling the API can be set to override those rules, and many are, so they don't fail on a warning.
  • Manual workarounds create new records. When someone can't find a customer quickly, creating a new account is the path of least resistance.
  • Failures are silent. Many syncs log errors in their own tool and never surface them in Salesforce or to a person.

The result is data that's technically in Salesforce but in the wrong place, and reports that look wrong for reasons nobody can see.

The fix

  1. Measure the problem. Turn on Salesforce's duplicate management for accounts and contacts with matching rules on the fields that matter to you (company name, website or domain, email). Run a duplicate job or a simple report on duplicate record sets to see how many you have. It's almost always more than people expect.
  2. Give integrations a reliable key. Matching on names and emails is fragile. Store the other system's customer ID in an external ID field on the account and have the integration match on that. It's the single biggest fix on this list.
  3. Merge carefully, starting with the records integrations touch. Prioritize accounts with synced data on them. Salesforce lets you merge up to three accounts at a time and keeps related records. Decide which record is the survivor before you start, and check that the external ID ends up on it.
  4. Make the right path easy for people. Set duplicate rules to alert users when they're about to create a likely duplicate, and block the obvious ones. Make search easy, and give people a quick way to ask for a merge instead of creating a workaround.
  5. Surface sync failures. Find out where each integration logs errors and route them to a shared inbox or a Salesforce report someone checks weekly. A failed sync that sends an email the next morning is a nuisance. One that fails silently for three months is a reporting problem.
  6. Check the records that matter on a schedule. Once a month, spot check a few of your biggest customers in both systems. If the totals match, you're in good shape. If they don't, you'll catch it before finance or the board does.

In our case, cleaning up the duplicates put the history back where it belonged, and failure alerts mean the team hears about a broken sync quickly instead of finding out weeks later.

How to tell if this is you

  • A customer looks inactive in Salesforce but is clearly active in another system
  • Searching for a company returns two or three similar names
  • Your integrations match records on email or name rather than an ID
  • You've never seen an error from a sync, which usually means nobody's getting them
  • Finance or support keeps their own list because Salesforce "isn't quite right"

If a few of these sound familiar, start with the external ID and the failure alerts. They prevent most of the damage while you clean up the rest.

FAQ

How do I find duplicate accounts in Salesforce?

Turn on matching rules and duplicate rules for accounts and contacts, then run a duplicate job or a report on duplicate record sets. That gives you a count and a list to work through.

Do Salesforce duplicate rules stop integrations from creating duplicates?

Not always. Integrations that write through the API can be set to override duplicate rules. The safer fix is to have each integration match on an external ID.

What is an external ID in Salesforce?

A field marked as a unique identifier from another system, like your billing system's customer ID. Integrations use it to find the right record instead of guessing by name or email.

How many accounts can I merge at once in Salesforce?

Up to three at a time. Related records move to the account you keep, so pick the survivor before you start.

If you'd like help figuring out where your integrations are matching to the wrong records, I'm always happy to talk it through.

Eric Rodriguez

About the author

Eric Rodriguez spent 16 years running revenue and operations teams before building the systems behind them. He runs Scalable Operations, a Salesforce and HubSpot consultancy that does the hands-on work.

More about Eric

Is your CRM getting in the way?

Start with the free funnel check to see where deals stall. If you would rather talk it through, a 30-minute call is usually enough to tell whether I can help.

Two ways to start

What the F*nnel?! is a free check on how your sales funnel is built and where deals are slipping through. No call needed.

Check your funnel →

Prefer to talk?

Request a 30-minute call