## Documentation Index Access the complete documentation index at: https://www.zoho.com/de-de/books/help/llms.txt Use this file to discover all available documentation pages before proceeding. # 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. * 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 ![ ](/books/help/images/gear-icon.png) **\> Automatisierung > E-Mail-Alerts** und klicken Sie auf **\+ Neuer E-Mail-Alarm**. ![Neuer E-Mail-Alarm](/books/help/images/settings/Automation-NewEmailAlert.png) **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. ![email temp drop](/books/help/images/settings/Automation-EmailTemplateDropdown.png) **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. ![Delete email alert](/books/help/images/settings/Automation-DeleteEmailalert.png) **E-Mail-Benachrichtigungen filtern:** Um die Liste der E-Mail-Benachrichtigungen zu filtern, befolgen Sie diese Schritte: * Navigieren Sie zu ![ ](/books/help/images/gear-icon.png) **\> 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. ![Filter Email Alert](/books/help/images/settings/Automation-FilterEmailAlert.png) **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](/de-de/books/help/settings/automation.html#new-workflow-rule), indem Sie einen **Namen** eingeben und das **Modul** auswählen. * Wählen Sie [wann](/de-de/books/help/settings/automation.html#workflow-type) Sie die Benachrichtigung auslösen möchten – **Ereignisbasiert** oder **Datumsbasiert.** * Richten Sie [**Filter** und **Kriterien**](/de-de/books/help/settings/automation.html#filter-the-triggers) für den Workflow ein und klicken Sie auf **Weiter**. ![Workflow](/books/help/images/settings/notification-workflow.png) * Wählen Sie den **Aktionstyp** als **In-App-Benachrichtigungen**. * Erstellen Sie eine neue Benachrichtigung, indem Sie auf **\+ Neue In-App-Benachrichtigung** unter **Verkauf** klicken. ![New Notification](/books/help/images/settings/notification-new.png) * 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**. ![Set Criteria](/books/help/images/settings/notification-actions.png) 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. ![Notification](/books/help/images/settings/notification-icon.png) * * * ### 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: ![New Field Update](/books/help/images/settings/Automation-NewFieldUpdate.png) **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?**. ![Update Empty Value](/books/help/images/settings/Automation-FieldUpdateValue.png) * 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. ![Delete Field Update](/books/help/images/settings/Automation-FieldUpdateDelete.png) ##### 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. ![Filter Field Update](/books/help/images/settings/Automation-FieldUpdateFilter.png) **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](/de-de/books/help/settings/using-webhook.html), um mehr darüber zu erfahren, wann und wie Sie Webhooks verwenden können. Für allgemeine Informationen zu Webhooks besuchen Sie [webhooks.org](http://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. ![Klicken Sie auf + Neuer Webhook](/books/help/images/settings/webhooks/plus-new-webhook.png) * 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. ![Seite Neuer Webhook](/books/help/images/settings/webhooks/new-webhook-page.png) * 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. ![URL und Parameter ](/books/help/images/settings/webhooks/url-and-parameters.png) * 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. ![Geheimer Token](/books/help/images/settings/webhooks/secret-token.png) **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. ![Header](/books/help/images/settings/webhooks/headers.png) * 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](/de-de/books/help/settings/connections.html). ![Authorization Type](/books/help/images/settings/webhooks/authorization-type.png) * 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. ![Body](/books/help/images/settings/webhooks/body.png) * 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](/de-de/books/help/settings/using-webhook.html) 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:** ```sh 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:** ```sh 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 queryParams, Map 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 queryParams, Map bodyParams) { StringBuilder result = new StringBuilder(); TreeMap sortedParams = new TreeMap<>(queryParams); sortedParams.putAll(bodyParams); for (Map.Entry entry : sortedParams.entrySet()) { result.append(entry.getKey()).append(entry.getValue()); } return result.toString(); } } ``` **Python:** ```sh 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 result ``` # Beispielverwendung 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://bulksms.vsms.net/eapi/submission/send\_sms/2/2.0?username=`%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**. ![Bulk SMS konfigurieren](/books/help/images/settings/bulk-sms.png) **Hinweis:** Wenn es andere Satzzeichen in Ihrem Nachrichteninhalt gibt, können Sie überprüfen, wie Sie diese mit Modifikatoren von [dieser](https://meyerweb.com/eric/tools/dencoder/) 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=`%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}** **Ähnlich können andere SMS-Gateways konfiguriert werden, wobei nur die URL unterschiedlich ist.** ##### 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: ![Configure SMS Magic](/books/help/images/settings/sms-magic.png) ``` **User_ID** **%Sender_ID** **%Account_ID** **%hashkey%** ``` 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](https://www.md5hashgenerator.com/) besuchen. ##### Text Local Text Local erfordert einen Entitätsparameter und einen benutzerdefinierten Parameter, um zu funktionieren. Um Text Local zu konfigurieren: ![Configure Text Local](/books/help/images/settings/text-local.png) * 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 auf das Löschen-Symbol](/books/help/images/settings/webhooks/delete-webhook.png) * 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. ![Webhook filtern](/books/help/images/settings/Automation-FilterWebhook.png) **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](https://www.zoho.com/deluge/help/). Wenn Sie Deluge lernen möchten, indem Sie Codebeispiele schreiben, klicken Sie [hier](https://creator.zoho.com/learndeluge/#Welcome!). #### 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. ![Neuer benutzerdefinierter Funktionsbutton](/books/help/images/settings/custom-function-button.png) * 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](/de-de/books/help/settings/custom-functions-using-zoho-finance-cli.html). ![Neue vordefinierte Verbindung](/books/help/images/settings/custom-function-form.png) * 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 email 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": “”, "währungs_code": "INR", "versandkosten": "0.0", "benutzerdefinierte_felder": [ { "benutzerdefiniertes_feld_id": "", "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": "", "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": "", "wechselkurs": "1.0", "status": "Entwurf", "zwischen_total": "12000.0", "kundennamen": “Kunde”, "rechnungsnummer": "INV-", "rabattbetrag": "12000.0", "rabatt": "100.00%", "steuer_total": "0.0", "referenznummer": “Überprüfung”, "fälligkeitsdatum": "2016-06-30", "rechnungs_id": "", "notizen": "Danke für Ihr Geschäft.", "kundennummer": "", "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 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 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](https://creator.zoho.com/learndeluge/#Welcome!). Um mehr über verschiedene Szenarien zu erfahren, in denen benutzerdefinierte Funktionen nützlich sein könnten, besuchen Sie unsere **[Custom Function Scenarios](/de-de/books/help/settings/automation-scenarios.html#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](https://www.zoho.com/books/pricing/), 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. ![Neuen Zeitplan erstellen](/books/help/images/settings/scheduler-new.png) * 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. ![Täglich ausführen](/books/help/images/settings/scheduler-daily.png) * **Wöchentlich**: Die Aufgabe wird einmal pro Woche ausgeführt. Wähle den Wochentag, an dem die Aufgabe ausgeführt werden soll. ![Wöchentlich ausführen](/books/help/images/settings/scheduler-weekly.png) * **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. ![Monatlich ausführen](/books/help/images/settings/scheduler-monthly.png) * **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. ![Jährlich ausführen](/books/help/images/settings/scheduler-yearly.png) * 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. ![Ablaufdatum festlegen](/books/help/images/settings/scheduler-expiry.png) * Ziehen Sie Optionen per Drag & Drop, um eine [****Deluge-Funktion****](https://www.zoho.com/deluge/help/) 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. ![Speichern Zeitplaner](/books/help/images/settings/scheduler-save.png) **Einblick:** Sie können maximal 10 benutzerdefinierte Zeitpläne erstellen. ### Beispiel-Funktion Hier ist eine Beispiel-Funktion für [Szenario 1](/de-de/books/help/settings/automation.html#scenario): ``` 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 > "") { 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 :"
Lieber " + customerName + ",

Wir wollten uns nur einen Moment Zeit nehmen, um Ihnen für Ihre kontinuierliche Unterstützung zu danken.

Basierend auf Ihren letzten Einkäufen möchten wir Ihnen einen Rabatt von 10% auf Ihren nächsten Einkauf bei uns anbieten. 

Bitte zeigen Sie diese E-Mail während der Abrechnung vor, um diesen Rabatt zu erhalten!

Mit freundlichen Grüßen,
" + name + "




" ] } } ``` ## Workflow-Szenarien Workflows helfen Ihnen, Aufgaben in Zoho Books zu automatisieren. [Erfahren Sie mehr](/de-de/books/help/settings/automation-scenarios.html), um einige gängige Szenarien im Detail zu erkunden. Erfahren Sie mehr im [Connections](https://www.zoho.com/de-de/books/help/settings/connections.html) Hilfedokument. Automatisieren Sie Ihren Geschäftsworkflow mit der [Buchhaltungsautomatisierung von Zoho Books.](https://www.zoho.com/books/accounting-automation/) * * *