JTL Connect ab JTL Wawi 1.10

Das JTL Connect-Addon kann jederzeit einem bestehenden GREYHOUND-Vertrag hinzugebucht werden. Der GREYHOUND Server und die Clients installieren das Addon dann vollautomatisch.

Für die Verwendung des JTL Connect-Addons ist eine GREYHOUND-Version 5.5.231 build 36515 oder höher notwendig und auf Seiten von JTL bedarf es mindestens der JTL Wawi Version 1.10 (ab 21.08.2024 erscheint diese Version von JTL als Public Beta). Wer eine ältere Version einsetzt, liest bitte hier weiter.

Notwendige Vorbereitung

  • Wenn JTL wie üblich im lokalen Netzwerk läuft, muss auf dessen Seite nichts aktiviert oder konfiguriert werden. Wichtig ist allerdings, dass der SQL-Server intern erreichbar ist. Die Portnummer ist möglicherweise dynamisch und kann wie in diesem Beitrag beschrieben ermittelt werden. Außerdem sollten der Standardbenutzer der SQL-Datenbank und sein Passwort bekannt sein.
  • Damit Daten von GREYHOUND aus der JTL Wawi abgerufen werden können, muss die REST API gestartet sein. Ab Version 1.10 kann man die auch als Windows Dienst installieren, dann muss man die nicht per Hand starten. Wie das geht, ist hier im Handbuch von JTL beschrieben.

Addon zum Vertrag hinzubuchen

Das Produkt JTL Connect kann im GREYHOUND Control Center (GCC) jederzeit dem bestehenden Vertrag hinzugebucht werden.

  1. Nach dem Login unter Verträge den Vertrag auswählen und bearbeiten.
  2. Unter den Vertragsinhalten auf Produkte ändern klicken.
  3. Das gewünschte Addon “JTL Connect” anhaken.
  4. Die Änderungen sind zum Schluss noch mit Weiter zu bestätigen und nach einer Prüfung zu übernehmen.

Hinweis für Eigenbetriebler

  • Kunden im überwachten Eigenbetrieb müssen sicherstellen, dass Port 9443 in der Firewall wie hier beschrieben eingehend und ausgehend freigegeben ist.
  • Kunden im Individualbetrieb müssen die Verwendung des gebuchten Addons zusätzlich im GREYHOUND Admin aktivieren. Außerdem sind die Funktionen des neuen Addons erst nach einem Neustart des GREYHOUND Clients verfügbar.

JTL Addon einrichten

Im Folgenden ist beschrieben, wie die Anbindung an JTL in GREYHOUND eingerichtet wird.

Verbindung zu JTL herstellen

Um JTL und GREYHOUND zu verknüpfen, bitte zunächst zu Erweiterungen > Addon Manager navigieren.

  • Im Addon Manager kann man über das Plus-Icon unten links eine neue Verbindung hinzufügen und entsprechend “JTL” auswählen.
  • Hier muss man nun eine Bezeichnung eingeben und die URL zur REST API angeben.
  • Die REST API muss gestartet sein. Sobald dies der Fall ist, muss in der JTL Wawi eine App-Registrierung erfolgen. Diese ist nur in der “neuen Oberfläche” von JTL verfügbar. Wie man eine Anwendung in der JTL-Wawi registriert, ist hier im Handbuch von JTL Schritt-für-Schritt beschrieben.


  • Anschließend ist in den Addon-Einstellungen in GREYHOUND auf den Button “Registrieren” zu klicken. In der JTL Wawi sieht man dann, dass das GREYHOUND JTL Connect Addon um Registrierung bittet. In der Wawi klickt man dann einfach auf “Weiter” und bestätigt die Registrierung.
  • Über den Button “Verbindung testen” kann und sollte getestet werden, ob GREYHOUND mit den eingegebenen Daten eine Verbindung zu JTL herstellen kann.
  • Danach bitte Speichern.

Optionale Konfiguration

Im Addon Manager gibt es neben dem Anlegen der Verbindungsdaten noch einige weitere, optionale Einstellungen. Beispielsweise lässt sich definieren, welche Daten die Vorschauzeile anzeigen soll sowie ob und welche Auftragsdaten aus einem Addon in benutzerdefinierte Felder in GREYHOUND geschrieben werden sollen. 

Die optionalen Einstellungen sind für alle Addons identisch, weshalb sie zentral an folgender Stelle im Handbuch beschrieben sind:

Optionale Addon-Einstellungen

FAQ

Kann GREYHOUND auch bei Marktplatz-Mails automatisch den passenden JTL-Auftrag zuordnen?

Viele JTL-Kunden wollen wissen, ob es die Möglichkeit gibt, die Mails der Marktplätze anhand ihrer Bestellnummer automatisch einem JTL-Auftrag zuzuordnen – insbesondere die Kundennachrichten. Regulär versucht das JTL Connect Addon in GREYHOUND anhand der Absenderadresse nach passenden Aufträgen zu suchen, wobei bei der Marktplatz-Kommunikation leider nichts gefunden werden kann, da die Mails, welche über die Marktplätze selbst kommen, meist kryptische Absenderadressen haben oder alle von ein- und derselben globalen Absenderadresse des jeweiligen Marktplatzes kommen.

Die Bestellnummern stehen allerdings meistens im Betreff oder sind irgendwo im Inhalt der Mail enthalten. Gibt es hier einen Trick, sodass das JTL Addon die passenden Aufträge auch bei Marktplatz-Mails findet?

  • Sofern die Bestellnummer am JTL-Auftrag geführt wird und sie in der Mail-Kommunikation vorkommt, gilt: Ja, das geht!

Im Folgenden ist beschrieben, wie man sicherstellen kann, dass das JTL-Addon auch anhand der Bestellnummer aus Marktplätzen wie Kaufland, Otto & Co. den passenden Auftrag findet.

Es gibt in GREYHOUND kostenlos im Lieferumfang enthaltenen Marktplatz-Regeln, die vollautomatisch Bestellnummern von Käufen erkennen, die via Marktplatz getätigt wurden. Die Regeln sorgen dafür, dass Bestellnummern automatisch in ein benutzerdefiniertes Feld namens Referenznummer geschrieben werden.

Aktuell ist dies möglich für folgende Markplätze:

  • Amazon
  • eBay
  • Kaufland
  • Otto

Damit dann auch anhand dieser Bestellnummern im JTL-Addon der passende Auftrag gefunden wird, ist lediglich einmal in den Einstellungen des JTL Connect Addons im Reiter „Datenübernahme“ folgende Konfiguration vorzunehmen:

Damit die Zuordnung vollautomatisch passieren kann, müssen entsprechend die folgenden Regeln (in aktuellster Version) im GREYHOUND Regelwerk vorhanden und aktiviert sein:

  • Eingangsverarbeitung: Amazon
  • Eingangsverarbeitung: eBay
  • Eingangsverarbeitung: Kaufland
  • Eingangsverarbeitung: Otto

Außerdem braucht es ein benutzerdefiniertes Feld namens „Referenznummer“. Falls noch nicht vorhanden, ist also bitte ein benutzerdefiniertes Feld namens „Referenznummer“ wie folgt anzulegen:

Kann man auch weitere Marktplätze oder Portale neben eBay, Amazon, Otto & Kaufland automatisch dem passenden JTL-Auftrag zuordnen lassen?

Möchte man weitere Marktplätze ergänzen, für die es bisher keine Standard-Regel gibt, ist dies natürlich auch möglich. Dazu ist folgendes nötig (in Kurzform): Via Regex die Bestellnummer auslesen, in ein benutzerdefiniertes Feld schreiben und im JTL-Addon im Reiter “Datenübernahme” einstellen, in welches Feld das geschrieben werden soll, sodass Elemente automatisch gematcht werden.

Die Langfassung zur Lösung eines solchen Vorhabens ist wie folgt:

  • Ziel: Wir wollen in diesem Beispiel die Auftragsnummer aus Mails des Portals CHECK24 automatisch erkennen und dafür sorgen, dass das JTL Addon bei diesen Mails den passenden Auftrag zuordnen kann.
  • Lösungsansatz: In jeder Kundenmail via CHECK24 kommt im Regelfall die Auftragsnummer vor – diese muss via Regel automatisch ausgelesen werden. Der Regelknoten hierfür lautet “Automatischer Wert“. Das Suchmuster wird im regulären Ausdruck an einem benutzerdefinierten Feld festgehalten. Zuletzt muss nur noch die Verknüpfung über die Addon-Einstellungen erfolgen.

1.) Regex am Userfield hinterlegen: Unter Einstellungen > Benutzerdefinierte Felder sollte es einen Eintrag namens „Referenznummer“ geben. Sollte noch kein gleichnamiges Feld vorhanden sein, ist ein neues Feld anzulegen. Das Feld muss am Ende wie folgt aussehen:

Im Feld Beschreibung muss „Referenznummer“ eingetragen sein. Im Reiter „Datenübernahme“ ist im Feld Regulärer Ausdruck der Suchausdruck einzutragen für das Portal, das man ergänzen will, in diesem Fall CHECK24:

\b(\d{4}-\d{7}-\d{1})\b

Tipp: Im Feld „Regulären Ausdruck prüfen“ kann man den Inhalt einer E-Mail kopieren, in der die Bestellnummer enthalten ist. Klickt man auf den grünen Pfeil neben „Ergebnisse“ kann man prüfen, ob der reguläre Ausdruck korrekt funktioniert – dort sollte dann die Bestellnummer angezeigt werden.

Exkurs: Es ist auch möglich, mehrere Abfragen für verschiedene Markplätze oder Portale in einem Feld zu speichern – es sind dafür nicht mehrere Felder nötig. Aufgrund der besseren Übersichtlichkeit bietet es auf jeden Fall an, ein benutzerdefiniertes Feld zu alles zu verwenden und nicht für jeden Marktplatz ein eigenes. Dazu einfach mit dem Pipe-Symbol für die Oder-Verknüpfung verschiedene Ausdrücke verbinden. Ein RegEx für Otto ODER Check24 ODER Amazon sähe zum Beispiel so aus:

\b(cbn4b[a-z0-9]{5})\b|\b(\d{4}-\d{7}-\d{1})\b|\b(\d{3}-\d{7}-\d{7})\b

2.) Anschließend via Regel die Bestellnummer(n) automatisch aus dem Inhalt ODER dem Betreff auslesen. Dazu ist erforderlich, folgende im Screenshot gezeigte Regelknoten sinnvoll in einer bestehenden Regel zu ergänzen, die als Trigger „Nachrichteneingang“ hat. VOR diesen Regelknoten müssen innerhalb der Regel eine oder mehrere Abfrage erfolgen, die die Auswahl der Elemente eingrenzt, auf welche diese Regelknoten angewandt werden, z. B. die Basics: Elementtyp = E-Mail, Absender = beispiel@marktplatz.de, Gruppe = Kundenservice. Je genauer man die Auswahl eingrenzt, desto besser, da reguläre Ausdrücke ressourcenintensiv sind und der Regeldurchlauf pro Element ziemlich lange dauert.

Wichtig: Sind beide Regelknoten wie gezeigt bei beiden Ausgängen miteinander verbunden, werden Inhalt ODER Betreff auf die Bestellnummer hin untersucht.


3.) Nun noch das benutzerdefinierte Feld mit dem Datenfeld des Addons „verbinden“. Das geht im Reiter “Datenübernahme” des JTL Addons:

4.) Fertig! Elemente, an welchen die Referenz erkannt wurde, sollten nun mit dem JTL-Auftrag gematcht werden. Oder anders ausgedrückt: Bei allen Mails via CHECK24, in denen eine Auftragsnummer enthalten ist, kann das JTL-Addon in GREYHOUND nun den passenden Auftrag zuordnen.

Stehen auch die Artikel-IDs & Artikeldetails als Addon-Variable zur Verfügung?

JTL arbeitet mit Artikelnummern bzw. Artikel-IDs. Um mit diesen auch in GREYHOUND “weiterarbeiten” zu können, stehen diese ab Version 2.0.95 build 279 des JTL Connect Addons ebenfalls als Variablen bereit. Neu hinzugekommen sind damit folgende Addon-Variablen:

[$Order.ItemIDs] – Artikel-ID(s) der Bestellung
[$Order.ItemIDsSearch] – Artikel-ID-Suchindex. Dies ist eine dediziert für die Suche in GREYHOUND angelegte Variable. Sie ermöglicht es, in GREYHOUND nach Artikel-IDs suchen und alle Elemente finden zu können, in denen es um den entsprechenden Artikel geht. Eine Eingabe von “,A4711,” in das Suchfeld bei GREYHOUND zeigt beispielsweise alle Elemente an, in denen es um den Artikel mit der ID A4711 geht. Die Kommas direkt vor und hinter einer Artikel-ID (ohne Leerzeichen!), dienen dazu, dass man bei der Suche nach “,A1001,” nur Elemente findet, wo es um den Artikel A1001 geht – nicht aber um Artikel A100123. Möchte man nach mehreren Artikel-IDs gleichzeitig suchen, ist die Syntax wie folgt: “,A123,A234,A456,”
[$Order.ItemNumbers] – Artikelnummer(n) der Bestellung
[$Order.ItemNumbersSearch] – Artikelnummern-Suchindex. Dies ist eine dediziert für die Suche in GREYHOUND angelegte Variable. Sie ermöglicht es, in GREYHOUND nach Artikelnummern suchen und alle Elemente finden zu können, in denen es um den entsprechenden Artikel geht. Eine Eingabe von “,A4711,” in das Suchfeld bei GREYHOUND zeigt beispielsweise alle Elemente an, in denen es um den Artikel mit der Artikelnummer A4711 geht. Die Kommas direkt vor und hinter einer Artikelnummer (ohne Leerzeichen!), dienen dazu, dass man bei der Suche nach “,A1001,” nur Elemente findet, wo es um den Artikel A1001 geht – nicht aber um Artikel A100123. Möchte man nach mehreren Artikelnummern gleichzeitig suchen, ist die Syntax wie folgt: “,A123,A234,A456,”

Diese Werte können in GREYHOUND in Textbausteinen verwendet werden oder in benutzerdefinierte Felder übernommen werden.

Zusätzlich werden die wesentlichen Daten aus den einzelnen Auftragspositionen, also z. B. Artikelnummer und -name, bereitgestellt. Diese Möglichkeit ist limitiert auf die ersten 10 Artikel des Auftrags. Für diese stehen zudem folgende Variablen zur Verwendung in Textbausteinen oder an anderer Stelle zur Verfügung:

[$Order.Item1.ID] – Artikel-ID von Artikel 1 des Auftrags
[$Order.Item1.Number]
– Artikelnummer von Artikel 1 des Auftrags
[$Order.Item1.Name]
– Artikelname von Artikel 1 des Auftrags
[$Order.Item1.Quantity]
– Artikelanzahl von Artikel 1 des Auftrags
[$Order.Item1.Price] – Einzelpreis von Artikel 1 des Auftrags
[$Order.Item1.PriceInfo.Value] – Preisinformation – Wert von Artikel 1 des Auftrags
[$Order.Item1.PriceInfo.Currency] – Preisinformation – Währung von Artikel 1 des Auftrags
[$Order.Item1.TotalPrice] – Gesamtpreis von Artikel 1 des Auftrags
[$Order.Item1.TotalPriceInfo.Value] – Preisinformation – Gesamtwert von Artikel 1 des Auftrags
[$Order.Item1.TotalPriceInfo.Currency] – Preisinformation- Währung des Gesamtpreises von Artikel 1 des Auftrags

All die oben stehenden Variablen beziehen sich auf Order.Item1 der Bestellung, also das technisch gesehen erste Produkt des Auftrags. Tauscht man die 1 durch eine 2 aus, werden die Werte für Produkt 2 ausgegeben usw. – das geht bis Artikel 10 des Auftrags, also: [$Order.Item10.ID].