Zoho CRM, Zoho Forms und DataPrep: Integration von ERP- und Altdaten für Lead-Management

  • Beitrags-Autor:

Vom Datensilo zur 360-Grad-Sicht: So integrierst Du ERP, Web-Formulare und Altdaten in Zoho CRM

In vielen etablierten Unternehmen wachsen IT-Systeme über Jahre organisch. Das Ergebnis ist oft eine fragmentierte Landschaft: Leads landen in E-Mail-Postfächern, die Verkaufs-Historie steckt in alten Excel-Listen und die wirklich wertvollen Umsatzdaten zu Zubehör und Service schlummern allein im ERP-System. Diese Datensilos verhindern eine einheitliche Sicht auf den Kunden, erschweren gezielte Marketingaktionen und machen eine effiziente Vertriebssteuerung fast unmöglich. Du kennst das vielleicht: Du möchtest eine Aktion für Kunden starten, die vor fünf Jahren ein bestimmtes Produkt gekauft haben, aber die Daten dafür sind nicht greifbar.

Dieser Artikel zeigt Dir an einem konkreten Praxisbeispiel, wie Du diese Herausforderung mit dem Zoho-Ökosystem und gezielten Anbindungen an Drittsysteme meisterst. Wir bauen eine Brücke zwischen Deinen Webseiten, historischen Daten und Deinem ERP-System, um eine echte 360-Grad-Sicht auf Deine Kunden in Zoho CRM zu schaffen. Der Fokus liegt auf der praktischen Umsetzung, inklusive Lösungsstrategien und Code-Beispielen.

Die Herausforderung: Ein typisches Szenario aus der Praxis

Stell Dir ein Handelsunternehmen vor, das hochwertige, langlebige Konsumgüter vertreibt – beispielsweise Whirlpools, Design-Möbel oder Saunen. Das Geschäft läuft gut, doch die Dateninfrastruktur ist über die Jahre gewachsen und unübersichtlich geworden:

  • Verstreute Leads: Das Unternehmen betreibt mehrere Webseiten auf unterschiedlichen Systemen wie WordPress und Typo3. Jede Seite hat eigene Kontaktformulare, deren Anfragen manuell bearbeitet und oft nur unvollständig ins CRM übertragen werden.
  • Fehlende Kaufhistorie: Verkaufsdaten der letzten acht Jahre existieren nur in einer umfangreichen Excel-Tabelle. Im Zoho CRM ist bei einem Kontakt zwar vermerkt, dass er ein bestimmtes Produkt besitzt, aber nicht, wann er es gekauft hat oder ob er vielleicht schon mehrere Produkte über die Jahre erworben hat.
  • Isoliertes ERP-System: Alle Rechnungsdaten, inklusive wertvoller Informationen über Zubehör, Verbrauchsmaterialien (wie Wasserpflege) und Serviceleistungen, liegen ausschließlich im ERP-System, zum Beispiel in Select Line. Diese Daten fehlen im CRM komplett, was den Customer Lifetime Value (CLV) verschleiert.

Das konkrete Ziel des Unternehmens ist es, eine „Trade-In“-Aktion per Briefmailing an alle Kunden zu senden, deren Produktkauf sechs bis sieben Jahre zurückliegt. Aufgrund der Datenlage ist dies aktuell nicht ohne extremen manuellen Aufwand möglich. Zudem ist die Vertriebsleistung schwer messbar, da keine zentrale, datengestützte Pipeline-Steuerung existiert.

Schritt-für-Schritt zur integrierten Lösung

Um dieses Problem zu lösen, kombinieren wir mehrere Zoho-Anwendungen und binden externe Systeme über APIs und Standard-Tools an. Der Schlüssel liegt darin, Zoho CRM zur zentralen Datendrehscheibe (Single Source of Truth) für alle kundenrelevanten Informationen zu machen.

Schritt 1: Die Basis schaffen – Leads von allen Webseiten zentralisieren

