Neu E-Mail Versand in JTL - Absender ändern

Hanfhandel

Aktives Mitglied
15. November 2022
34
12
Das Feature um Absender Namen von E-Mails selbst definieren zu können wird hier im Issue Ticket schon lange diskutiert, ist aber von JTL noch immer nicht umgesetzt.
Daher hab ich mich Abends mal hingesetzt und einen eigenen kleinen SMTP Forwarding Server (in python) geschrieben.
[Danke an Tim S. Kommentar vom 16.03.2023 - denke das Script hier hat keine Limits bzgl der E-Mail Länge]

E-Mail Änderungen per Filter
Die Idee dabei ist, dass der Forwarding Server den Absender ändert - anhand von "Filtern", welche getriggert werden.
Trigger können dabei E-Mail Adressen des Absenders sein oder auch einzelnen Wörter im Betreff.

Somit kommen Mails beim Kunden nicht mehr als "Meine Beispiel GmbH" - sondern mit dem Absender "My Great Onlineshop" an.

Hat man verschiedene Mail Vorlagen, so kann man anhand von Trigger Wörtern im Betreff einen anderen Filter nutzen.
Bsp: Setzt man den Trigger auf "Rechnung", so könnten E-Mails mit dem Betreff "Ihre Rechnung vom 12.03.2022" vom Absender "Great Onlineshop - Buchhaltung" versandt werden.

Oder wenn die Mail Vorlage so eingestellt ist, dass sie den Nutzername im Betreff mit reinschreibt, kann man darauf triggern lassen, dann aber das Triggerwort durch einen beliebigen String (ich empfehle einen leeren String) ersetzen lassen.
Somit würde aus dem E-Mail Betreff "Nutzer1 Ihr Angebot von Great Onlineshop" der Betreff "Ihr Angebot von Great Onlineshop" und man kann die E-Mail über das Konto "nutzer1@my-onlineshop.com" versenden.

Auch ist es möglich den Trigger auf die E-Mail Adresse zu legen, welche die E-Mail versendet.
So können Mails von "firma1@my-onlineshop.com" einen anderen Filter triggern (und durch den Filter versendet werden), als E-Mails welche über "firma2@my-onlineshop.com" verschickt werden sollen.
Wenn also verschiedene Firmen in der JTl-WaWi eingetragen sind, kann eine einzelne Forwarder-Instanz den Versand von E-Mails mehrerer Firmen abdecken.

Funktionsweise und Features
Da Bilder mehr sagen als Worte, hier der Ablaufplan wie im JTL E-Mails versendet werden und wie der SMTP Forwarding Server eingreift.

jtl_email_send_original.png

jtl_email_send_geändertl.png

Der SMTP Forwarder muss dabei auf einem Server laufen, der vom JTL-Server selbst und von allen JTL Clients aus erreichbar ist.
Ideal ist hier der Windows Server selbst, auf dem die JTL-WaWi läuft.

Da der Forwarder dadurch (oft) öffentlich erreichbar ist, kann man den SMTP Server im Forwarder einstellen auf
- Authentifizierung via username / password
- Verschlüsselung mit STARTTLS mit selbst generiertem SSL-Zertifikat
- IP Ban (für y Minuten) nach X fehlerhaften Versuchen

Als Client zum (externen) SMTP Server unterstützt der SMTP Forwarder alle gängigen Methoden der Verschlüsselung und Authentifizierung.

Installation und Inbetriebnahme
Ich hab das Script auf Python 3.11 auf Windows entwickelt. (Linux tests habe ich noch keine durchgeführt)

Im Anhang findet Ihr das python Script in der aktuellen TEST-Version 0.51
Zudem die requirements.txt (welche Module eure Python Umgebung benötigt)

In der ZIP ist außerdem ein Script zum Versenden von Mails mitgeliefert, um die Funktionsweise der Filter einfach testen zu können.
Alternativ könnt ihr auch den Mail Client eurer Wahl nutzen und auf den Forwarder konfigurieren.

Die benötigten Module können mittels "pip install -r requirements.txt" installiert werden.
Falls Verschlüsselung aktiviert sein soll: OpenSSL muss auf dem Host installiert sein. Das Script generiert die SSL-Zertifikate dann selbst.

