Kontakt-Matching

Kontakt-Matching ist das automatische Erkennen, dass zwei eingehende Datensätze in Wirklichkeit dieselbe Person sind – obwohl sie über unterschiedliche Kanäle (WhatsApp-Nummer, E-Mail-Adresse, Instagram-ID) eintreffen. Ziel: eine einzige Kundenakte pro Person, keine Duplikate.

Was ist Kontakt-Matching?

Kontakt-Matching (oft auch „Identity Resolution" oder „Duplicate Detection") bezeichnet die Logik, mit der eine Plattform entscheidet: „Diese eingehende WhatsApp-Nachricht von +49 170 123 4567 gehört zu derselben Person, deren E-Mail [email protected] wir schon kennen." Das Ergebnis ist eine einzige Kundenakte, kein Daten-Friedhof aus halben Profilen.

Warum Matching unverzichtbar ist

Ohne Matching kommen Sie schnell in dieses Bild:

  • Anna ist in der E-Mail-Liste mit [email protected]
  • Anna ist als WhatsApp-Kontakt mit +49 170 …
  • Anna hat sich per Newsletter-Formular angemeldet mit dem Namen „Anna K."
  • Drei Datensätze, eine reale Person – ohne Matching werden alle drei separat angesprochen.

Die Folgen: doppelte Marketing-Nachrichten, falsche Lifetime-Value-Berechnung, fragmentierte Service-Historie, DSGVO-Probleme bei Auskunftsanfragen.

Match-Signale

Plattformen nutzen typischerweise diese Identifikatoren:

SignalStärkeHinweis
Telefonnummer (E.164-Format)Sehr starkEindeutig, falls einheitlich formatiert.
E-Mail-AdresseSehr starkEindeutig, aber Tippfehler kommen vor.
Platform-ID (WhatsApp-ID, Telegram-ID, Instagram-Handle)Sehr starkVom jeweiligen Anbieter vergeben, unveränderlich.
NameSchwachViele Annas im Stamm – nur in Kombination mit anderem Signal nutzbar.

Drei Modi im Vergleich

ModusWas passiert bei KollisionWann nutzen
Auto-merge (Standard)Bestehender Kontakt wird aktualisiert statt eines neuen angelegt. Älterer Kontakt bleibt Primary, fehlende Felder werden ergänzt.Default für die meisten KMU. Liefert eine saubere Kundenakte ohne manuellen Aufwand.
Allow duplicatesBeide Kontakte werden erzeugt. Plattform meldet aber im Response, dass Duplikate möglich sind (Hinweis-Liste).Sehr selten – z. B. bei Marktplatz-Setups, wo jede Anmeldung als eigener Account gewollt ist.
Block duplicatesPlattform lehnt die Anlage ab (HTTP 409) und gibt den bestehenden Kontakt zurück.Wenn Sie strikte Eindeutigkeit erzwingen wollen – z. B. im B2B-Vertrieb.

Merge-Regeln (was beim Zusammenführen passiert)

  • Ältester Kontakt bleibt Primary. Beide IDs zeigen weiterhin auf den überlebenden Datensatz.
  • Nicht-leere Werte gewinnen. Bei Konflikt entscheidet das ältere Erstellungs-Datum.
  • Sticky-Felder: is_blocked und is_archived bleiben „wahr", wenn einer der beiden Datensätze sie hatte – Merging darf einen blockierten Kontakt nie still entsperren.
  • Historie wandert mit: Konversationen, Nachrichten, Notizen, Tags, Custom Fields, Kontakt-Methoden landen alle beim Survivor.
  • System-Notiz im Audit-Log: Was wurde gemerged, was war der Konflikt – nachvollziehbar dokumentiert.

Was mit alten IDs passiert

Externe Integrationen, Webhooks, CRMs referenzieren oft alte Kontakt-IDs. Nach einem Merge dürfen diese alten IDs nicht ins Leere zeigen. Lösung: Die API löst die alte ID transparent auf den Survivor auf, gibt zusätzlich ein Feld merged_from zurück und setzt einen X-Merged-Into-Header. Bestehende Integrationen brechen nicht.

Kanal-Sonderfall: Erstkontakt auf neuem Kanal

Wichtige Ausnahme: Wenn eine WhatsApp-Nachricht eingeht für eine Telefonnummer, die wir bereits kennen – aber dem Kontakt fehlt bisher die WhatsApp-ID – ist das kein Duplikat. Es ist nur eine neue Kontaktmethode am bestehenden Kontakt. Auto-Merge ist hier sinnvoll, unabhängig vom gewählten Modus.

Manuelles Merge

Nicht jede Dublette wird automatisch erkannt. Bei phonetisch ähnlichen Namen, vertauschten Vor- und Nachnamen oder absichtlich getrennten Accounts braucht es einen manuellen Merge. Eine „Find Duplicates"-Ansicht zeigt potenzielle Kandidaten, gruppiert nach Match-Signal, mit Bulk-Merge-Option.

Kontakt-Matching bei SendSeven

SendSeven unterstützt alle drei Modi (Auto-merge als Default, Allow, Block), per-Request-Override über das Feld duplicate_mode, manuelles Merging in der UI und über die REST API (POST /contacts/{id}/merge). Match-Signale sind Telefonnummer, E-Mail, Platform-ID und Name (als schwaches Signal für die Vorschlags-Liste). Alle Merges sind im Audit-Log dokumentiert; alte UUIDs bleiben auflösbar.

Welcher Modus zu welchem Team passt und was beim Zusammenführen mit widersprüchlichen Daten passiert, steht im Artikel zur zentralen Kontaktverwaltung.