Zuerst müssen wir sicherstellen, dass jeder neue Lead von jeder Webseite automatisch und strukturiert im CRM landet. Egal ob Deine Seite mit WordPress, Typo3, Joomla oder einem anderen CMS läuft, die Wege sind ähnlich.

  • Die einfache Methode mit Zoho Forms: Erstelle ein Formular in Zoho Forms. Du kannst es exakt an Dein Corporate Design anpassen und die Felder direkt den Feldern in Deinem CRM (Leads- oder Kontakte-Modul) zuordnen. Den generierten Code (iFrame oder Quellcode) kannst Du dann einfach auf Deiner Webseite einbetten. Der Vorteil: Die Integration ist robust und out-of-the-box.
  • Die native Methode mit CRM Web-Formularen: Direkt in Zoho CRM unter Einstellungen > Entwicklerbereich > Webformulare kannst Du ebenfalls Formulare erstellen. Diese sind funktional etwas einfacher, aber für die reine Lead-Erfassung oft ausreichend. Du erhältst ebenfalls einen Code zum Einbetten.
  • Die flexible Methode via API: Wenn Du bestehende Formulare (z.B. mit dem WordPress-Plugin Contact Form 7 oder Gravity Forms) weiterverwenden möchtest, ist die API der beste Weg. Nach dem Absenden des Formulars wird serverseitig ein API-Call an Zoho CRM gesendet, um den Lead zu erstellen. Dies erfordert etwas Entwicklungsaufwand, bietet aber maximale Flexibilität.

Schritt 2: Die Vergangenheit aufarbeiten – Historische Daten importieren

Die Excel-Liste mit den Altdaten ist eine Goldgrube. Doch wie bekommen wir sie sinnvoll ins CRM? Die falsche Herangehensweise wäre, einfach nur ein „Kaufdatum“-Feld im Kontakt-Modul zu befüllen. Ein Kunde kann mehrere Käufe tätigen. Die richtige Strategie ist, die Kaufhistorie über das Verkaufschancen-Modul (Deals) abzubilden.

Die Strategie: Jeder Verkauf ist eine „Geschlossen Gewonnene“ Verkaufschance.

Eine Verkaufschance in Zoho CRM enthält alle wichtigen Informationen zu einer Transaktion: den Betrag, die zugehörigen Produkte, das Abschlussdatum und die Phase („Geschlossen Gewonnen“). Indem wir für jeden Eintrag in der Excel-Liste eine solche Verkaufschance anlegen und mit dem jeweiligen Kontakt verknüpfen, bauen wir eine lückenlose und aussagekräftige Kundenhistorie auf.

Die Umsetzung: Manuell oder automatisiert?

  • Automatisierter Import mit Zoho DataPrep: Für sehr große und unstrukturierte Datensätze ist Zoho DataPrep das Werkzeug der Wahl. Du kannst die Excel-Datei hochladen, die Daten bereinigen (z.B. Datumsformate korrigieren, Dubletten finden), die Spalten den Feldern im Verkaufschancen-Modul zuordnen und den Import starten.
  • Manueller Import als pragmatische Lösung: Im Praxisbeispiel wurde entschieden, die Daten manuell zu übertragen. Dies ist sinnvoll bei einer überschaubaren Datenmenge (z.B. durch einen Werkstudenten oder eine Aushilfe) und wenn bei jedem Datensatz eine kurze Plausibilitätsprüfung durch einen Menschen erfolgen soll. Der Prozess ist einfach:
    1. Suche den Kunden aus der Excel-Liste im CRM.
    2. Falls nicht vorhanden, lege einen neuen Kontakt an.
    3. Erstelle für den Kontakt eine neue Verkaufschance.
    4. Fülle die Felder (Name der Chance, Betrag, Abschlussdatum) mit den Daten aus der Excel-Zeile.
    5. Setze die Phase direkt auf „Geschlossen Gewonnen“.

Schritt 3: Die „Trade-In“-Kampagne – Altkunden per Serienbrief reaktivieren