Wenn das Script "SMTP-Forwarder-JTL_v0.51.py" das erste mal gestartet wird, erzeugt es eine ausgiebig kommentierte Config Datei (im Text Format - TOML).
Dort müsst ihr die Einstellungen zum Mailversand(Filter) und zur Authentifizierung von Clients setzen.

Zum Testen empfehle ich das Script erstmal auf dem eigenen Rechner lokal laufen zu lassen und sich selbst (mittels des Scripts 'smtp_client_test_message.py') E-Mails zu senden um die Config Einstellungen und das Filter Handling zu verstehen. Zudem sollte die 'Ausführliche Ausgabe' (in der Config) aktiviert sein damit ihr seht was passiert.

Es wird auch eine LOG Datei geschrieben. Deren Detailgrad ist einstellbar.

Hinweis
Um aus JTL heraus E-Mails an den SMTP-Forwarder [mit aktivierter Verschlüsselung] senden zu können, muss die Verschlüsselung auf
STARTTLS ohne Zertifikatsprüfung gestellt sein (das generierte SSL Zertifikat ist self signed und kann daher nicht gegen eine Zertifizierungsstelle geprüft werden)
Screenshot 2024-01-24 080842.png


Das Script wird hier "so wie es ist" zur Verfügung gestellt und kann beliebig abgeändert werden. (GNU GPL)
Diese Software wendet sich direkt an Admins.
Man muss mindestens im Stande sein python Module zu installieren und in einer Config Datei Werte nach bestem Wissen zu setzen.
Außerdem greift man in den Mail- Workflow seiner WaWi ein.

Wenn Euch nicht klar ist, was ihr hier tut, lasst die Finder davon und fragt euren Admin.

Feedback und Verbesserungen gerne hier oder direkt per E-Mail.
 

Anhänge

  • SMTP-Forwarder-JTL_v0.51.zip
    15,7 KB · Aufrufe: 26
Zuletzt bearbeitet:
Ähnliche Themen
Titel Forum Antworten Datum
Neu E-Mail-Versand Allgemeine Fragen zu JTL-POS 0
Neu Exchange Konto kann nicht eingerichtet werden für E-Mail Versand User helfen Usern - Fragen zu JTL-Wawi 2
Neu Neuerdings E-Mail benachrichtigung bei "Pick up in Store", allerdings mit E-Mail "Bestellung wurde abgeholt" Shopify-Connector 0
Gelöst Workflow - Seriennummer per Mail versenden JTL-Workflows - Fehler und Bugs 1
Neu Kundensupport Projekt (Mail + eBay + Amazon + JTL + KI) Dienstleistung, Jobs und Ähnliches 0
In Diskussion Warnung per Mail wenn Paket seit x Tagen in Filiale zu Abholung (DHL Sendungsverfolgung) Track&Trace JTL-Workflows - Ideen, Lob und Kritik 6
Dropshipping-Trackingnummer erzeugt keine Versandbenachrichtigung per E-Mail JTL-Wawi 1.8 5
Mail geht an Rechnungsmail satt an Liefermail JTL-Wawi 1.11 1
Neu Wokflow alle Sendenummer in eine Mail User helfen Usern - Fragen zu JTL-Wawi 2
Neu Wo verändere ich die Variable #firma.name# die in Mail-Vorlagen zu finden ist? Allgemeine Fragen zu JTL-Shop 2
Kundennummer wird in E-Mail-Bestellung nicht angezeigt JTL-Wawi 1.10 0
Wawi 1.11.10 : Feldinhalt "Kundenkommentar" fehlt beim Versand in WMS JTL-Wawi 1.11 0
Neu Umstellung auf DHL Versenden 4.0 leeres Versand Label JTL-ShippingLabels - Ideen, Lob und Kritik 5
Neu Nach Update auf JTL-Wawi 2.0.3 keine WMS-Lager mehr auswählbar – Versand komplett blockiert JTL-Wawi 2.0 3
Fehlermeldung bei DHL 4.0 versand JTL-Wawi 2.0 12
Bilder unter Versand- und Zahlungsart unterschiedlich groß Einrichtung JTL-Shop5 0
Problem Wawi 2.0 mit DHL Versand JTL-Wawi 2.0 1
Neu JTL Shipping Fehler bei DHL Versand über WMS ? User helfen Usern - Fragen zu JTL-Wawi 2
Versand Internetmarke funktioniert nicht (Could not load file or assembly 'System.Net.WebProxy, ...) JTL-Wawi 2.0 2
Shop Apotheke Bestellungen seit Update als „nicht bezahlt“ – Versand blockiert JTL-Wawi 2.0 8
Neu ERDE an JTL- seit 10h kein Versand wegen Störung! JTL-ShippingLabels - Fehler und Bugs 10
Artikelposition Versand keine Bezeichnung JTL-Wawi 1.11 2
Fehler beim Abgleich mit dem JTL-Shop JTL-Wawi 2.0 0
Neu Warnung: Attribute via JTL Funktion JTL_GetProductAttribute() funktioniert nicht zuverlässig Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
Neu Eignes Feld aus Auftrag in Rechnung anzeigen lassen JTL-WaWi 1.11.10 Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu JTL FFN Seite defekt? JTL-Fulfillment Network - Fehler und Bugs 1
Neu Freelancer für JTL-Wawi, Shop & Prozessautomatisierung Dienstleistung, Jobs und Ähnliches 0
Neu Hilfe bei jtl-pos Synchronisation User helfen Usern - Fragen zu JTL-Wawi 4
Beantwortet JTL-POS „Rechnung drucken“ Allgemeine Fragen zu JTL-POS 2
JTL ERP-Connector JTL-Wawi 2.0 0
Neu Reverse Charge Verfahren - JTL richtiger Steuersatz Shopify-Connector 1
Neu JTL Shop 5.7.1 mit Fehlern - versandarten zahlungsarten nicht änderbar, leere weiße Seite JTL-Shop - Fehler und Bugs 5
Neu Umzug von sehr alter JTL Wawi Version auf neuen PC User helfen Usern - Fragen zu JTL-Wawi 3
Neu JTL REST API (on premise) - welche API Version ab welcher Wawi-Version? Changelog? Schnittstellen Import / Export 0
Neu Massiver jtl-shop-cron aufruf JTL-Shop - Fehler und Bugs 7
Neu Ab welcher JTL Wawi Version ist der OnPremise REST API Endpoint POST /v2/returns oder POST /v1/returns für Create Return verfügbar? Schnittstellen Import / Export 0
Neu JTL Stammtisch im TurboZentrum 04.06.2026 Messen, Stammtische und interessante Events 0
Neu JTL Stammtisch Dresden 21.05.2026 Messen, Stammtische und interessante Events 0
Neu JTL Stammtisch Bochum am 20.05.2026 (morgen) Messen, Stammtische und interessante Events 0
Manche Produkte werden nicht erkannt JTL/ Shopify JTL-Wawi 2.0 3
Bessere Greyhound-Anbindung ab 1.10 - JTL-API-Pflicht? JTL-Wawi 1.10 12
Neu Seller2Go – Mobile App & JTL-Plugin für Bestellungen, Support und Produktmanagement Plugins für JTL-Shop 0
JTL Ameise Lieferantenbestellung mit VPE importieren oder umrechnen JTL-Wawi 1.11 0
JTL-Stammtisch Bochum – am 20.05.2026 Messen, Stammtische und interessante Events 0
Jtl pos Einstellungen mit wiwa 2.02 JTL-Wawi 1.11 0
Neu Bestellabgleich Shopify - JTL | Point of Sales und Online Stores Shopify-Connector 1
PayPal Abgleich funktioniert nicht (JTL 1.9.8.0) JTL-Wawi 1.9 16
Keine Rückmeldung in JTL Wawi sobald SQL Server Memory durch Database Cache ausgeslastet ist JTL-Wawi 2.0 9
Neu Neues Plugin: Erweiterter Widerrufsbutton für JTL-Shop Plugins für JTL-Shop 9

Ähnliche Themen