Zoho CRM, Projects und Desk per API für Projektübergabe automatisieren – Tutorial

  • Beitrags-Autor:

Vom Deal zum Projekt: Die automatisierte Übergabe von Zoho CRM an Projects und Desk

Du kennst das sicher: Das Sales-Team hat ganze Arbeit geleistet und einen neuen, spannenden Kunden in Zoho CRM auf „Geschäft gewonnen“ gesetzt. Ein Grund zum Feiern! Doch oft beginnt genau hier eine Phase der manuellen Arbeit, unzähliger E-Mails und potenzieller Informationsverluste. Die Übergabe an das Delivery- oder Projektteam ist häufig ein manueller Prozess, der fehleranfällig ist und wertvolle Zeit kostet. Besonders kritisch wird es, wenn zwischen Vertragsabschluss und Projektstart mehrere Wochen oder gar Monate liegen – eine Zeit, in der die anfängliche Euphorie des Kunden schnell in Unsicherheit umschlagen kann. Dieser Artikel zeigt dir, wie du diesen kritischen Übergabeprozess mit den Bordmitteln von Zoho und einigen cleveren API-Anbindungen vollständig automatisieren kannst, um Effizienz zu steigern und von Tag eins an ein professionelles Kundenerlebnis zu schaffen.

Praxisbeispiel: Die Lücke zwischen Sales und Delivery schließen

Stell dir eine typische Situation in einer Digitalagentur, einem IT-Dienstleister oder einem Beratungsunternehmen vor. Ein Vertriebsmitarbeiter schließt ein Projekt mit einem Volumen von 30.000 € ab. Im Zoho CRM wird der Geschäfts-Status auf „Gewonnen“ geändert. Nun beginnt die Herausforderung:

  • Das Projektteam benötigt alle relevanten Informationen, um das Projekt in Zoho Projects anzulegen.
  • Aufgrund hoher Auslastung kann das Projekt erst in acht Wochen starten. Wie wird diese Wartezeit für den Kunden überbrückt?
  • Der Kunde soll von Anfang an einen professionellen Support-Zugang erhalten, auch wenn das Projekt noch nicht aktiv läuft.
  • Die Ressourcenplanung muss den neuen Auftrag berücksichtigen, um Engpässe frühzeitig zu erkennen.

Ein manueller Prozess würde hier bedeuten: E-Mails an die Projektleitung, manuelles Kopieren von Daten, Anlegen eines Projekts von Hand und separate Kommunikation mit dem Kunden. Das ist nicht nur ineffizient, sondern birgt auch das Risiko, dass wichtige Details aus dem Sales-Prozess verloren gehen. Unser Ziel ist es, diesen gesamten Workflow zu automatisieren.

Schritt-für-Schritt Anleitung zur automatisierten Übergabe

Wir bauen einen robusten Prozess, der durch eine einzige Aktion im CRM – das Ändern des Geschäfts-Status – eine ganze Kette von Aktionen auslöst. Das Herzstück unserer Lösung ist eine Custom Function in Zoho CRM, die mit anderen Zoho Apps und externen Diensten über deren APIs kommuniziert.

Schritt 1: Der Auslöser im Zoho CRM

Alles beginnt mit einer Workflow-Regel in deinem Zoho CRM. Navigiere zu Einstellungen > Automatisierung > Workflow-Regeln und erstelle eine neue Regel für das Modul „Geschäfte“ (Deals).

  • Wann? „Bei einer Datensatzaktion“ – „Bearbeiten“.
  • Bedingung: „Phase“ wird aktualisiert auf „Geschäft gewonnen“ (oder wie auch immer dein finaler Status heißt).
  • Sofortige Aktionen: Wähle „Funktion aufrufen“.

Hier verknüpfen wir eine neue, selbstgeschriebene Funktion in Deluge, der Skriptsprache von Zoho.

Schritt 2: Die zentrale Custom Function (Deluge)

Diese Funktion ist das Gehirn unserer Automatisierung. Sie sammelt die Daten aus dem gewonnenen Geschäft und verteilt sie an die Zielsysteme. Lege eine neue Funktion an und gib ihr einen aussagekräftigen Namen, z.B. processWonDeal. Die Funktion benötigt ein Argument, nämlich die ID des Geschäftsdatensatzes (z.B. dealId).

Hier ist ein kommentiertes Beispiel für das Deluge-Skript:


// Deluge-Funktion: processWonDeal
// Argument: dealId (Long)

// 1. Relevante Daten aus dem Zoho CRM Deal abrufen
dealDetails = zoho.crm.getRecordById("Deals", dealId);
accountId = dealDetails.get("Account_Name").get("id");
accountDetails = zoho.crm.getRecordById("Accounts", accountId);

// Projektdetails aus dem CRM-Datensatz extrahieren
projectName = dealDetails.get("Deal_Name");
projectOwnerId = "DEINE_PROJEKTLEITER_ID_IN_PROJECTS"; // Statisch oder dynamisch zuweisen
projectTemplateId = "DEINE_PROJEKT_VORLAGEN_ID"; // Best Practice: Vorlagen nutzen!
projectStartDate = dealDetails.get("Voraussichtliches_Startdatum"); // Eigenes Feld im CRM

// 2. Ein neues Projekt in Zoho Projects erstellen
// Wichtig: Richte vorher eine Verbindung (Connection) zu Zoho Projects ein
projectMap = Map();
projectMap.put("name", projectName);
projectMap.put("template_id", projectTemplateId);
projectMap.put("owner_id", projectOwnerId);
if(projectStartDate != null)
{
	projectMap.put("start_date", projectStartDate.toDate());
}

// API-Aufruf an Zoho Projects
createProjectResponse = invokeurl
[
	url :"https://projectsapi.zoho.eu/restapi/portal/DEIN_PORTAL_ID/projects/"
	type :POST
	parameters:projectMap.toString()
	connection:"zohoprojects" // Name deiner Connection
];
info "Project Creation Response: " + createProjectResponse;

// 3. Den Kunden im Zoho Desk als Account anlegen (falls noch nicht vorhanden)
// Wichtig: Richte vorher eine Verbindung zu Zoho Desk ein
deskHeaders = Map();
deskHeaders.put("orgId", "DEINE_ZOHO_DESK_ORG_ID");
deskParams = Map();
deskParams.put("accountName", accountDetails.get("Account_Name"));
deskParams.put("email", accountDetails.get("Email"));
deskParams.put("phone", accountDetails.get("Phone"));

// API-Aufruf an Zoho Desk
createDeskAccountResponse = invokeurl
[
	url :"https://desk.zoho.eu/api/v1/accounts"
	type :POST
	parameters:deskParams.toString()
	headers:deskHeaders
	connection:"zohodesk" // Name deiner Connection
];
info "Desk Account Response: " + createDeskAccountResponse;

// 4. Interne Benachrichtigung an das Team in Zoho Cliq senden
cliqMessage = "Neues Projekt gewonnen: '" + projectName + "'! Voraussichtlicher Start: " + projectStartDate + ". Projekt wurde in Zoho Projects angelegt.";
cliqResponse = zoho.cliq.postToChannel("DEIN_CHANNEL_NAME", cliqMessage);
info "Cliq Response: " + cliqResponse;

// Optional: 5. Eine Willkommens-E-Mail-Sequenz in Zoho Campaigns auslösen
// Dies erfordert einen API-Aufruf an Zoho Campaigns, um den Kontakt zu einer Liste hinzuzufügen
// ... Code für Zoho Campaigns API-Aufruf ...

return "Prozess erfolgreich gestartet.";

Schritt 3: Projekt-Standardisierung mit Zoho Projects Vorlagen

Wie im Codebeispiel angedeutet, solltest du niemals ein leeres Projekt erstellen. Nutze die Vorlagen-Funktion in Zoho Projects. Erstelle eine Standardvorlage für deine typischen Projekte, die bereits die wichtigsten Meilensteine, Aufgabenlisten und sogar zugewiesene Rollen enthält. So stellst du sicher, dass jedes neue Projekt einem einheitlichen Qualitätsstandard folgt und die Projektleitung sofort eine klare Struktur vorfindet.

Schritt 4: Professioneller Support von Anfang an mit Zoho Desk

Indem du den Kunden automatisch in Zoho Desk anlegst, schaffst du vom ersten Tag an einen klaren und nachverfolgbaren Kommunikationskanal für alle zukünftigen Anfragen. Dies entlastet die E-Mail-Postfächer deiner Consultants und Projektmanager und sorgt dafür, dass keine Anfrage untergeht. Dies ist auch die Grundlage, um später standardisierte Support-Pakete anzubieten, die z.B. monatliche System-Checks oder API-Log-Prüfungen beinhalten.

Schritt 5: Die Brücke bauen mit automatisierter Kommunikation

Die acht Wochen Wartezeit sind eine kritische Phase. Nutze sie, um die Kundenbeziehung zu stärken. Du kannst dies über die API von Zoho Campaigns oder Zoho Marketing Automation steuern. Füge den Hauptansprechpartner des Kunden zu einer spezifischen „Pre-Onboarding“-Liste hinzu. Eine einfache Drip-Kampagne könnte so aussehen:

  • Sofort nach Abschluss: Eine Willkommens-E-Mail, die den Prozess erklärt und die nächsten Schritte skizziert („Wir freuen uns, Sie an Bord zu haben. Ihr Projekt startet planmäßig am [Startdatum]. In der Zwischenzeit erhalten Sie von uns einige nützliche Informationen…“).
  • Nach 2 Wochen: Eine E-Mail mit einem Link zu relevanten Blog-Artikeln, Fallstudien oder einem Vorbereitungs-Guide.
  • 1 Woche vor Projektstart: Eine E-Mail, die den zuständigen Projektleiter vorstellt und den Kick-off-Termin ankündigt.

Schritt 6 (Advanced): Integration externer Tools wie Slack oder Microsoft Teams

Dein Team arbeitet vielleicht lieber in Slack oder Teams als in Zoho Cliq. Kein Problem. Du kannst die interne Benachrichtigung ganz einfach über einen Webhook anpassen. Ersetze den zoho.cliq.postToChannel-Aufruf durch einen allgemeinen invokeurl-Aufruf an die Webhook-URL deines Slack- oder Teams-Kanals.

Beispiel für eine Slack-Benachrichtigung via Webhook:


// Ersetzt den Zoho Cliq Teil in der obigen Funktion

// 1. Slack Webhook URL
slackWebhookUrl = "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX";

// 2. Nachricht im Slack JSON-Format vorbereiten
slackMessage = "🎉 *Neues Projekt gewonnen!*n*Projekt:* " + projectName + "n*Kunde:* " + accountDetails.get("Account_Name") + "n*Voraussichtlicher Start:* " + projectStartDate;
payload = {"text": slackMessage};

// 3. Webhook aufrufen
response = invokeurl
[
	url :slackWebhookUrl
	type :POST
	parameters:payload.toString()
	headers:{"Content-Type":"application/json"}
];
info "Slack Response: " + response;

Tipps und Best Practices

  • Connections statt API-Keys: Speichere Authentifizierungsdaten niemals hartcodiert im Skript. Nutze die „Connections“-Funktion in Zoho CRM, um API-Schlüssel und OAuth-Tokens sicher und wiederverwendbar zu verwalten.
  • Fehlerbehandlung ist Pflicht: Was passiert, wenn ein API-Aufruf fehlschlägt? Umwickle deine API-Aufrufe mit try...catch-Blöcken, um Fehler abzufangen und z.B. eine Benachrichtigung an einen Admin zu senden.
  • Datenhygiene: Die Automatisierung ist nur so gut wie deine Daten. Stelle sicher, dass wichtige Felder im CRM, wie z.B. ein „voraussichtliches Startdatum“, gepflegt werden. Dies hilft nicht nur bei der Kundenkommunikation, sondern auch bei der internen Ressourcenplanung.
  • Skalierbarkeit durch Low-Code: Für komplexere Workflows mit mehr Verzweigungen und Bedingungen kann Zoho Flow eine hervorragende Alternative oder Ergänzung zu reinen Deluge-Funktionen sein. Es ermöglicht dir, ähnliche Integrationen auf einer visuellen Oberfläche zusammenzuklicken.

Zusätzliche Optimierungsmöglichkeiten

Wenn dieser Grundprozess einmal steht, kannst du ihn weiter ausbauen:

  • Vertragsmanagement: Integriere Zoho Sign in den Prozess, sodass der Deal erst dann auf „gewonnen“ gesetzt werden kann, wenn der Vertrag digital unterzeichnet ist.
  • Finanzdaten-Synchronisation: Übertrage die Rechnungsadresse und Kontaktdaten direkt an Zoho Books oder Zoho Invoice, um die Fakturierung vorzubereiten.
  • Reporting und Analyse: Nutze Zoho Analytics, um die Daten aus CRM und Projects zu kombinieren. So kannst du Auswertungen erstellen, die z.B. die durchschnittliche Zeit von Geschäftsabschluss bis Projektstart oder die Auslastung deines Delivery-Teams visualisieren.

Fazit

Die Automatisierung der Übergabe vom Vertrieb zum Projektmanagement ist mehr als nur eine technische Spielerei. Es ist ein strategischer Schritt, der die interne Effizienz massiv steigert, manuelle Fehler reduziert und vor allem das Kundenerlebnis von der ersten Minute an professionalisiert. Indem du die Stärken von Zoho-Anwendungen wie CRM, Projects und Desk kombinierst und sie über APIs gezielt miteinander verbindest, schaffst du einen nahtlosen Informationsfluss. Das Ergebnis ist ein skalierbarer Prozess, der deinem Team den Rücken freihält, damit es sich auf das konzentrieren kann, was wirklich zählt: exzellente Arbeit für zufriedene Kunden zu leisten.

Verwendete Zoho Apps in diesem Szenario: