Automatisierung
Automatisierung ermöglicht es Ihnen, Regeln zu erstellen, die Aktionen automatisch auslösen. Sie können Workflow-Regeln einrichten, Bedingungen für die Ausführung definieren und Aktionen wie E-Mail-Benachrichtigungen, In-App-Benachrichtigungen, Feldaktualisierungen, Webhooks und benutzerdefinierte Funktionen zuordnen. Darüber hinaus können Sie Zeitpläne für Workflow-Regeln erstellen und Protokolle der ausgeführten Workflows einsehen.
Workflow-Regeln
Sie können Aufgaben wie das Senden von E-Mails, das Aktualisieren von Feldern und das Auslösen von Webhooks oder benutzerdefinierten Funktionen automatisieren, indem Sie Workflow-Regeln in Zoho Books erstellen. Die Workflow-Regel wird automatisch ausgeführt, sobald die Bedingungen erfüllt sind.
Szenario: John möchte automatisch eine Dankes-E-Mail mit Rabattcoupons an Kunden senden, nachdem sie einen Kauf getätigt haben. Dazu richtet er eine Workflow-Regel in Zoho Books ein, sodass immer, wenn ein Kunde seine Zahlung abschließt, die Regel die E-Mail-Benachrichtigung auslöst und eine E-Mail automatisch gesendet wird, was John Zeit und Mühe spart.
Erstellen einer neuen Workflow-Regel
Um eine neue Workflow-Regel zu erstellen:
- Gehen Sie zu Einstellungen.
- Wählen Sie Workflow-Regeln unter Automatisierung.
- Klicken Sie auf + Neue Workflow-Regel in der oberen rechten Ecke.
- Füllen Sie im Pop-up Neue Workflow-Regel die folgenden Felder aus:
- Name der Workflow-Regel: Geben Sie einen Namen für die Workflow-Regel ein.
- Beschreibung: Fügen Sie eine Beschreibung hinzu, falls erforderlich.
- Modul: Wählen Sie das Modul für die Workflow-Regel aus dem Dropdown-Menü.
Hinweis: Sie können Workflow-Regeln für die folgenden Module erstellen:
- Verkäufe
- Einkäufe
- Zeiterfassung
- Kontakte
- Banktransaktionen
- Buchhalter
- Aufgaben
- Artikel
- Bestandsanpassungen
- Zahlungsbatches
- Zahlungen an Lieferanten
- Klicken Sie auf Weiter.
- Füllen Sie unter Bedingung zur Ausführung der WORKFLOW-Regel die folgenden Felder aus:
- Workflow-Typ: Wählen Sie entweder Ereignisbasiert oder Datumsbasiert.
- Aktionstyp: Wählen Sie den Aktionstyp, der den Workflow auslöst.
- Führen Sie den Workflow aus, wenn: Wählen Sie die Aktionen aus, die den Workflow auslösen (Bearbeitet, Bearbeitet oder Erstellt).
- Führen Sie aus, wenn der Datensatz: Wählen Sie entweder Erstmals bearbeitet oder Bei jeder Bearbeitung.
Hinweis: Die Felder Führen Sie den Workflow aus, wenn und Führen Sie aus, wenn der Datensatz erscheinen nur, wenn der Aktionstyp auf Bearbeitet oder Bearbeitet oder Erstellt eingestellt ist.
- Klicken Sie auf Weiter.
- Klicken Sie auf + Neue Kriterien, um ein neues Kriterium für die Workflow-Regel zu erstellen:
- Klicken Sie in der rechten Seitenleiste auf Ja, um Kriterien hinzuzufügen, oder auf Nein, um zu überspringen.
- Wählen Sie ein Feld, den Vergleichsoperator und geben Sie den erforderlichen Wert ein.
- Klicken Sie auf + Kriterium hinzufügen oder +, um bei Bedarf weitere Kriterien zu erstellen.
- Wenn Sie mehrere Kriterien hinzufügen, wählen Sie entweder UND oder ODER aus dem Dropdown-Menü, je nachdem, wie Sie möchten, dass die Kriterien funktionieren. Sie können auch das Kriterienmuster bearbeiten, indem Sie die Kriterien manuell im Feld KRITERIENMUSTER eingeben.
- Sobald Sie die erforderlichen Kriterien hinzugefügt haben, klicken Sie auf Fertig.
- Fügen Sie Aktionen hinzu, indem Sie aus den folgenden Optionen auswählen:
- + Sofortige Aktionen: Löst Aktionen sofort aus, wenn die Kriterien erfüllt sind.
- Wählen Sie in der rechten Seitenleiste den Typ der Workflow-Aktion, die Sie mit der Workflow-Regel verknüpfen möchten, aus dem Dropdown-Menü Typ. Wählen Sie dann aus dem Dropdown-Menü Name die Workflow-Aktion aus, die Sie erstellt und konfiguriert haben, oder klicken Sie auf + Neue %Workflow-Aktion% im Dropdown-Menü, um eine neue Workflow-Aktion hinzuzufügen.
- Klicken Sie auf + Neue Aktion hinzufügen, um bei Bedarf weitere Aktionen hinzuzufügen.
- Klicken Sie auf Verknüpfen, um die Aktionen mit den Kriterien zu verknüpfen.
- + Zeitbasierte Aktionen: Löst Aktionen basierend auf der geplanten Zeit aus.
- Wählen Sie in der rechten Seitenleiste im Feld AUSFÜHRUNGSZEIT die Zeit aus, zu der die Aktion ausgeführt werden soll.
- Wählen Sie den Typ der Workflow-Aktion, die Sie mit der Workflow-Regel verknüpfen möchten, aus dem Dropdown-Menü Typ. Wählen Sie dann aus dem Dropdown-Menü Name die Workflow-Aktion aus, die Sie erstellt und konfiguriert haben, oder klicken Sie auf + Neue %Workflow-Aktion% im Dropdown-Menü, um eine neue Workflow-Aktion hinzuzufügen.
- Klicken Sie auf + Neue Aktion hinzufügen, um bei Bedarf weitere Aktionen hinzuzufügen.
- Klicken Sie auf Verknüpfen, um die Aktionen mit den Kriterien zu verknüpfen.
- + Sofortige Aktionen: Löst Aktionen sofort aus, wenn die Kriterien erfüllt sind.
- Klicken Sie auf Speichern, um die Workflow-Regel abzuschließen und zu speichern.
Jetzt, nachdem Sie die Workflow-Regel erstellt haben, wird die Regel ausgeführt, und die angegebene Aktion wird stattfinden, wann immer eine Aktion auftritt, die dem Trigger entspricht, den Sie in der Workflow-Regel festgelegt haben.
Hinweis: Sie können bis zu 10 Kriterien für einen Workflow erstellen, und innerhalb jedes Kriteriums können Sie bis zu 10 Kriterien hinzufügen.
Andere Aktionen in Workflow-Regeln
Ändern der Reihenfolge von Workflow-Regeln
Wenn Sie bestimmte Workflow-Regeln oben auf der Listenansicht-Seite oder in einer bestimmten Reihenfolge anzeigen möchten, können Sie sie neu anordnen. So geht’s:
- Gehen Sie zu Einstellungen.
- Wählen Sie Workflow-Regeln unter Automatisierung.
- Wählen Sie das Modul aus, in dem Sie die Reihenfolge der Workflow-Regeln ändern möchten, indem Sie das Dropdown-Menü Modul klicken.
- Klicken Sie auf Reihenfolge ändern in der rechten Ecke.
- Wählen Sie nun die Regeln aus und ordnen Sie sie nach Ihren Wünschen neu.
- Nach der notwendigen Neuanordnung klicken Sie auf Neuanordnung speichern.
Bearbeiten einer Workflow-Regel
- Gehen Sie zu Einstellungen.
- Wählen Sie Workflow-Regeln unter Automatisierung.
- Fahren Sie mit der Maus über die Workflow-Regel, die Sie bearbeiten möchten, und klicken Sie auf Bearbeiten.
- Nehmen Sie Ihre Änderungen vor und klicken Sie auf Speichern.
Klonen einer Workflow-Regel
Wenn Sie eine neue Workflow-Regel mit denselben Details wie in einer vorhandenen Workflow-Regel benötigen, können Sie die vorhandene Regel klonen. So geht’s:
- Gehen Sie zu Einstellungen.
- Wählen Sie Workflow-Regeln unter Automatisierung.
- Fahren Sie mit der Maus über die Workflow-Regel, die Sie klonen möchten, klicken Sie auf das Dropdown-Menü rechts und wählen Sie Klonen.
- Überprüfen Sie auf der Seite Neue Workflow-Regel die geklonten Details.
- Überprüfen Sie die Bedingungen für die Ausführung der Workflow-Regel und klicken Sie auf Aktualisieren.
- Klicken Sie auf Speichern.
Eine Workflow-Regel als Inaktiv markieren
Wenn Sie eine Workflow-Regel eine Weile nicht verwenden möchten, sie aber für die zukünftige Nutzung aufbewahren möchten, können Sie sie als inaktiv markieren, anstatt sie zu löschen. Um sie als inaktiv zu markieren:
- Gehen Sie zu Einstellungen.
- Wählen Sie Workflow-Regeln unter Automatisierung.
- Fahren Sie mit der Maus über die Workflow-Regel, die Sie als inaktiv markieren möchten, klicken Sie auf das Dropdown-Menü rechts und wählen Sie Als inaktiv markieren.
Benachrichtigungseinstellungen für Workflow-Regeln konfigurieren
Einblicke:
- Sie können einen Workflow-Alarm bis zu 500 Mal am Tag auslösen.
- Administratoren erhalten auch In-App-Benachrichtigungen, wenn eine Workflow-Aktion die festgelegte Schwelle überschreitet.
Sie können tägliche Limits für Workflow-Alarm-Auslöser festlegen und E-Mail-Empfänger hinzufügen, um benachrichtigt zu werden, wenn die tägliche Schwelle erreicht ist. Sie können auch konfigurieren, wie Sie Benachrichtigungen über Fehlerprotokolle erhalten, wenn eine Workflow-Regel fehlschlägt. Um zu konfigurieren:
- Gehen Sie zu Einstellungen.
- Wählen Sie Workflow-Regeln unter Automatisierung.
- Klicken Sie auf Benachrichtigungseinstellungen konfigurieren in der oberen rechten Ecke.
- Füllen Sie im Popup Benachrichtigungseinstellungen konfigurieren die folgenden Felder aus:
- Benachrichtigungen über Nutzungslimits: Wählen Sie eine Schwelle für das Senden von Benachrichtigungen für Workflow-Aktionen wie E-Mail-Alerts, Webhooks und benutzerdefinierte Funktionen.
- Benachrichtigungen über Fehlerprotokolle: Wählen Sie die Häufigkeit und Uhrzeit für Benachrichtigungen aus und geben Sie die E-Mail-Empfänger an, die die Updates zu den Fehlerprotokollen erhalten sollen, falls erforderlich.
- Klicken Sie auf Speichern.
Eine Workflow-Regel löschen
- Gehen Sie zu Einstellungen.
- Wählen Sie Workflow-Regeln unter Automatisierung.
- Fahren Sie mit der Maus über die Workflow-Regel, die Sie löschen möchten, klicken Sie auf das Dropdown-Menü rechts und wählen Sie Workflow-Regel löschen.
- Klicken Sie im folgenden Popup auf Ja, um zu bestätigen.
Workflow-Aktionen
E-Mail-Alerts
Die folgenden Schritte erklären, wie Sie einen E-Mail-Alarm für ein beliebiges Modul in Zoho Books einrichten.
Erstellen eines neuen E-Mail-Alarms:
Um einen E-Mail-Alarm einzurichten, navigieren Sie zu
> Automatisierung > E-Mail-Alerts und klicken Sie auf + Neuer E-Mail-Alarm.

| Feld | Beschreibung |
|---|---|
| Name | Geben Sie einen eindeutigen Namen für den E-Mail-Alarm an. |
| Modul | Wählen Sie das Modul aus, für das Sie einen E-Mail-Alarm erstellen möchten. |
| E-Mail-Vorlage | Sie können eine Vorlage aus dem Dropdown-Menü auswählen oder auf + Neue E-Mail-Vorlage hinzufügen klicken, wenn Sie eine neue erstellen möchten.![]() |
| E-Mail-Empfänger | Wählen Sie Kontakte aus dem Dropdown-Menü aus, an die Sie die E-Mail-Benachrichtigungen senden möchten. |
| Zusätzliche Empfänger | Wenn Sie E-Mail-Benachrichtigungen an weitere Personen senden möchten, geben Sie deren E-Mail-Adressen durch ein Komma getrennt ein. Bitte beachten Sie, dass Sie maximal 10 zusätzliche Empfänger hinzufügen können. |
Klicken Sie auf Speichern, um eine neue E-Mail-Benachrichtigung zu erstellen. Sie können jetzt eine der vielen erstellten E-Mail-Benachrichtigungen aus dem Dropdown-Menü auswählen, um benachrichtigt zu werden, wenn ein Workflow ausgelöst wird.
Weitere Aktionen in E-Mail-Benachrichtigungen
Eine E-Mail-Benachrichtigung löschen:
Um eine E-Mail-Benachrichtigung zu löschen, fahren Sie mit dem Cursor neben einer E-Mail-Benachrichtigung in der Liste und klicken Sie auf das Löschen-Symbol.

E-Mail-Benachrichtigungen filtern:
Um die Liste der E-Mail-Benachrichtigungen zu filtern, befolgen Sie diese Schritte:
- Navigieren Sie zu
> Automatisierung > E-Mail-Benachrichtigungen. - Wählen Sie unter Modul ein Modul aus dem Dropdown-Menü aus, für das die E-Mail-Benachrichtigung erstellt wurde.
Basierend auf Ihrer Auswahl werden die entsprechenden E-Mail-Benachrichtigungen als Liste angezeigt.

Hinweise:
- Sie können maximal 5 E-Mail-Benachrichtigungen für jede Workflow-Regel erstellen.
- Maximal 500 E-Mail-Benachrichtigungen können pro Tag ausgelöst werden.
In-App-Benachrichtigungen
Zoho Books ermöglicht es Ihnen, In-App-Benachrichtigungen zu erstellen, um Ihre Benutzer über ein Ereignis oder eine bedeutende Aktivität, die in Ihrer Organisation stattgefunden hat, zu informieren. Sie können dies für alle Module festlegen und auch auswählen, wann die Benachrichtigung ausgelöst werden soll.
Szenario: Angenommen, das Verkaufsteam hat einen Verkauf im Wert von 100000 in Ihrer Organisation getätigt. Alle Administratoren und Benutzer der Organisation sind möglicherweise nicht über den Verkauf informiert. Das Auslösen einer In-App-Benachrichtigung für Rechnungen, deren Gesamtbetrag über dem durchschnittlichen Verkaufswert der Organisation liegt, hätte alle Benutzer der Organisation benachrichtigt.
Ebenso können Sie eine Workflow-Regel einrichten, um In-App-Benachrichtigungen für Ihre Organisation auszulösen. So geht’s:
Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
Wählen Sie Workflow-Aktionen unter Automatisierung.
Wählen Sie im Bereich Workflow-Aktionen In-App-Benachrichtigungen.
Klicken Sie auf + Neue In-App-Benachrichtigung in der oberen rechten Ecke.
Auf der Seite Neue In-App-Benachrichtigung:
- Erstellen Sie eine neue Workflow-Regel, indem Sie einen Namen eingeben und das Modul auswählen.
- Wählen Sie wann Sie die Benachrichtigung auslösen möchten – Ereignisbasiert oder Datumsbasiert.
- Richten Sie Filter und Kriterien für den Workflow ein und klicken Sie auf Weiter.

- Wählen Sie den Aktionstyp als In-App-Benachrichtigungen.
- Erstellen Sie eine neue Benachrichtigung, indem Sie auf + Neue In-App-Benachrichtigung unter Verkauf klicken.

Aktivieren Sie die Option zeitbasierte Aktionen hinzufügen und wählen Sie aus, wann Sie die Aktion ausführen möchten.
- Legen Sie die Kriterien fest und klicken Sie auf Speichern.

Das nächste Mal, wenn die Aktion auftritt, werden die ausgewählten Empfänger im Glocken-Symbol benachrichtigt. Klicken Sie darauf, um die Details anzuzeigen.
![]()
Feldaktualisierungen
Die Option Feldaktualisierungen ermöglicht es Ihnen, automatisch Änderungen an einem Feld eines bestimmten Moduls vorzunehmen, für das der Workflow ausgelöst wurde. Zum Beispiel können Sie wählen, das Ablaufdatum eines Angebots automatisch auf den 30. Juni 2015 zu verlängern, wenn der Gesamtbetrag größer oder gleich 500 $ ist. In diesem Fall wird das Feld Ablaufdatum auf das oben genannte Datum geändert, wenn das Feld Gesamt “>=“500 ist.
Um eine Feldaktualisierung einzurichten:
- Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
- Wählen Sie Workflow-Aktionen unter Automatisierung.
- Wählen Sie im Bereich Workflow-Aktionen Feldaktualisierungen aus.
- Klicken Sie auf + Neue Feldaktualisierung in der oberen rechten Ecke.
- Geben Sie auf der Seite Neue Feldaktualisierung die folgenden Details ein:

| Feld | Beschreibung |
|---|---|
| Name | Geben Sie einen eindeutigen Namen für die Feldaktualisierung an. |
| Modul | Wählen Sie ein Modul aus, für das Sie eine Feldaktualisierung erstellen möchten. |
| Aktualisierung | Wählen Sie das Feld aus, in dem Sie Änderungen vornehmen möchten, wenn ein Workflow ausgelöst wird, aus dem Dropdown. -Referenz # -Ablaufdatum -Verkäufer -Notizen -Allgemeine Geschäftsbedingungen -Anpassungsbeschreibung Geben Sie den Wert des Feldes im entsprechenden Feld ein. Wenn Sie das Feld mit einem leeren Wert aktualisieren möchten, aktivieren Sie das Kontrollkästchen Mit leerem Wert aktualisieren?. ![]() |
- Klicken Sie auf Speichern, um eine neue Feldaktualisierung zu erstellen. Sie können jetzt eine der vielen erstellten Feldaktualisierungen auswählen, um Änderungen vorzunehmen, wenn der Workflow ausgelöst wird.
Weitere Aktionen in Feldaktualisierungen
Eine Feldaktualisierung löschen
Um eine Feldaktualisierung zu löschen:
- Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
- Wählen Sie Workflow-Aktionen unter Automatisierung.
- Wählen Sie im Bereich Workflow-Aktionen Feldaktualisierungen aus.
- Bewegen Sie den Cursor über die Feldaktualisierung, die Sie löschen möchten, und klicken Sie auf das Löschen-Symbol.

Feldaktualisierungen filtern
Um die Feldaktualisierungen zu filtern:
- Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
- Wählen Sie Workflow-Aktionen unter Automatisierung.
- Wählen Sie im Bereich Workflow-Aktionen Feldaktualisierungen aus.
- Wählen Sie unter Modul ein Modul aus dem Dropdown aus, für das die Feldaktualisierung erstellt wurde.
Basierend auf Ihrer Auswahl werden die entsprechenden Feldaktualisierungen als Liste angezeigt.

Hinweis: Sie können maximal 3 Feldaktualisierungen für jede Workflow-Regel erstellen.
Webhooks
Webhooks erleichtern die Kommunikation mit Drittanwendungen, indem sie sofortige Webbenachrichtigungen senden, jedes Mal, wenn ein Ereignis in Zoho Books auftritt. Mit Webhooks können Sie HTTP- und HTTPS-URLs konfigurieren und diese mit Workflow-Regeln verknüpfen, um den Benachrichtigungsprozess zu automatisieren. Lesen Sie unser Hilfedokument zu Webhook-Beispielen, um mehr darüber zu erfahren, wann und wie Sie Webhooks verwenden können.
Für allgemeine Informationen zu Webhooks besuchen Sie webhooks.org.
Erstellen eines Webhooks
Um einen Webhook einzurichten:
- Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
- Wählen Sie Workflow-Aktionen unter Automatisierung.
- Wählen Sie im Bereich Workflow-Aktionen Webhooks.
- Klicken Sie auf + Neuer Webhook in der oberen rechten Ecke.

- Geben Sie auf der Seite Neuer Webhook die folgenden Details ein:
- Geben Sie einen Namen für den Webhook im Feld Name ein.
- Wählen Sie das Modul aus, für das Sie den Webhook erstellen möchten, aus dem Dropdown neben dem Feld Modul.
- Fügen Sie eine Beschreibung zum Webhook im Feld Beschreibung hinzu, falls erforderlich.

Im Feld URL & Parameter wählen Sie die HTTP-Methode aus und geben die URL der Drittanwendung ein. Die in Zoho Books verfügbaren HTTP-Methoden sind unten aufgeführt:
- Post: Fordert an, dass die gesendeten Daten als neu betrachtet werden müssen
- Put: Fordert an, dass die gesendeten Daten als eine modifizierte Version der bereits vorhandenen betrachtet werden sollten
- Delete: Fordert an, dass die Daten gelöscht werden müssen.
Hinweis: Wenn Sie eine Portnummer im Feld URL und Parameter angeben möchten, beachten Sie, dass Zoho Books nur die Portnummern 80 und 443 unterstützt.
Sie können auch zusätzliche Abfrageparameter hinzufügen, indem Sie auf Parameter hinzufügen klicken und die erforderlichen Werte in die Felder Schlüssel und Wert eingeben. Sie können benutzerdefinierte Parameter wie Auth-Token, Sicherheitstoken, API-Schlüssel usw. hinzufügen.

- Aktivieren Sie die Option Ich möchte diesen Webhook sichern, wenn Sie Ihren Webhook sichern möchten. Geben Sie den geheimen Schlüssel im Feld Geheimer Token ein. Dies hilft zu überprüfen, ob der Webhook von Zoho Books gesendet wurde. Er sollte alphanumerisch sein und zwischen 12 und 50 Zeichen liegen.
Hinweis: Sie können den geheimen Token später nicht bearbeiten oder anzeigen.

Hinweis: Der geheime Token wird verwendet, um einen Hash-Wert zu berechnen, daher müssen Sie sicherstellen, dass derselbe Token auf Ihrem Server verfügbar ist, um einen ähnlichen Hash-Wert zu berechnen.
- Im Abschnitt Header können Sie zusätzliche Informationen einfügen, die in die HTTP-Anfrage aufgenommen werden sollen. Klicken Sie auf + Neue Header hinzufügen, wenn Sie zusätzliche Header hinzufügen möchten.

Im Abschnitt Autorisierungstyp wählen Sie aus, wie Sie das Webhook autorisieren möchten.
- Selbstautorisierung: Wählen Sie diese Option, um Ihr Webhook einzurichten, indem Sie die Autorisierungsdetails manuell bereitstellen.
- Verbindungen: Wählen Sie diese Option, um Ihr Webhook mithilfe einer Verbindung einzurichten. Lesen Sie unser Hilfedokument zu Verbindungen, um zu erfahren, wie Sie Verbindungen erstellen.

Im Abschnitt Body wählen Sie aus, wie Sie die Daten senden möchten. Sie können aus den folgenden Body-Parametern wählen:
- Standard-Payload: Im Standard-Payload-Format werden alle Parameter, die mit dem Modul verbunden sind, im Anforderungstextkörper im Format application/json gesendet.
- form-data: Senden Sie Daten als Text oder Dateien. Wenn Sie Datei auswählen, werden die benutzerdefinierten Felder für den Anhangstyp, der im Modul erstellt wurde, für das Sie dieses Webhook erstellen, im Dropdown-Menü aufgelistet.
- x-www-form-urlencoded: Im x-www-urlencoded-Format werden die Daten kodiert und an den Server gesendet.
- Raw: Im Rohformat können Sie die Parameter auswählen, die an den Anforderungstextkörper gesendet werden. Der Inhaltstyp ist application/json.

- Klicken Sie auf Speichern und Ausführen, um zu überprüfen, ob das Webhook ordnungsgemäß funktioniert, oder klicken Sie auf Speichern, wenn Sie es später ausführen möchten.
Hinweis: Wenn Sie Webhooks einrichten, werden alle Kontaktdaten Ihrer Zoho Books-Organisation (Name, Telefonnummer, Adresse und E-Mail-Adresse) mit der URL geteilt, die Sie benachrichtigen möchten.
Webhook-Beispiele
Um Ihnen zu helfen, zu verstehen, wie Webhooks in Zoho Books funktionieren, haben wir einige Beispiele skizziert. Diese geben Ihnen eine klare Vorstellung davon, wie Webhooks angewendet werden können, um Ihren geschäftlichen Anforderungen gerecht zu werden.
Sichern Sie Ihre Webhooks
Die Sicherung Ihrer Webhooks kann helfen, zu überprüfen, dass die Webhooks von Zoho Books gesendet wurden. Dazu müssen Sie Ihren Server so einrichten, dass er auf Webhooks von Zoho Books hört. Wenn Ihr Server ein Webhook von Zoho Books erhält, muss ein Hash-Wert basierend auf dem Payload und Ihrem geheimen Token generiert werden. Überprüfen Sie anschließend, ob er mit dem Hash-Wert von Zoho Books übereinstimmt, um die Quelle des Webhooks zu validieren. Dies kann eine zusätzliche Sicherheitsebene hinzufügen, indem Ihr Server in der Lage ist, Drittanbieter-Webhooks, die vorgeben, von Zoho Books zu stammen, zu ignorieren.
Validieren Sie Webhooks
Wenn Ihr Server das Webhook erhält, muss ein Hash-Wert für das Payload auf die gleiche Weise generiert werden, wie es Zoho Books getan hat. Dies ist notwendig, um denselben Hash-Wert zu erzeugen, um das Webhook zu validieren.
Die folgenden Parameter (sofern verfügbar) werden verwendet, um den Hash-Wert zu generieren:
- Abfragezeichenfolgenparameter.
- Standard-Payload oder angepasstes rohes JSON-Payload.
- x-www-form-urlencoded-Payload (Schlüssel-Wert-Paare).
Konstruktion einer Zeichenfolge, indem die Schlüssel-Wert-Paare des Payloads in alphabetischer Reihenfolge sortiert werden. Die Paare müssen in alphabetischer Reihenfolge in Bezug auf ihre Schlüssel sortiert werden.
Hinweis
- Wenn Ihr Webhook Abfragezeichenfolgenparameter enthält, stellen Sie sicher, dass diese Schlüssel-Wert-Paare zusammen mit den Schlüssel-Wert-Paaren des Payloads sortiert sind.
- Es dürfen keine Leerzeichen zwischen den Schlüssel-Wert-Paaren vorhanden sein.
Sobald Sie die Schlüssel-Wert-Paare sortiert und die Zeichenfolge erstellt haben, fügen Sie das rohe JSON am Ende der Zeichenfolge an.
Beispiele
1. Standard-Payload
Schlüssel-Wert-Paare der Abfragezeichenfolgenparameter:
subscription\_id=90343, name=basic
Standard-Payload/rohes JSON:
{"created\_date":"2019-03-06","event\_id":"5675"}
Die erstellte Zeichenfolge wäre:
namebasicsubscription\_id90343{"created\_date":"2019-03-06","event\_id":"5675"}
2. x-www-form-urlencoded
Schlüssel-Wert-Paare der Abfragezeichenfolgenparameter:
customer\_name=Brandon, status=active
Schlüssel-Wert-Paare des x-www-form-urlencoded Payloads:
addon\_description=Monatliches Addon, quantity=1
Die erstellte Zeichenfolge wäre:
addon\_descriptionMonatliches Addoncustomer\_nameBrandonquantity1statusactive
Pro Tipp
- Wenn Ihr Payload im x-www-form-urlencoded Format vorliegt, muss die gesamte Zeichenfolge dekodiert werden, bevor der Hashwert generiert wird.
- Wenn eines der Schlüssel-Wert-Paare Leerzeichen enthält, müssen die Leerzeichen ebenfalls in die erstellte Zeichenfolge aufgenommen werden.
Der Hashwert kann berechnet werden, indem der HMAC-SHA256-Algorithmus auf diese Zeichenfolge angewendet wird, zusammen mit dem geheimen Token, das in Zoho Books verwendet wurde.
Sie können dann den Webhook validieren, indem Sie überprüfen, ob der von Ihrer Seite berechnete Hashwert mit dem im Header (X-Zoho-Webhook-Signature) des Webhooks von Zoho Books übereinstimmt.
Sie können Ihre Webhook-Signatur mit den folgenden Programmiersprachen überprüfen:
JavaScript:
const crypto = require('crypto');
function verifyWebhook(queryParams, bodyParams, signature, secretKey) {
try {
const constructedString = constructString(queryParams, bodyParams);
const hmac = crypto.createHmac('sha256', secretKey);
hmac.update(constructedString);
const calculatedSignature = hmac.digest('base64');
return calculatedSignature === signature;
} catch (error) {
console.error(error);
return false;
}
}
function constructString(queryParams, bodyParams) {
// Schlüssel zusammenführen und sortieren
const allParams = { ...queryParams, ...bodyParams };
const sortedKeys = Object.keys(allParams).sort();
let result = '';
for (const key of sortedKeys) {
result += key + allParams[key];
}
return result;
}Java:
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import java.util.Map;
import java.util.TreeMap;
import java.util.Base64;
public class Hmacverify {
public static boolean verifyWebhook(Map<String, String> queryParams, Map<String, String> bodyParams, String signature, String secretKey) {
try {
String constructedString = constructString(queryParams, bodyParams);
Mac sha256HMAC = Mac.getInstance("HmacSHA256");
SecretKeySpec secretKeySpec = new SecretKeySpec(secretKey.getBytes(), "HmacSHA256");
sha256HMAC.init(secretKeySpec);
byte[] hash = sha256HMAC.doFinal(constructedString.getBytes());
String calculatedSignature = Base64.getEncoder().encodeToString(hash);
return calculatedSignature.equals(signature);
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
private static String constructString(Map<String, String> queryParams, Map<String, String> bodyParams) {
StringBuilder result = new StringBuilder();
TreeMap<String, String> sortedParams = new TreeMap<>(queryParams);
sortedParams.putAll(bodyParams);
for (Map.Entry<String, String> entry : sortedParams.entrySet()) {
result.append(entry.getKey()).append(entry.getValue());
}
return result.toString();
}
}Python:
import hmac
import hashlib
import base64
def verifyWebhook(queryParams, bodyParams, signature, secretKey):
constructedString = constructString(queryParams, bodyParams)
calculatedSignature = base64.b64encode(hmac.new(secretKey.encode(), constructedString.encode(), hashlib.sha256).digest()).decode()
return calculatedSignature == signature
def constructString(queryParams, bodyParams):
# Merge and sort query and body parameters
allParams = {**queryParams, **bodyParams}
sortedParams = sorted(allParams.items())
result = ''.join([key + value for key, value in sortedParams])
return resultBeispielverwendung
queryParams = {‘subscription_id’: ‘90343’, ’name’: ‘basic’} bodyParams = {‘created_date’: ‘2019-03-06’, ’event_id’: ‘5675’} signature = ‘provided-signature’ secretKey = ‘your-secret-key’
verifyWebhook(queryParams, bodyParams, signature, secretKey)
Konfigurieren von SMS-Gateways
Sie können Webhooks einrichten, um Nachrichtenbenachrichtigungen über SMS-Gateways zu senden und zu empfangen. Alles, was Sie tun müssen, ist, die SMS-Gateways mit der URL zu konfigurieren und die unten angegebenen Schritte zu befolgen.
Bulk SMS
Bulk SMS ist ein beliebtes SMS-Gateway und ist mit über 800 Mobilfunkanbietern weltweit kompatibel.
URL: https%username%&password=%password%&msisdn=${CONTACT.CONTACT_MOBILE_PHONE}&message=%message_content%
Um die URL für Bulk SMS zu konfigurieren:
- Klicken Sie auf das Zahnrad-Symbol oben rechts und wählen Sie Automatisierung.
- Navigieren Sie zum Webhooks-Tab und klicken Sie auf + Neuer Webhook.
- Kopieren Sie die obige URL in das URL zur Benachrichtigung-Feld.
- Ersetzen Sie die %username% und %password% Platzhalter in der URL durch den Benutzernamen und das Passwort Ihres Bulk SMS-Kontos.
- Geben Sie Ihre Nachricht am Ende der URL ein, d.h. nach “message=".
- Ersetzen Sie alle Leerzeichen in Ihrem Nachrichteninhalt durch %20 und alle Kommas durch %2C.

Hinweis: Wenn es andere Satzzeichen in Ihrem Nachrichteninhalt gibt, können Sie überprüfen, wie Sie diese mit Modifikatoren von dieser Website ersetzen können. Stellen Sie jedoch sicher, dass Sie keine Satzzeichen ersetzen, die für die Syntax der Nachricht wesentlich sind.
Nachdem Sie Ihre Nachricht mit %20 für Leerzeichen und %2C für Kommas formatiert haben, sollte sie so aussehen:
URL: https
://bulksms.vsms.net/eapi/submission/send_sms/2/2.0?username= Ähnlich können andere SMS-Gateways konfiguriert werden, wobei nur die URL unterschiedlich ist.%username%&password=%password%&msisdn=${CONTACT.CONTACT_MOBILE_PHONE}&message=Hallo%20${CONTACT.CONTACT_NAME}.Vielen%20Dank%20für%20den%20Kauf%20von%20${INVOICE.INVOICE_TOTAL}
SMS-Magic
SMS-Gateways wie SMS-Magic erfordern, dass Sie zusätzliche Entitätsparameter eingeben, um den Webhook zu konfigurieren.
Um SMS-Magic zu konfigurieren:
- Geben Sie die URL https
://sms-magic.in/smapi/post in das Feld URL zur Benachrichtigung ein. - Klicken Sie auf +Entitätsparameter hinzufügen.
- Geben Sie den folgenden Text in das Parameterfeld ein:

<?xml version="1.0"?>
<m:Library xmlns:m="http://screen-magic.com" xmlns="http://www.defns.com">
<userid>**User_ID**</userid>
<senderid>**%Sender_ID**</senderid>
<accountid>**%Account_ID**</accountid>
<hashkey>**%hashkey%**</hashkey>
<message mobilenumber="${CONTACT.CONTACT_MOBILE_PHONE}" >
<![CDATA[${INVOICE.INVOICE_TOTAL}]]>
</message>
</m:Library>
Ersetzen Sie die Platzhalter in der URL durch die Benutzer-ID, Sender-ID und Kontonummer Ihres SMS-Magic-Kontos. Der Hashkey bezieht sich auf einen standardmäßig gehashten md5-Wert eines Strings, der eine Verkettung Ihrer Benutzer-ID, Ihres Passworts, Ihrer Kontonummer und Ihrer Sender-ID ist.
Hinweis: Um den gehashten md5-Wert zu generieren, können Sie diese Seite besuchen.
Text Local
Text Local erfordert einen Entitätsparameter und einen benutzerdefinierten Parameter, um zu funktionieren.
Um Text Local zu konfigurieren:

- Geben Sie die URL http
://api.textlocal.in/send/ in das Feld URL zur Benachrichtigung ein. - Klicken Sie auf + Benutzerdefinierten Parameter hinzufügen.
- Fügen Sie den Parameter sender und apikey hinzu und ersetzen Sie die Platzhalter in der URL durch die entsprechenden Informationen von Text Local.
- Klicken Sie auf + Entitätsparameter hinzufügen.
- Geben Sie einen Namen für den Parameter ein und wählen Sie die erforderlichen Bedingungen aus dem Dropdown-Menü aus. Beispiel: numbers = ${CONTACT.CONTACT_MOBILE_PHONE}
- Wählen Sie das Feld Benutzerdefinierte Parameter hinzufügen aus und geben Sie die zu sendende Nachricht zusammen mit allen erforderlichen Platzhaltern ein.
- Klicken Sie auf Speichern.
Weitere Aktionen in Webhooks
Webhooks löschen
Um einen Webhook zu löschen:
- Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
- Wählen Sie Workflow-Aktionen unter Automatisierung.
- Wählen Sie im Bereich Workflow-Aktionen Webhooks.
- Fahren Sie mit der Maus über den Webhook, den Sie löschen möchten, und klicken Sie auf das Löschen-Symbol.

- Klicken Sie im angezeigten Popup auf Ja.
Der Webhook wird gelöscht. Wenn Sie den Webhook in einer Workflow-Regel verwendet haben, stellen Sie sicher, dass Sie die Workflow-Regel aktualisieren, da die Workflow-Regel möglicherweise nicht ausgelöst wird.
Webhooks filtern
Um die Webhook-Liste zu filtern, befolgen Sie diese Schritte:
- Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
- Wählen Sie Workflow-Aktionen unter Automatisierung.
- Wählen Sie im Bereich Workflow-Aktionen Webhooks.
- Wählen Sie unter Modul ein Modul aus dem Dropdown-Menü aus, für das der Webhook erstellt wurde.
Basierend auf Ihrer Auswahl wird der entsprechende Webhook als Liste angezeigt.

Hinweis
- Sie können nur 1 Webhook für jede Workflow-Regel erstellen.
- Maximal 500 Webhooks können pro Tag ausgelöst werden.
Benutzerdefinierte Funktionen
Benutzerdefinierte Funktionen in Zoho Books ermöglichen es Ihnen, kleine Codeabschnitte zu schreiben, um Ihre Geschäftsprozesse zu automatisieren. Ob es darum geht, Ihren Kunden einen speziellen Rabatt auf die Rechnung zu gewähren oder eine Verspätungsgebühr hinzuzufügen, wenn eine Rechnung überfällig wird, alles was Sie tun müssen, ist, ein Stück Code mit Deluge-Skript zu schreiben und es mit einer Workflow-Regel zu verknüpfen, und die Automatisierung des Prozesses wird übernommen.
Was ist Deluge?
Deluge (Data Enriched Language for the Universal Grid Environment) ist eine Online-Skriptsprache, die in Zoho Creator integriert ist. Sie ermöglicht es Benutzern, der Anwendung schrittweise Logik hinzuzufügen, wodurch sie leistungsfähiger und robuster wird.
Um mehr über Deluge zu erfahren, lesen Sie das Deluge Referenzhandbuch.
Wenn Sie Deluge lernen möchten, indem Sie Codebeispiele schreiben, klicken Sie hier.
Erstellen und Ausführen einer benutzerdefinierten Funktion
Um eine benutzerdefinierte Funktion einzurichten,
- Gehen Sie zu Einstellungen in der oberen rechten Ecke der Seite.
- Wählen Sie Workflow-Aktionen unter Automatisierung.
- Wählen Sie im Bereich Workflow-Aktionen Benutzerdefinierte Funktionen.
- Klicken Sie auf + Neue benutzerdefinierte Funktion in der oberen rechten Ecke.

- Auf der Seite Neue benutzerdefinierte Funktion:
- Geben Sie einen Namen für Ihre benutzerdefinierte Funktion ein und geben Sie eine kurze Beschreibung an.
- Wählen Sie das Modul, für das Sie die benutzerdefinierte Funktion erstellen möchten.
- Wählen Sie die Programmiersprache, in der Sie den Code der benutzerdefinierten Funktion schreiben möchten.
- Wenn Sie Deluge als Programmiersprache gewählt haben, klicken Sie auf Fortfahren und geben Sie die Parameter in den Deluge-Editor ein oder ziehen Sie sie hinein.
- Wenn Sie eine andere Programmiersprache als Deluge gewählt haben, müssen Sie den Code der benutzerdefinierten Funktion mit der Zoho Finance CLI eingeben. Erfahren Sie mehr.

- Sobald Sie fertig sind, klicken Sie auf Speichern.
Der nächste Schritt besteht nun darin, eine Workflow-Regel mit der neu erstellten benutzerdefinierten Funktion zu erstellen.
- Kehren Sie zum Bereich Automatisierung zurück und wählen Sie Workflow-Regeln.
- Erstellen Sie einen neuen Workflow und legen Sie die Auslöser fest.
- Wählen Sie nun unter dem Tab Aktionen Benutzerdefinierte Funktionen und wählen Sie Ihre neu erstellte benutzerdefinierte Funktion aus.
- Klicken Sie auf Speichern.
Jetzt wird jedes Mal, wenn die Kriterien erfüllt sind, die Workflow-Regel ausgelöst, die wiederum die benutzerdefinierte Funktion auslöst.
Standardfelder
Derzeit unterstützen benutzerdefinierte Funktionen die Module Benutzer, Organisation, Angebote, Rechnungen, Verkaufsaufträge, Einkaufsaufträge, Kunden, wiederkehrende Rechnungen, Ausgaben, Rechnungen, wiederkehrende Rechnungen und Artikel.
Diese Module haben die folgenden Felder, aus denen Sie die erforderlichen Parameter für Ihre benutzerdefinierte Funktion abrufen können.
Benutzer
Das Benutzerfeld unterstützt die folgenden Parameter:
| Schlüssel-Felder | Beschreibung |
|---|---|
| name | Name des Benutzers |
| zuid | ZUID des Benutzers |
Organisation
Die Organisationskarte unterstützt die folgenden Felder:
| Schlüssel-Felder | Beschreibung |
|---|---|
| organisation_id | Ihre Organisations-ID |
| name | Organisationsname |
| time_zone | Zeitzone Ihrer Organisation |
| language_code | Sprache der Organisation |
| date_format | Datumsformat Ihrer Organisation |
| currency_id | Währungs-ID |
| currency_code | Währungs-Code |
| currency_symbol | Währungssymbol |
| address | Organisationsadresse |
| phone | Kontaktnummer der Organisation |
| fax | Faxnummer |
| website | URL der Organisation |
| E-Mail-Adresse | |
| portal_name | Portalname Ihrer Organisation |
Beispielkarte:
{
"time_zone": "Asien/Kalkutta",
"language_code": "de",
"currency_id": "7605000000000099",
"phone": "99999999999",
"fax": "überprüfen",
"website": "",
"email": "charles@zylker.com",
"address": {
"zip": "624001",
"country": "Indien",
"city": "Neu-Delhi",
"street_address2": "Block 15",
"street_address1": "6/35 Gartenweg,",
"state": "Delhi"
},
"organisation_id": "12345678",
"name": "Zlyker Industries",
"date_format": "dd MMM yyyy",
"currency_symbol": "Rs.",
"portal_name": "zylkerindustry",
"currency_code": "INR"
}
Angebot
Die Angebotskarte unterstützt die folgenden Felder:
| Schlüssel-Felder | Beschreibung |
|---|---|
| quote_id | Angebots-ID |
| quote_number | Ihre Angebotsnummer |
| date | Angebotsdatum |
| reference_number | Referenznummer Ihres Angebots |
| status | Status Ihres Angebots |
| customer_id | ID des Kunden, dem das Angebot zugewiesen ist |
| customer_name | Name Ihres Kunden |
| currency_id | Währungs-ID |
| currency_code | Währungs-Code |
| currency_symbol | Währungssymbol |
| exchange_rate | Wechselkurs, der im Angebot verwendet wird |
| expiry_date | Ablaufdatum des Angebots |
| discount_amount | Rabattbetrag |
| discount | Rabatt |
| shipping_charge | Versandkosten, die im Angebot eingegeben wurden |
| adjustment | Anpassungen |
| sub_total | Zwischensumme des Angebots |
| total | Gesamtsumme des Angebots |
| tax_total | Gesamter Steuerbetrag im Angebot |
| billing_address | Rechnungsadresse des Kunden |
| shipping_address | Versandadresse des Kunden |
| notes | Notizen |
| terms | Allgemeine Geschäftsbedingungen |
| custom_fields | Benutzerdefinierte Felder des Angebots |
| salesperson_id | ID des Verkäufers |
| salesperson_name | Name des Verkäufers |
Beispielkarte:
{
"total": "12000.0",
"terms": “überprüfen",
"quote_id": "7605000000320001",
"date": "2016-06-03",
"quote_number": "EST-000026",
"shipping_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": “Faxnummer”
},
"salesperson_name": “Verkäufer”,
"adjustment": "0.0",
"currency_symbol": "Rs.",
"salesperson_id": "7605000000336089",
"currency_code": "INR",
"shipping_charge": "0.0",
"custom_fields": [
{
"customfield_id": "7605000000190011",
"is_active": true,
"show_in_all_pdf": false,
"value_formatted": "Check-6",
"data_type": "autonumber",
"index": 1,
"label": "Auto-Nummer",
"show_on_pdf": false,
"value": "Check-6"
}
],
"currency_id": "7605000000000099",
"exchange_rate": "1.0",
"status": "invoiced",
"sub_total": "12000.0",
"customer_name": “Kunde”,
"discount_amount": "0.0",
"discount": "0.0",
"tax_total": "0.0",
"reference_number": “Ref-Nummer”,
"notes": "Wir freuen uns auf Ihr Geschäft.",
"expiry_date": "2016-06-03",
"customer_id": "7605000000258011",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Faxnummer"
}
}
fälligkeitsdatum | Fälligkeitsdatum der Rechnung erwartetes_zahlungsdatum | Erwartetes Zahlungsdatum für die Rechnung referenznummer | Referenznummer der Rechnung kundennummer | Kunden-ID kundennamen | Name des Kunden, der der Rechnung zugewiesen ist währungs_id | Währungs-ID währungs_code | Währungs-Code währungs_symbol | Währungssymbol wechselkurs | Wechselkurs, der in der Rechnung verwendet wird rabattbetrag | Rabattbetrag, der in der Rechnung enthalten ist rabatt | Rabatt, der in der Rechnung enthalten ist versandkosten | Versandkosten, die in der Rechnung eingegeben wurden anpassung | Anpassungen zwischen_total | Zwischensumme der Rechnung steuer_total| Gesamtsteuerbetrag in der Rechnung gesamt | Gesamtbetrag saldo | Saldo preis_genauigkeit | Anzahl der Dezimalstellen rechnungsadresse | Rechnungsadresse des Kunden versandadresse | Versandadresse des Kunden notizen | Notizen bedingungen | Allgemeine Geschäftsbedingungen benutzerdefinierte_felder | Benutzerdefinierte Felder der Rechnung verkäufer_id | ID des Verkäufers
Beispielkarte:
{
"gesamt": "0.0",
"zahlungsbedingungen": "0",
"bedingungen": “Überprüfung”,
"preis_genauigkeit": "2",
"erwartetes_zahlungsdatum": "2016-06-31”,
"datum": "2016-06-30",
"versandadresse": {
"plz": "94588",
"land": "USA",
"adresse": "4910 Hopyard Rd",
"stadt": "Pleasanton",
"bundesland": "CA",
"fax": "Faxnummer"
},
"saldo": "0.0",
"anpassung": "0.0",
"währungs_symbol": "Rs.",
"verkäufer_id": “<telefonnummer_1>”,
"währungs_code": "INR",
"versandkosten": "0.0",
"benutzerdefinierte_felder": [
{
"benutzerdefiniertes_feld_id": "<telefonnummer_2>",
"ist_aktiv": true,
"zeige_in_alle_pdf": false,
"wert_formatiert": "INV-8",
"daten_typ": "autonummer",
"index": 1,
"bezeichnung": "AutoNummer",
"zeige_auf_pdf": false,
"wert": "INV-8"
},
{
"benutzerdefiniertes_feld_id": "<debitkarten_nummer_1>",
"ist_aktiv": true,
"zeige_in_alle_pdf": true,
"wert_formatiert": "01 Aug 2016",
"daten_typ": "datum",
"index": 2,
"bezeichnung": "Datum",
"zeige_auf_pdf": true,
"wert": "2016-08-01"
}
],
"währungs_id": "<telefonnummer_4>",
"wechselkurs": "1.0",
"status": "Entwurf",
"zwischen_total": "12000.0",
"kundennamen": “Kunde”,
"rechnungsnummer": "INV-<telefonnummer_5>",
"rabattbetrag": "12000.0",
"rabatt": "100.00%",
"steuer_total": "0.0",
"referenznummer": “Überprüfung”,
"fälligkeitsdatum": "2016-06-30",
"rechnungs_id": "<telefonnummer_6>",
"notizen": "Danke für Ihr Geschäft.",
"kundennummer": "<telefonnummer_7>",
"rechnungsadresse": {
"plz": "94588",
"land": "USA",
"adresse": "4910 Hopyard Rd",
"stadt": "Pleasanton",
"bundesland": "CA",
"fax": "Faxnummer"
}
}
Verkaufsauftrag
| Schlüssel Felder | Beschreibung |
|---|---|
| datum | Verkaufsdatum des Auftrags |
| steuer_total | Gesamtsteuerbetrag im Verkaufsauftrag |
| zcrm_potential_id | ID des Potenzials in Zoho CRM |
| rabattbetrag | Rabattbetrag, der im Verkaufsauftrag enthalten ist |
| verkaufsauftrag_id | Verkaufsauftrag-ID |
| rabatt | Rabatt |
| versanddatum | Datum, an dem die Lieferung erfolgt |
| rechnungsadresse | Rechnungsadresse des Kunden |
| positionsartikel | Positionsartikel |
| währungs_code | Währungs-Code |
| gesamt | Gesamtbetrag |
| liefermethode_id | ID der Liefermethode |
| bedingungen | Allgemeine Geschäftsbedingungen |
| liefermethode | Methode der Lieferung |
| versandadresse | Versandadresse des Kunden |
| wechselkurs | Wechselkurs, der im Verkaufsauftrag verwendet wird |
| währungs_symbol | Währungssymbol |
| benutzerdefinierte_felder | Benutzerdefinierte Felder des Verkaufsauftrags |
| angebot_id | Angebots-ID |
| referenznummer | Referenznummer des Verkaufsauftrags |
| verkäufer_name | Name des Verkäufers, der beteiligt ist |
| salesperson_id | ID des beteiligten Verkäufers |
| shipping_charge | Versandkosten, die in der Verkaufsbestellung eingegeben wurden |
| salesorder_number | Ihre Verkaufsbestellnummer |
| sub_total | Zwischensumme der Verkaufsbestellung |
| zcrm_potential_name | Name des Potenzials in Zoho CRM |
| adjustment | Anpassungen vorgenommen |
| customer_name | Name des Kunden, der der Verkaufsbestellung zugewiesen ist |
| customer_id | ID des Kunden, der der Verkaufsbestellung zugewiesen ist |
| currency_id | Währungs-ID |
| status | Status Ihrer Verkaufsbestellung |
Beispielkarte:
{
"date": "2016-05-23",
"tax_total": "0.0",
"zcrm_potential_id": "",
"discount_amount": "1200.0",
"salesorder_id": "7605000000295003",
"discount": "10.00%",
"shipment_date": "2016-05-23",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Faxnummer"
},
"line_items": [
{
"bcy_rate": 12000,
"line_item_id": "7605000000295011",
"quantity": 1,
"item_id": "7605000000259147",
"tax_name": "",
"description": "",
"discount": 0,
"item_total": 12000,
"item_custom_fields": [
],
"tax_id": "",
"is_invoiced": true,
"item_order": 0,
"tags": [
],
"stock_on_hand": "",
"unit": "",
"rate": 12000,
"tax_type": "Steuer",
"name": "Moto",
"tax_percentage": 0
}
],
"currency_code": "INR",
"total": "10820.0",
"delivery_method_id": "7605000000461053",
"terms": "Allgemeine Geschäftsbedingungen",
"delivery_method": "Türlieferung",
"shipping_address": {
"zip": "",
"country": "",
"address": "",
"city": "",
"state": "",
"fax": ""
},
"exchange_rate": "1.0",
"currency_symbol": "Rs.",
"custom_fields": [
{
"customfield_id": "7605000000321009",
"is_active": true,
"show_in_all_pdf": true,
"value_formatted": "Text",
"data_type": "string",
"index": 1,
"label": "Text",
"show_on_pdf": true,
"value": "Text"
}
],
"quote_id": "7605000000405047",
"reference_number": "Referenz",
"salesperson_name": "Arun",
"salesperson_id": "7605000000135003",
"shipping_charge": "10.0",
"salesorder_number": "SO-00002",
"sub_total": "12000.0",
"zcrm_potential_name": "",
"adjustment": "10.0",
"customer_name": "Arun",
"customer_id": "7605000000101007",
"currency_id": "7605000000000099",
"status": "invoiced"
}
Bestellung
Die Bestellkarte unterstützt die folgenden Felder:
| Schlüssel Felder | Beschreibung |
|---|---|
| date | Datum der Bestellung |
| delivery_address | Lieferadresse |
| tax_total | Gesamtsteuerbetrag in der Bestellung |
| delivery_org_address_id | ID der Lieferorganisationadresse |
| purchaseorder_id | Bestell-ID |
| expected_delivery_date | Erwartetes Lieferdatum |
| billing_address | Rechnungsadresse der Bestellung |
| line_items | Positionen in der Bestellung |
| currency_code | Währungscode |
| total | Gesamtbetrag der Bestellung |
| delivery_customer_id | Lieferkunden-ID |
| exchange_rate | Wechselkurs, der in der Bestellung verwendet wird |
| currency_symbol | Währungssymbol |
| custom_fields | Benutzerdefinierte Felder der Bestellung |
| ship_via_id | ID der Versandart |
| vendor_name | Name des Anbieters |
| reference_number | Referenznummer Ihrer Bestellung |
| purchaseorder_number | Bestellnummer |
| delivery_date | Lieferdatum |
| vendor_id | Anbieter-ID |
| sub_total | Zwischensumme der Bestellung |
| ship_via | Versandart |
| attention | Aufmerksamkeit |
| crm_owner_id | ID des Zoho CRM-Besitzers |
| currency_id | Währungs-ID |
| status | Status |
Beispielkarte:
{
"date": "2016-07-11",
"delivery_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Nummer"
},
"tax_total": "0.0",
"delivery_org_address_id": "7605000000054013",
"purchaseorder_id": "7605000000378500",
"expected_delivery_date": "",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Nummer"
},
"line_items": [
{
"bcy_rate": 1000,
"line_item_id": "7605000000378504",
"quantity": 1,
"item_id": "7605000000298021",
"tax_name": "",
"description": "",
"item_total": 1000,
"tax_id": "",
"item_order": 0,
"tags": [
],
"unit": "Nein",
"account_id": "7605000000000403",
"rate": 1000,
"tax_type": "Steuer",
"account_name": "Werbung und Marketing",
"name": "Moto G Turbo Edition",
"tax_percentage": 0
}
],
"currency_code": "INR",
"total": "1000.0",
"delivery_customer_id": "",
"exchange_rate": "1.0",
"currency_symbol": "Rs.",
"custom_fields": "[]",
"ship_via_id": "7605000000461053",
"vendor_name": "Herr Anbieter",
"reference_number": "Referenz",
"purchaseorder_number": "PO-00006",
"delivery_date": "2016-07-11",
"vendor_id": "7605000000112009",
"sub_total": "1000.0",
"ship_via": "Türlieferung",
"attention": "Arun",
"crm_owner_id": "",
"currency_id": "7605000000000099",
"status": "in Rechnung gestellt"
}
Kunde
Die Kundenkarte unterstützt die folgenden Felder:
| Schlüssel Felder | Beschreibung |
|---|---|
| owner_id | ID des zugehörigen Eigentümers |
| billing_address | Rechnungsadresse, die mit dem Kunden verbunden ist |
| source | Quelle des Kunden |
| contact_id | Kontakt-ID |
| payment_terms | Zahlungsbedingungen, die mit dem Kunden verbunden sind |
| currency_code | Währungs-Code |
| language_code | Sprachcode |
| contact_type | Art des Kontakts |
| Twitter-Informationen | |
| zcrm_contact_id | ID des Kontakts in Zoho CRM |
| shipping_address | Lieferadresse, die mit dem Kunden verbunden ist |
| pricebook_id | ID des Preisbuchs, das zugeordnet ist |
| contact_name | Name des Kontakts |
| website | Website des Kontakts |
| owner_name | Name des Kontaktsinhabers |
| currency_symbol | Währungssymbol |
| zcrm_account_id | ID des Zoho CRM-Kontos |
| custom_fields | Benutzerdefinierte Felder, die mit dem Kunden verbunden sind |
| Facebook-Informationen | |
| pricebook_name | Name des zugeordneten Preisbuchs |
| primary_contact_id | ID des primären Kontakts |
| company_name | Name des Unternehmens |
| contact_salutation | Anrede des Kontakts |
| crm_owner_id | ID des CRM-Eigentümers |
| currency_id | Währungs-ID |
| payment_terms_label | Bezeichnung der Zahlungsbedingungen |
| status | Status |
Beispielkarte:
{
"owner_id": "",
"shipping_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Nummer"
},
"source": "Benutzer",
"contact_id": "7605000000197147",
"payment_terms": "0",
"currency_code": "INR",
"language_code": "de",
"contact_type": "Kunde",
"twitter": "",
"zcrm_contact_id": "",
"billing_address": {
"zip": "94588",
"country": "USA",
"address": "4910 Hopyard Rd",
"city": "Pleasanton",
"state": "CA",
"fax": "Fax Nummer"
},
"pricebook_id": "",
"contact_name": "Arun",
"website": "www.zoho.com",
"owner_name": "",
"currency_symbol": "Rs.",
"zcrm_account_id": "418070000000135001",
"custom_fields": [
{
"customfield_id": "7605000000063049",
"is_active": true,
"show_in_all_pdf": false,
"value_formatted": "1234",
"data_type": "number",
"index": 1,
"label": "Unbezahlte Rechnungen",
"show_on_pdf": false,
"value": "1234"
}
],
"facebook": "",
"pricebook_name": "",
"primary_contact_id": "7605000000197149",
"company_name": "Zoho",
"contact_salutation": "",
"crm_owner_id": "",
"currency_id": "7605000000000099",
"payment_terms_label": "Fällig bei Erhalt",
"status": "aktiv"
}
Wiederkehrende Rechnung
Die wiederkehrende Rechnungsmap unterstützt die folgenden Felder:
| Schlüssel Felder | Beschreibung |
|---|---|
| end_date | Enddatum des Profils für wiederkehrende Rechnungen |
| tax_total | Gesamter Steuerbetrag in der wiederkehrenden Rechnung |
| discount_amount | Rabattbetrag, der in der wiederkehrenden Rechnung enthalten ist |
| repeat_every | Wiederholungszeitraum des Profils für wiederkehrende Rechnungen |
| discount | Rabatt, der in der wiederkehrenden Rechnung enthalten ist |
| taxes | Steuern, die mit der wiederkehrenden Rechnung verbunden sind |
| billing_address | Rechnungsadresse des Kunden |
| line_items | Positionen in der wiederkehrenden Rechnung |
| payment_terms | Zahlungsbedingungen, die mit dem Kunden verbunden sind |
| currency_code | Währungs-Code |
| last_sent_date | Datum der zuletzt gesendeten Rechnung |
| total | Gesamtbetrag |
| recurrence_name | Name des Profils für wiederkehrende Rechnungen |
| shipping_address | Lieferadresse des Kunden |
| next_invoice_date | Datum der nächsten zu sendenden Rechnung |
| recurrence_frequency | Häufigkeit des Profils für wiederkehrende Rechnungen |
| recurring_invoice_id | ID des Profils für wiederkehrende Rechnungen |
| contact_persons | Kontaktpersonen, die an der wiederkehrenden Rechnung beteiligt sind |
| start_date | Startdatum des Profils für wiederkehrende Rechnungen |
| exchange_rate | Wechselkurs, der in der wiederkehrenden Rechnung enthalten ist |
| currency_symbol | Währungssymbol |
| custom_fields | Benutzerdefinierte Felder für wiederkehrende Rechnungen |
| salesperson_name | Name des beteiligten Verkäufers |
| salesperson_id | ID des beteiligten Verkäufers |
| shipping_charge | Versandkosten, die in der wiederkehrenden Rechnung eingegeben wurden |
| sub_total | Zwischensumme der wiederkehrenden Rechnung |
| adjustment | Vornahmen von Anpassungen |
| customer_name | Name des beteiligten Kunden |
| customer_id | ID des beteiligten Kunden |
| status | Status des Profils für wiederkehrende Rechnungen |
Beispielmap:
{
"end_date": "2016-10-15",
"tax_total": "0.0",
"discount_amount": "1.0",
"repeat_every": "2",
"discount": "1.00%",
"taxes": "[]",
"billing_address": {"zip":"","fax":"","address":"","state":"","country":"","city":""},
"line_items": [{"tags":[],"tax_name":"","tax_type":"tax","item_custom_fields":[],"product_type":"service","line_item_id":"348960000000103013","discount":0,"unit":"","item_order":0,"rate":100,"item_id":"","description":"%(d)%-%(m-2)%-%(y)%","name":"","quantity":1,"tax_id":"","tax_percentage":0,"item_total":100}],
"payment_terms": "0",
"currency_code": "GBP",
"last_sent_date": "",
"total": "200.0",
"recurrence_name": "1",
"shipping_address": {"zip":"","fax":"","address":"","state":"","country":"","city":""},
"next_invoice_date": "",
"recurrence_frequency": "months",
"recurring_invoice_id": "348960000000103005",
"contact_persons": "[]",
"start_date": "2016-01-07",
"exchange_rate": "1.0",
"currency_symbol": "£",
"custom_fields": [{"value_formatted":"EST-001","index":1,"is_active":true,"data_type":"string","show_on_pdf":false,"value":"EST-001","show_in_all_pdf":false,"label":"Angebotsnummer","customfield_id":"348960000000056001"},{"value_formatted":"15. Okt 2016","index":2,"is_active":true,"data_type":"date","show_on_pdf":false,"value":"2016-10-15","show_in_all_pdf":false,"label":"Datum","customfield_id":"348960000000056003"},{"value_formatted":"true","index":3,"is_active":true,"data_type":"check_box","show_on_pdf":false,"value":true,"show_in_all_pdf":false,"label":"Rechnungsfaktorisierung","customfield_id":"348960000000056079"},{"value_formatted":"£100.00","index":4,"is_active":true,"data_type":"amount","show_on_pdf":true,"value":100,"show_in_all_pdf":true,"label":"Betrag","customfield_id":"348960000000060003"},{"value_formatted":"10%","index":5,"is_active":true,"data_type":"percent","show_on_pdf":true,"value":10,"show_in_all_pdf":true,"label":"Prozentsatz","customfield_id":"348960000000060005"}],
"salesperson_name": "Arun N",
"salesperson_id": "348960000000111001",
"shipping_charge": "100.0",
"sub_total": "100.0",
"adjustment": "1.0",
"customer_name": "iArun",
"customer_id": "348960000000051041",
"status": "abgelaufen"
}
Ausgabe
Die Ausgabenkarte unterstützt die folgenden Felder:
| Schlüssel Felder | Beschreibung |
|---|---|
| datum | Datum |
| zahlungsmodus | Zahlungsmodus |
| benutzerdefinierte_felder | Benutzerdefinierte Felder für Ausgaben |
| anbieter_name | Name des beteiligten Anbieters |
| ist_abrechenbar | Abrechenbarkeit der Ausgabe |
| positionsartikel | Positionsartikel in der Ausgabe |
| projekt_name | Name des beteiligten Projekts |
| referenznummer | Referenznummer der Ausgabe |
| währungs_code | Währungs-Code |
| gesamt | Gesamt |
| projekt_id | ID des beteiligten Projekts |
| anbieter_id | ID des beteiligten Anbieters |
| zwischen_total | Zwischensumme der Ausgabe |
| kunde_name | Name des beteiligten Kunden |
| kunde_id | ID des beteiligten Kunden |
| ausgaben_id | Ausgaben-ID |
| währungs_id | Währungs-ID |
Beispielkarte:
{
"datum": "2016-10-08",
"zahlungsmodus": "Bargeld",
"benutzerdefinierte_felder": "[]",
"anbieter_name": "Anbieter",
"ist_abrechenbar": "true",
"positionsartikel": [{"tags":[],"steuer_name":"Standardrate","artikel_reihenfolge":1,"steuer_typ":"steuer","konto_id":"348960000000000400","beschreibung":"Notizen","steuer_betrag":16.67,"produkt_typ":"waren","steuer_id":"348960000000044037","positionsartikel_id":"348960000000184015","steuer_prozentsatz":20,"artikel_gesamt":83.33,"konto_name":"Büromaterial"}],
"projekt_name": "",
"referenznummer": "12345",
"währungs_code": "GBP",
"gesamt": "100.0",
"projekt_id": "",
"anbieter_id": "348960000000051033",
"zwischen_total": "83.33",
"kunde_name": "Buchhaltung",
"kunde_id": "348960000000111017",
"ausgaben_id": "348960000000184003",
"währungs_id": "348960000000000103"
}
Rechnung
Die Rechnungsmappe unterstützt die folgenden Felder:
| Schlüssel Felder | Beschreibung |
|---|---|
| datum | Datum auf der Rechnung |
| rechnung_id | ID der Rechnung |
| bestell_ids | ID der beteiligten Bestellung |
| steuer_gesamt | Gesamtsteuerbetrag auf der Rechnung |
| wechselkurs | Wechselkurs, der in der Rechnung verwendet wird |
| währungs_symbol | Währungssymbol |
| benutzerdefinierte_felder | Benutzerdefinierte Felder für Rechnungen |
| fälligkeitsdatum | Fälligkeitsdatum der Rechnung |
| anbieter_name | Name des beteiligten Anbieters |
| abrechnungsadresse | Abrechnungsadresse |
| positionsartikel | Positionsartikel in der Rechnung |
| zahlungsbedingungen | Zahlungsbedingungen, die mit dem Anbieter verbunden sind |
| erwartetes_zahlungsdatum | Erwartetes Zahlungsdatum |
| referenznummer | Referenznummer der Rechnung |
| währungs_code | Währungs-Code |
| gesamt | Gesamt auf der Rechnung |
| rechnungsnummer | Rechnungsnummer |
| zahlung_durchgeführt | Zahlung für die Rechnung geleistet |
| saldo | Saldo |
| wiederkehrende_rechnung_id | ID des wiederkehrenden Rechnungsprofils |
| anbieter_id | ID des beteiligten Anbieters |
| zwischenbetrag | Zwischenbetrag auf der Rechnung |
| status | Rechnungsstatus |
Beispielkarte:
{
"datum": "2016-10-12",
"rechnungs_id": "348960000000193039",
"bestell_ids": "[]",
"steuer_gesamt": "0.0",
"wechselkurs": "1.0",
"währungs_symbol": "£",
"benutzerdefinierte_felder": "[]",
"fälligkeitsdatum": "2016-10-15",
"anbieter_name": "Anbieter",
"rechnungsadresse": {"plz":"","fax":"","adresse":"","bundesland":"","land":"","stadt":""},
"positions": [{"tags":[],"steuer_name":"","projekt_name":"","steuer_typ":"steuer","konto_id":"348960000000000412","kunde_name":"","ist_rechnungsfähig":false,"produkt_typ":"waren","positions_id":"348960000000193047","rechnungsnummer":"","sku":"","bestell_positions_id":"","konto_name":"Kreditkarten Gebühren","einheit":"1","positions_reihenfolge":0,"satz":33000,"bcy_satz":33000,"positions_id":"348960000000087031","beschreibung":"","projekt_id":"","name":"Kühlschrank","steuer_id":"","menge":1,"rechnungs_id":"","steuer_prozentsatz":0,"kunde_id":"","positions_gesamt":33000}],
"zahlungsbedingungen": "3",
"erwartetes_zahlungsdatum": "",
"referenznummer": "1",
"währungs_code": "GBP",
"gesamt": "33000.0",
"rechnungsnummer": "Rechnung-001",
"zahlung_durchgeführt": "0.0",
"saldo": "33000.0",
"wiederkehrende_rechnung_id": "",
"anbieter_id": "348960000000051033",
"zwischenbetrag": "33000.0",
"status": "offen"
}
Wiederkehrende Rechnung
Die Karte für wiederkehrende Rechnungen unterstützt die folgenden Felder:
| Schlüssel Felder | Beschreibung |
|---|---|
| enddatum | Enddatum des wiederkehrenden Rechnungsprofils |
| steuer_gesamt | Gesamtsteuerbetrag in der wiederkehrenden Rechnung |
| wechselkurs | Wechselkurs, der in der wiederkehrenden Rechnung verwendet wird |
| benutzerdefinierte_felder | Benutzerdefinierte Felder der wiederkehrenden Rechnung |
| wiederholen_jeden | Wiederholungszeitraum des wiederkehrenden Rechnungsprofils |
| steuern | Steuern, die in der wiederkehrenden Rechnung enthalten sind |
| anbieter_name | Name des beteiligten Anbieters |
| positions | Positionen in der wiederkehrenden Rechnung |
| zahlungsbedingungen | Zahlungsbedingungen, die mit dem Anbieter verbunden sind |
| währungs_code | Währungs-Code |
| letztes_gesendetes_datum | Datum der zuletzt gesendeten Rechnung |
| gesamt | Gesamt der wiederkehrenden Rechnung |
| nächster_rechnungstermin | Datum der nächsten Rechnung |
| wiederkehrende_rechnung_id | ID der wiederkehrenden Rechnung |
| wiederholungs_name | Name des wiederkehrenden Rechnungsprofils |
| anbieter_id | ID des beteiligten Anbieters |
| zwischenbetrag | Zwischenbetrag auf der wiederkehrenden Rechnung |
| wiederholungs_häufigkeit | Häufigkeit des wiederkehrenden Rechnungsprofils |
| zahlungsbedingungen_label | Zahlungsbedingungen-Label |
| status | Status des wiederkehrenden Rechnungsprofils |
| startdatum | Startdatum des wiederkehrenden Rechnungsprofils |
Beispielkarte:
{
"enddatum": "2016-10-15",
"steuer_gesamt": "0.0",
"wechselkurs": "1.0",
"benutzerdefinierte_felder": "[]",
"wiederholen_jeden": "1",
"steuern": "[]",
"anbieter_name": "Anbieter",
"positions": [{"tags":[],"steuer_name":"","konto_id":"348960000000000403","steuer_typ":"steuer","produkt_typ":"waren","positions_id":"348960000000193067","konto_name":"Werbung und Marketing","einheit":"","positions_reihenfolge":0,"satz":900,"bcy_satz":900,"positions_id":"348960000000051011","beschreibung":"","name":"Artikel","menge":1,"steuer_id":"","steuer_prozentsatz":0,"positions_gesamt":900}],
"zahlungsbedingungen": "0",
"währungs_code": "GBP",
"letztes_gesendetes_datum": "2016-10-12",
"gesamt": "900.0",
"nächster_rechnungstermin": "",
"wiederkehrende_rechnung_id": "348960000000193061",
"wiederholungs_name": "RB-001",
"anbieter_id": "348960000000051033",
"zwischenbetrag": "900.0",
"wiederholungs_häufigkeit": "Wochen",
"zahlungsbedingungen_label": "Fällig bei Erhalt",
"status": "abgelaufen",
"start_date": "2016-10-12"
}
Artikel
Die Artikelkarte unterstützt die folgenden Felder:
| Schlüssel-Felder | Beschreibung |
|---|---|
| item_id | Artikel-ID |
| custom_fields | Benutzerdefinierte Felder des Artikels |
| item_type | Art des Artikels |
| tax_name | Name der beteiligten Steuer |
| purchase_rate | Einkaufspreis des Artikels |
| zcrm_product_id | ID des Produkts in Zoho CRM |
| tax_id | ID der beteiligten Steuer |
| unit | Einheit des Artikels |
| account_id | Verkaufs-Konto-ID |
| purchase_account_name | Name des Einkaufskontos |
| purchase_account_id | Einkaufskonto-ID |
| tax_type | Art der beteiligten Steuer |
| rate | Verkaufsrate des Artikels |
| account_name | Name des beteiligten Verkaufs-Kontos |
| name | Name des Artikels |
| tax_percentage | Prozentsatz der beteiligten Steuer |
| pricebook_rate | Preisbuchrate |
| sku | SKU des Artikels |
| status | Status des Artikels |
Beispielkarte:
{
"item_id": "348960000000051011",
"custom_fields": [{"value_formatted":"100","index":1,"is_active":true,"data_type":"decimal","show_on_pdf":true,"value":100,"show_in_all_pdf":true,"label":"Profit","customfield_id":"348960000000134003"}],
"item_type": "sales_and_purchases",
"tax_name": "",
"purchase_rate": "900.0",
"zcrm_product_id": "1665395000000205001",
"tax_id": "",
"unit": "1",
"account_id": "348960000000000388",
"purchase_account_name": "Werbung und Marketing",
"purchase_account_id": "348960000000000403",
"tax_type": "",
"rate": "1000.0",
"account_name": "Verkauf",
"name": "Artikel",
"tax_percentage": "0",
"pricebook_rate": "1000.0",
"sku": "SKU",
"status": "aktiv"
}
Einige Beispiele, die erklären, wie diese Felder helfen würden, die notwendigen Parameter abzurufen:
Beispiel 1:
Um die Angebots-ID abzurufen, verwenden Sie:
quoteid = quote.get("quote_id");
Beispiel 2:
Um den Namen Ihrer Organisation abzurufen, verwenden Sie:
orgid = organisation.get("name");
Beispiel 3:
Um den Namen und ZUID eines Benutzers abzurufen, verwenden Sie:
username = user.get("name");
zuid = user.get("zuid");
Um mehr darüber zu erfahren, wie Sie Deluge-Skripte zum Schreiben benutzerdefinierter Funktionen verwenden können, lesen Sie das Deluge Reference Guide.
Um mehr über verschiedene Szenarien zu erfahren, in denen benutzerdefinierte Funktionen nützlich sein könnten, besuchen Sie unsere Custom Function Scenarios-Seite.
Zeitpläne
Zoho Books ermöglicht es Ihnen, vordefinierte Aufgaben zu erstellen und zu bestimmten Zeitintervallen mithilfe von Zeitplänen auszuführen. Sie können Ihre Aufgaben mit einem Deluge-Skript erstellen und diese Aufgabe zu einem bestimmten Zeitpunkt oder regelmäßig ausführen lassen.
Hinweis: Diese Funktion ist nur für bestimmte Pläne von Zoho Books verfügbar. Besuchen Sie die Preisseite, um zu überprüfen, ob sie in Ihrem aktuellen Plan verfügbar ist.
Szenarien
Hier sind einige Szenarien, in denen Zeitpläne erstellt werden können, um benutzerdefinierte Aktionen auszuführen. Sie können jedoch benutzerdefinierte Zeitpläne basierend auf den Anforderungen Ihres Unternehmens erstellen.
Szenario 1: Peter betreibt einen Supermarkt. Am Ende jedes Monats möchte er Kunden, deren Gesamteinkauf im Monat einen bestimmten Betrag von 1000 übersteigt, einen Rabatt von 10% auf den nächsten Einkauf gewähren. Peter erstellt einen Zeitplan, um dies am letzten Tag des Monats an ausgewählte Kunden zu versenden.
Szenario 2: Peter verwendet eine Drittanbieteranwendung zur internen Verwaltung der Kunden- und Mitarbeiterdatenbank. Er möchte alle Daten von Zoho Books regelmäßig mit der anderen Anwendung synchronisieren. Dazu erstellt er einen benutzerdefinierten Zeitplan, um die Daten jeden Tag um 18 Uhr zu synchronisieren.
Szenario 3: Peter setzt ein vierteljährliches Verkaufsziel für seine territorialen Manager. Alle vier Monate muss er ihnen ihre Gewinn- und Verlustberichte sowie eine Glückwunsch-E-Mail senden, wenn sie ihr Ziel erreicht haben, oder eine motivierende E-Mail, damit sie besser abschneiden. Er schreibt eine Funktion und plant sie, um sie einmal alle 4 Monate an sein Personal zu senden.
Neue Zeitpläne erstellen
Um einen benutzerdefinierten Zeitplan zu erstellen:
- Gehe zu Einstellungen in der oberen rechten Ecke der Seite.
- Wähle Workflow-Aktionen unter Automatisierung.
- Wähle im Bereich Workflow-Aktionen Zeitpläne.
- Klicke auf + Neuer Zeitplan in der oberen rechten Ecke.

- Auf der Seite Neuer Zeitplan:
- Gib einen Namen für deinen Zeitplan ein.
- Setze die Häufigkeit und das Wiederholungsmuster für die Ausführung des Zeitplans. Dies kann täglich, wöchentlich, monatlich oder jährlich sein.
Einblick: Das Wiederholungsmuster lässt dich entscheiden, wann der benutzerdefinierte Zeitplan ausgeführt werden soll. Du kannst wählen, ihn in der festgelegten Häufigkeit auszuführen.
- Wähle, wie häufig die Aufgabe ausgeführt werden soll.
- Täglich: Die Aufgabe wird jeden Tag (oder basierend auf deinem Wiederholungsmuster) ausgeführt. Du kannst wählen, die Wochenenden auszuschließen.

- Wöchentlich: Die Aufgabe wird einmal pro Woche ausgeführt. Wähle den Wochentag, an dem die Aufgabe ausgeführt werden soll.

- Monatlich: Die Aufgabe wird einmal im Monat ausgeführt. Dies kann ein bestimmtes Datum oder ein Tag im Monat sein. Zum Beispiel kannst du wählen, sie am 5. jeden Monats oder am zweiten Samstag jeden Monats auszuführen.

- Jährlich: Die Aufgabe wird einmal im Jahr ausgeführt. Du kannst den Monat auswählen und das Ausführungsdatum oder den Tag angeben. Zum Beispiel kann die Aufgabe am ersten Sonntag im Januar oder einfach am 5. Januar ausgeführt werden.

- Setze das Startdatum und die Uhrzeit.
Warnung: Das Startdatum eines Zeitplans darf nicht mehr als ein Jahr vom Erstellungsdatum entfernt sein.
- Wähle, wann der Zeitplan ablaufen soll. Er kann nach einer bestimmten Anzahl von Ausführungen oder an einem festgelegten Datum ablaufen oder gar nicht ablaufen.

- Ziehen Sie Optionen per Drag & Drop, um eine Deluge-Funktion zu erstellen, die Ihnen hilft, Ihre Funktion zu erstellen.
Einblick: Deluge (Data Enriched Language for the Universal Grid Environment) ist eine online integrierte Skriptsprache mit Zoho-Diensten. Sie ermöglicht es Ihnen, Ihre eigenen Funktionen zu schreiben, mit denen Sie die Anwendung schrittweise an Ihre Bedürfnisse anpassen und sie leistungsfähiger und robuster machen können.
- Klicken Sie auf Speichern oder Speichern und Ausführen, um es auszuführen.

Einblick: Sie können maximal 10 benutzerdefinierte Zeitpläne erstellen.
Beispiel-Funktion
Hier ist eine Beispiel-Funktion für Szenario 1:
organisationID = organisation.get("organisation_id");
name = organisation.get("name");
orgEmail = organisation.get("email");
salesResponse = invokeUrl
[
url: "https://books.zoho.com/api/v3/reports/salesbycustomer?organisation_id=" + organisationID + "&from_date=" + toStartOfMonth(today).toString("YYYY-MM-dd") + "&to_date=" + eomonth(today,0).toString("YYYY-MM-dd")
type: GET
connection: "books_api_connection"
];
salesDetails = salesResponse.get("sales").toList();
for each sales in salesDetails
{
amount = sales.get("sales_with_tax");
if(amount > "<ENTER AMOUNT>")
{
customerName = sales.get("customer_name");
customerResponse = invokeUrl
[
url: "https://books.zoho.com/api/v3/contacts/" + sales.get("customer_id") + "?organisation_id=" + organisationID
type: GET
connection: "books_api_connection"
];
customerDetails = customerResponse.get("contact");
customerEmail = customerDetails.get("email");
sendmail
[
from :zoho.adminuserid
to :customerEmail
subject :"Vielen Dank für Ihren Einkauf! Hier ist ein 10% Rabatt!"
message :"<div>Lieber " + customerName + ",<br></div><div><br></div><div>Wir wollten uns nur einen Moment Zeit nehmen, um Ihnen für Ihre kontinuierliche Unterstützung zu danken.<br></div><div><br></div><div> Basierend auf Ihren letzten Einkäufen möchten wir Ihnen einen Rabatt von 10% auf Ihren nächsten Einkauf bei uns anbieten. <br></div><div><br></div><div>Bitte zeigen Sie diese E-Mail während der Abrechnung vor, um diesen Rabatt zu erhalten!<br></div><div><br></div><div>Mit freundlichen Grüßen,<br></div><div>" + name + "<br></div><div><br></div><div><br></div><div><br></div><div><br></div>"
]
}
}
Workflow-Szenarien
Workflows helfen Ihnen, Aufgaben in Zoho Books zu automatisieren. Erfahren Sie mehr, um einige gängige Szenarien im Detail zu erkunden.
Erfahren Sie mehr im Connections Hilfedokument.
Automatisieren Sie Ihren Geschäftsworkflow mit der Buchhaltungsautomatisierung von Zoho Books.

