Vom Manuellen Chaos zur Automatisierten Event-Verwaltung: Ein Zoho Praxis-Workflow
In vielen Unternehmen, insbesondere im Dienstleistungs- und Eventsektor, basieren zentrale Prozesse auf einer Mischung aus E-Mails, Tabellenkalkulationen und Messenger-Diensten. Das funktioniert bis zu einem gewissen Punkt, wird aber schnell unübersichtlich, fehleranfällig und skaliert nicht. Wenn du Zoho One oder einzelne Zoho Apps nutzt, hast du bereits die Werkzeuge an der Hand, um diese manuellen Abläufe in einen sauberen, automatisierten Prozess zu überführen. Dieser Artikel zeigt dir an einem konkreten Praxisbeispiel aus der Eventbranche, wie du durch die geschickte Kombination von Zoho CRM, Zoho Books und Zoho Forms nicht nur Zeit sparst, sondern auch die Datenqualität und die Zusammenarbeit mit externen Partnern fundamental verbesserst. Wir tauchen tief in die technischen Details ein, inklusive Deluge-Skripten, um dir eine direkt umsetzbare Anleitung zu geben.
Die Herausforderung: Kontingentverwaltung im Event-Ticketing
Stell dir eine Agentur vor, die für Großveranstaltungen Tisch- oder Ticketkontingente einkauft und diese an Endkunden weiterverkauft. Die Herausforderungen in diesem Geschäftsmodell sind vielfältig und dürften dir in ähnlicher Form auch aus anderen Branchen bekannt sein:
- Externe Partner ohne Systemzugang: Ein wichtiger Vertriebspartner ist technisch nicht versiert und kommuniziert Anfragen und Verkäufe per WhatsApp. Diese Informationen müssen manuell ins CRM übertragen werden – ein klassischer Nährboden für Fehler und Doppelarbeit.
- Unklare Verfügbarkeiten: Es werden manchmal Kontingente angeboten, die noch gar nicht final beim Lieferanten eingekauft wurden. Es fehlt ein klarer, filterbarer Status im System, um diese „unsicheren“ Positionen zu managen.
- Manueller Buchungsprozess: Ein Angebot wird im CRM erstellt, aber die finale, verbindliche Buchung muss durch mehrere manuelle Klicks und Statusänderungen im System nachgepflegt werden.
- Aufwändige Rechnungsstellung: Die Rechnungen werden in einer externen Software (z.B. Lexoffice oder sevDesk) manuell erstellt. Besonders komplex wird es, wenn eine Rechnung verschiedene Posten mit unterschiedlichen Mehrwertsteuersätzen (z.B. 7% für Speisen, 19% für Servicegebühren) enthalten muss.
Das Ziel ist klar: Ein durchgängiger Prozess vom Partner-Request über die verbindliche Buchung bis hin zur automatisch erstellten Rechnung in Zoho Books.
Schritt-für-Schritt zur automatisierten Lösung
Schritt 1: Das Fundament – Saubere Datenstrukturen im Zoho CRM
Bevor du einen Prozess automatisierst, müssen die Daten stimmen. In unserem Beispiel nutzen wir Standardmodule und ein Custom Modul im Zoho CRM:
- Modul „Kontakte“ & „Firmen“: Für deine Kunden und Lieferanten.
- Modul „Abschlüsse“ (Deals): Jeder Verkaufsversuch, vom Angebot bis zur Buchung, wird hier als Datensatz abgebildet.
- Custom Modul „Kontingente“: Hier pflegst du alle verfügbaren Tische oder Tickets. Wichtige Felder sind: Event-Name, Anzahl Plätze, Einkaufspreis, Verkaufspreis, Lieferant (Lookup zum Firmen-Modul) und ein Status-Feld.
Wichtiger Tipp: Füge dem Modul „Kontingente“ ein neues Auswahlfeld hinzu, nennen wir es „Beschaffungsstatus“, mit den Werten: Verfügbar, Reserviert, Noch anfragen, Verkauft. Dies löst das Problem der unsicheren Verfügbarkeiten. Mit einer benutzerdefinierten Ansicht kannst du dir dann jederzeit eine Liste aller Kontingente anzeigen lassen, die du noch bei deinen Lieferanten bestätigen musst.
Schritt 2: Partner-Anfragen per Zoho Forms abfangen
Um den WhatsApp-Pingpong mit deinem Partner zu beenden, ohne ihn mit einem komplexen CRM-Login zu überfordern, ist Zoho Forms das perfekte Werkzeug. Du erstellst ein einfaches Web-Formular, das der Partner auf seinem Smartphone aufrufen kann.
Die Umsetzung:
- Erstelle ein neues Formular in Zoho Forms mit den wichtigsten Feldern: Name des Anfragenden, E-Mail, gewünschte Anzahl Plätze, Event-Datum.
- Füge ein verstecktes Feld hinzu, das den Partner identifiziert (z.B. „Partner-ID“ mit einem Standardwert).
- Nutze die eingebaute Integration von Zoho Forms mit Zoho CRM. Konfiguriere sie so, dass beim Absenden des Formulars automatisch ein neuer Datensatz im Modul „Abschlüsse“ erstellt wird. Die Felder aus dem Formular werden direkt den entsprechenden Feldern im Abschluss-Modul zugeordnet (Field Mapping).
Best Practice: Regelbasierte Formulare statt Kopien
Wenn du mehrere Partner hast, widerstehe der Versuchung, für jeden ein Formular zu kopieren. Nutze stattdessen ein einziges Master-Formular und steuere die Inhalte (z.B. verfügbare Events) über Regeln („Rules“). So musst du Änderungen nur an einer Stelle pflegen. Dies reduziert den Wartungsaufwand enorm.
Schritt 3: Der „Verbindlich Buchen“-Button mit Deluge
Ein Angebot ist raus, der Kunde sagt zu. Jetzt soll mit einem Klick alles Nötige im System passieren. Dafür erstellen wir einen Custom Button im Abschluss-Modul.
Navigiere in Zoho CRM zu Einstellungen > Entwicklerbereich > Buttons > Neuer Button. Wähle das Modul „Abschlüsse“ und platziere den Button auf der „Ansichtsseite“. Wähle als Aktion „Funktion schreiben“.
Hier ist ein Beispiel-Skript in Deluge, der Skriptsprache von Zoho:
// Annahme: Im Abschluss-Datensatz gibt es ein Lookup-Feld "Zugeordnetes_Kontingent"
// zum Custom Modul "Kontingente". Dieses Feld wird vorher manuell oder durch einen Workflow befüllt.
// dealId ist die ID des aktuellen Abschlusses, der beim Klick übergeben wird.
dealId = input.dealId;
// 1. Hole die relevanten Informationen aus dem aktuellen Abschluss
dealInfo = zoho.crm.getRecordById("Deals", dealId);
kontingentId = ifnull(dealInfo.get("Zugeordnetes_Kontingent"),"").get("id");
if(kontingentId != null)
{
// 2. Update den Status des Abschlusses auf "Gewonnen"
updateDealMap = Map();
updateDealMap.put("Stage", "Closed Won");
updateResponse = zoho.crm.updateRecord("Deals", dealId, updateDealMap);
info "Abschluss aktualisiert: " + updateResponse;
// 3. Update den Status des zugeordneten Kontingents auf "Verkauft"
// und verknüpfe es mit dem Abschluss zur Nachverfolgung
updateKontingentMap = Map();
updateKontingentMap.put("Beschaffungsstatus", "Verkauft");
updateKontingentMap.put("Zugeordneter_Abschluss", dealId); // Annahme: Es gibt ein Lookup-Feld im Kontingent-Modul
updateKontingentResponse = zoho.crm.updateRecord("Kontingente", kontingentId, updateKontingentMap);
info "Kontingent aktualisiert: " + updateKontingentResponse;
// 4. (Optional) Sende eine Benachrichtigung an den internen Chat
message = "Buchung bestätigt für Abschluss: " + dealInfo.get("Deal_Name") + ". Kontingent " + kontingentId + " ist jetzt verkauft.";
zoho.cliq.postToChannel("general", message);
return "Buchung wurde erfolgreich als verbindlich markiert.";
}
else
{
return "Fehler: Dem Abschluss ist kein Kontingent zugeordnet.";
}
Dieser simple Code nimmt dir die manuelle Arbeit ab, sorgt für konsistente Daten und informiert sogar dein Team via Zoho Cliq.
Schritt 4: Automatisierte Rechnungserstellung in Zoho Books
Der letzte und vielleicht wichtigste Schritt ist die Rechnungserstellung. Statt Daten manuell in eine andere Software zu tippen, nutzen wir die mächtige API-Verbindung zwischen CRM und Zoho Books.
Wir erstellen einen weiteren Custom Button im Abschluss-Modul („Rechnung erstellen“). Dieser Button löst eine Deluge-Funktion aus, die einen Rechnungsentwurf in Zoho Books anlegt. Die besondere Herausforderung hierbei sind die unterschiedlichen Mehrwertsteuersätze.
Hier ein Deluge-Skript, das zeigt, wie du eine Rechnung mit verschiedenen Steuerposten erstellst:
// Button-Funktion im Abschluss-Modul
// dealId wird wieder automatisch übergeben
dealId = input.dealId;
// 1. Hole die Abschluss- und zugehörigen Kontakt-Daten
dealDetails = zoho.crm.getRecordById("Deals", dealId);
contactId = dealDetails.get("Contact_Name").get("id");
contactDetails = zoho.crm.getRecordById("Contacts", contactId);
booksCustomerId = contactDetails.get("Zoho_Books_Id"); // Wichtig: Zoho Books ID muss im Kontakt synchronisiert sein!
// 2. Definiere die Rechnungsposten mit unterschiedlichen Steuern
// Annahme: Die Steuersätze "USt. 19%" und "USt. 7%" existieren in deinem Zoho Books.
// Du musst die exakten tax_id's aus Books verwenden!
taxId_19 = "12345000000123001"; // Beispiel-ID für 19%
taxId_7 = "12345000000123005"; // Beispiel-ID für 7%
lineItems = List();
// Posten 1: Servicepauschale mit 19%
item1 = Map();
item1.put("name", "Service & Agenturpauschale");
item1.put("description", "Umfasst Reservierung und Betreuung vor Ort.");
item1.put("rate", 150.00); // Preis pro Einheit
item1.put("quantity", 1);
item1.put("tax_id", taxId_19);
lineItems.add(item1);
// Posten 2: Speisenanteil mit 7%
item2 = Map();
item2.put("name", "Verzehrgutschein (Speisen)");
item2.put("description", "Anteil für Speisen gemäß Menü.");
item2.put("rate", 800.00); // Preis aus dem Abschluss-Datensatz holen
item2.put("quantity", 1);
item2.put("tax_id", taxId_7);
lineItems.add(item2);
// 3. Erstelle die JSON-Struktur für die Zoho Books API
invoiceJson = Map();
invoiceJson.put("customer_id", booksCustomerId);
invoiceJson.put("line_items", lineItems);
invoiceJson.put("date", today);
// 4. Rufe die Zoho Books API auf, um den Rechnungsentwurf zu erstellen
// "books_connection" ist der Name deiner authentifizierten Verbindung zu Zoho Books
response = zoho.books.createRecord("invoices", "YOUR_ORGANIZATION_ID", invoiceJson, "books_connection");
info response;
return "Rechnungsentwurf in Zoho Books erfolgreich erstellt.";
Dieses Skript erstellt auf Knopfdruck einen perfekten Rechnungsentwurf. Der Buchhalter muss ihn nur noch prüfen und versenden. Die Kundennummerierung (z.B. im 10.000er-Bereich für DATEV-Kompatibilität) wird direkt in Zoho Books konfiguriert und automatisch korrekt vergeben.
Tipps und Best Practices
- Datenintegrität ist alles: Automatisiere nur, was du verstehst und dessen Datenbasis sauber ist. Nimm dir die Zeit, deine CRM-Daten zu bereinigen, bevor du Workflows darauf aufbaust.
- Fange klein an: Überfordere deine Partner nicht. Ein simples Formular (Schritt 2) ist ein riesiger Gewinn und die perfekte Einstiegsdroge in die digitale Zusammenarbeit. Später kannst du über ein Portal nachdenken, das du mit Zoho Creator baust.
- Nutze die richtigen Werkzeuge: Die Filter- und Suchfunktionen in den Analytics/Reporting-Tabs von Zoho CRM sind oft mächtiger als die in den Standard-Modulansichten. Nutze sie für komplexe Suchen und manuelle Zuordnungen. Für noch tiefere Einblicke ist Zoho Analytics das Mittel der Wahl.
- Lead-Generierung mit Bedacht: Wenn du alte Datenbanken für Marketingzwecke reaktivieren möchtest, sei extrem vorsichtig. Themen wie DSGVO, Spam-Reputation und Domain-Gesundheit sind kritisch. Nutze professionelle Werkzeuge wie Zoho Campaigns, die sauberes Listenmanagement ermöglichen, und sichere dich rechtlich ab.
Fazit: Mehr als nur ein CRM
Dieses Praxisbeispiel zeigt eindrücklich, dass Zoho weit mehr ist als eine Ansammlung einzelner Apps. Die wahre Stärke liegt in der nahtlosen Integration und der Möglichkeit, über APIs und Deluge-Skripte maßgeschneiderte Prozesse zu schaffen, die exakt auf dein Geschäftsmodell passen. Durch die Automatisierung von Partneranfragen, Buchungen und der Rechnungsstellung gewinnst du nicht nur wertvolle Zeit, sondern minimierst auch Fehler und schaffst eine verlässliche Datengrundlage für alle zukünftigen Entscheidungen.
Der Aufwand, solche Workflows einmal sauber aufzusetzen, zahlt sich exponentiell aus. Du wandelst manuelle, unstrukturierte Aufgaben in einen skalierbaren, digitalen Prozess um – und kannst dich wieder auf das konzentrieren, was wirklich zählt: dein Kerngeschäft.
Verwendete Zoho Apps in diesem Workflow:
- Zoho CRM: Als zentrale Datenbasis und Prozess-Steuerung.
- Zoho Forms: Als einfaches Interface für externe Partner.
- Zoho Books: Für die automatisierte und steuerlich korrekte Rechnungsstellung.
- Zoho Cliq: Für optionale Echtzeit-Benachrichtigungen im Team.