Nachdem die historischen Daten als Verkaufschancen im System sind, wird die geplante Kampagne trivial.

  1. Segmentierung über eine benutzerdefinierte Ansicht: Erstelle im Verkaufschancen-Modul eine neue „Benutzerdefinierte Ansicht“. Filtere nach folgenden Kriterien:
    • Phase ist Geschlossen Gewonnen
    • Abschlussdatum liegt zwischen [Datum vor 7 Jahren] und [Datum vor 6 Jahren]

    Das Ergebnis ist eine präzise Liste aller relevanten Transaktionen.

  2. Serienbrief mit Zoho Writer erstellen: Die Liste der Kontakte, die mit diesen Verkaufschancen verknüpft sind, kannst Du nun für einen Serienbrief nutzen. In den CRM-Einstellungen unter Vorlagen > Serienbrief kannst Du eine Vorlage mit Zoho Writer erstellen. Baue dort Deine Word-Vorlage nach und füge über das #-Menü die Platzhalter aus dem CRM ein (z.B. für Anrede, Name, Adresse). So erzeugst Du mit wenigen Klicks personalisierte Anschreiben für Deine Trade-In-Aktion.

Zur weiteren Automatisierung könntest Du eine Custom Function in Deluge schreiben, die täglich läuft und relevante Kontakte automatisch mit einem Tag wie „Trade-In-Kandidat-2024“ versieht.

// Deluge Custom Function - Findet Kontakte mit alten Deals
// Erstellt für das Kontakte-Modul, kann als geplanter Task laufen

// Definiere den Zeitraum (z.B. 6 bis 7 Jahre zurück)
sixYearsAgo = zoho.currentdate.subYear(7);
sevenYearsAgo = zoho.currentdate.subYear(6);

// Hole alle gewonnenen Deals im relevanten Zeitraum
relevantDeals = zoho.crm.getRecords("Deals", 1, 200, {"Stage":"Geschlossen Gewonnen", "Closing_Date":">=" + sixYearsAgo + "T00:00:01", "Closing_Date":" 0)
{
    contactIdList = contactIdsToTag.toList();
    for each id in contactIdList
    {
        // Hole bestehende Tags, um sie nicht zu überschreiben
        contactDetails = zoho.crm.getRecordById("Contacts", id.toLong());
        existingTags = if(contactDetails.get("Tag") != null, contactDetails.get("Tag"), list());
        newTags = List();
        for each tag in existingTags
        {
            newTags.add(tag.get("name"));
        }
        
        // Füge den neuen Tag hinzu, falls noch nicht vorhanden
        if(!newTags.contains("Trade-In-Kandidat"))
        {
            newTags.add("Trade-In-Kandidat");
            updateMap = Map();
            updateMap.put("Tag", newTags);
            zoho.crm.updateRecord("Contacts", id.toLong(), updateMap);
            info "Contact " + id + " tagged.";
        }
    }
}
info "Tagging process completed for " + contactIdsToTag.size() + " contacts.";

Schritt 4: Die Königsdisziplin – ERP-System (Select Line) anbinden

Um die 360-Grad-Sicht zu vervollständigen, müssen die Umsatzdaten aus dem ERP-System ins CRM fließen. Dies ermöglicht eine datengestützte Priorisierung im Vertrieb und zeigt den wahren Wert eines Kunden.

Die Strategie: Nächtliche Synchronisation der Umsatzdaten.

Der gängigste Weg ist eine regelmäßige, meist nächtliche Synchronisation. Dabei werden alle relevanten Rechnungen oder Lieferscheine des Vortages aus dem ERP-System in ein benutzerdefiniertes Modul im Zoho CRM übertragen, z.B. in ein Modul „Umsätze“.

Die technische Umsetzung:

  1. Schnittstelle prüfen: Kläre mit Deinem ERP-Dienstleister (z.B. für Select Line), welche Schnittstellen verfügbar sind.
    • REST API (bevorzugt): Eine moderne API ist der beste Weg. Sie erlaubt es, Daten gezielt und in Echtzeit abzufragen und zu verarbeiten.
    • Datenexport (Fallback): Falls keine API vorhanden ist, kann das ERP-System oft einen automatisierten, täglichen Export als CSV- oder XML-Datei auf einem (S)FTP-Server ablegen.
  2. Datenfluss implementieren: Ein Entwickler oder ein versierter Zoho-Partner kann eine geplante Funktion (z.B. in Zoho Catalyst oder direkt als Scheduled Function im CRM) schreiben. Diese Funktion wird jede Nacht ausgeführt, holt die neuen Umsatzdaten (per API oder aus der Export-Datei) und legt entsprechende Datensätze im CRM an oder aktualisiert bestehende.

Ein hypothetischer Deluge-Code für einen API-Abruf könnte so aussehen:

// Deluge Custom Function - Holt neue Rechnungen von der Select Line API
// Dieser Code ist ein vereinfachtes Beispiel

// API-Zugangsdaten sicher in Zoho Vault speichern und hier abrufen
apiToken = zoho.vault.getSecret("SelectLineAPICredentials").get("token");
apiUrl = "https://api.selectline.de/v1/invoices";

// Parameter für den API-Call (z.B. Rechnungen von gestern)
yesterday = zoho.currentdate.subDay(1);
headers = Map();
headers.put("Authorization", "Bearer " + apiToken);
params = Map();
params.put("created_since", yesterday.toString("yyyy-MM-dd"));

// API aufrufen
response = invokeurl
[
	url :apiUrl
	type :GET
	parameters:params
	headers:headers
	connection:"selectlineapi" // Eine vordefinierte Verbindung in Zoho Flow/CRM
];

// Antwort verarbeiten und Datensätze im CRM-Modul "Umsaetze" erstellen
if(response.get("responsecode") == 200)
{
	invoices = response.get("data").toList();
	for each invoice in invoices
	{
		newRevenueRecord = Map();
		newRevenueRecord.put("Name", invoice.get("invoice_number"));
		newRevenueRecord.put("Betrag", invoice.get("total_amount"));
		newRevenueRecord.put("Rechnungsdatum", invoice.get("invoice_date").toDate());
		// Kunden im CRM suchen und verknüpfen...
		// ... weitere Logik zur Zuordnung ...
		createResponse = zoho.crm.createRecord("Umsaetze", newRevenueRecord);
		info createResponse;
	}
}

Tipps und Best Practices

  • Verkaufschancen sind Deine Historie: Nutze das Verkaufschancen-Modul konsequent für jede einzelne Transaktion. Dies ist die Grundlage für fast alle aussagekräftigen Auswertungen im Vertrieb.
  • Datenqualität ist alles: „Garbage in, garbage out“. Achte besonders beim Datenimport auf saubere und konsistente Daten. Ein Tool wie Zoho DataPrep kann hier Wunder wirken.
  • Denke an die Nutzerakzeptanz: Die beste technische Lösung bringt nichts, wenn Dein Vertriebsteam sie nicht nutzt. Zeige ihnen den Nutzen auf: Statt selbst zu überlegen, wen sie anrufen sollen, liefert ihnen das CRM eine priorisierte Liste auf Basis von Kaufhistorie, letztem Kontakt und potenziellem Wert.
  • Skalierbare Automatisierung: Für komplexere, systemübergreifende Workflows ist Zoho Flow eine hervorragende Low-Code-Plattform, um z.B. das ERP mit Zoho Books und dem CRM zu verbinden.
  • Sicherheit geht vor: Speichere API-Schlüssel, Passwörter und andere Zugangsdaten niemals direkt im Code, sondern nutze Zoho Vault.

Fazit: Vom reaktiven Verwalten zum proaktiven Gestalten

Die Integration von Web-Formularen, historischen Daten und ERP-Systemen verwandelt Dein Zoho CRM von einem digitalen Adressbuch in das schlagende Herz Deiner Vertriebs- und Marketingaktivitäten. Du brichst Datensilos auf und schaffst eine verlässliche Datengrundlage, die es Dir erlaubt, Deine Kunden wirklich zu verstehen, gezielte Kampagnen zu fahren und die Effizienz Deines Vertriebs faktenbasiert zu steigern.

Der Aufwand lohnt sich, denn eine solche Integration ist kein einmaliges Projekt, sondern eine strategische Investition in die Zukunftsfähigkeit Deines Unternehmens. Du bist nicht mehr nur Verwalter von Daten, sondern wirst zum Gestalter intelligenter, datengestützter Kundenbeziehungen.

In diesem Lösungsansatz verwendete und erwähnte Zoho Apps: