Skip to main content
GullySystem
A practical guide

Why one customer shows up under several names in your reports

Ganesh HSStrategy and Technology, GullySystem
Practical advice · 5 min read

In this guide 6 sections
The short answer

One customer appears under many names because people type names freely, branches get their own codes, and old accounts stay open beside new ones. Reports then count each version separately. Matching rules and a single customer master list merge them into one party.

How one buyer becomes five rows

Take a hardware wholesaler called Hartley Traders. One clerk types Hartley Traders Ltd. Another types Hartley Trdrs. A third adds the Leeds branch code. Last year’s account, closed after a migration, still holds a balance. A well-run sales ledger can still hold forty versions of one buyer after ten years of branch openings, mergers, rebrands and counter staff typing from memory.

To the software these are five parties. Each has its own ledger, credit limit and history. No report is wrong, because each one is faithfully adding up what it was given.

The damage shows up one level higher, where you ask who your biggest customer is or how much a group owes you in total. Ask for the top twenty customers and the answer changes with the grouping: customer code, tax number or the name typed on the invoice.

  • Spelling and spacing differences, including Ltd, Limited and Inc
  • Abbreviations typed under pressure at the counter
  • Branch or ship-to codes created as separate customers
  • Old and new accounts after a system change
  • Trade name in one place and legal name in another

What it does to credit and top-customer lists

Credit control suffers first. A buyer with a limit set per account can run up an overdue balance on each of four codes while every one stays inside its own limit. Total exposure is invisible until someone adds it by hand. A credit controller who sees four slightly overdue accounts treats them as small problems. The single combined balance would trigger an immediate stop on new orders.

Top customer lists lie in the opposite direction. A group that buys heavily through several names ranks lower than a single mid-sized buyer, so your best relationship may sit on page two.

Receivables ageing, discount slabs and rebate calculations also split. A volume rebate earned on the combined total is never triggered on any single row. Rebate schemes, annual price agreements and tiered discount slabs all assume one buyer, so every split quietly costs you either margin or goodwill.

Matching rules that find the duplicates

Start with exact keys. Tax registration number, phone, email domain and bank account are strong signals. Two records sharing a registration number are the same legal party until proven otherwise. Two records that share a company registration number, an IBAN or a bank sort code almost always describe the same legal party, whatever the names say.

Then add fuzzy matching on names. Strip punctuation and suffixes such as Inc, Ltd and Co, lower-case everything, and compare what remains using edit distance. Score each pair and send mid-confidence pairs to a person. Library tools such as Python’s rapidfuzz, or the matching functions in most database engines, can score thousands of name pairs in seconds and rank the likely duplicates first.

Never merge automatically on a name match alone. Two firms called Apex Supplies can sit in different cities and owe you different amounts.

  • Exact match on registration number or bank account
  • Normalised name with suffixes stripped
  • Same phone or email domain
  • Same address after standardising street abbreviations
  • Review queue for scores in the middle band

Build the master list and keep it clean

A customer master holds one row per real party with a permanent ID. Branches, ship-to addresses and old account codes hang beneath it as children. Every report rolls up to the parent. Where a group has real subsidiaries, model them as separate legal parties linked to one ultimate parent, so you can report both the single entity and the group exposure.

Keep a crosswalk table that maps each old code to its master ID. This preserves history, so last year’s invoices still resolve after the merge.

Close the door at source. Make the order screen search the master before it lets anyone create a new customer, and require a registration number for new entries. The same master should feed the order screen, the invoice template, the receivables report and any dealer portal, so a correction made once appears everywhere.

Run the first cleanup in a week

Export the customer list with total sales and open balance for the last two years. Sort by normalised name and scan the top two hundred by hand. You will spot clusters quickly.

Merge the sure ones, queue the doubtful ones, and rerun the top customer and ageing reports. Compare before and after. Keep the merge log, listing the old code, the new ID, the person who approved it and the date, because an auditor will eventually ask how a balance moved.

Then assign one person to approve every new customer record. That small gate stops most of the splitting.

Duplicate customer review sheet

A sheet with columns for master ID, candidate names, registration number, city, branch codes, open balance, last invoice date, match score and decision. A footer block lists the merge approver and the date, with a line for the old account codes that now map to the master.

Open a blank worksheet to print

Questions owners ask

Why does the same customer have different names in my reports?

Staff type names freely, branches and ship-to addresses get separate codes, and old accounts stay open after system changes. The software treats each variant as its own party.

Can software merge duplicate customers automatically?

It can merge safe matches, such as identical registration numbers. Name-only matches need a person to review them, because different firms often share similar names.

How do duplicates hide credit risk?

Limits are set per account. A buyer with several accounts can sit under each limit while the combined overdue amount is far higher. Only a rolled-up view shows it.

Will merging customers lose history?

Not if you keep a crosswalk from old codes to the master ID. Past invoices and payments then still resolve under the single customer.

Browse all guidesBack to top ↑
Next step

Have a specific situation to work through?

This article covers the general case. Tell us what you’re actually dealing with and we’ll respond directly.

Share Your Requirements