In diesem Beitrag zeigen wir dir, wie du E-Mail-Vorlagen so anpasst, dass Kunden mit der Versandbestätigung den passenden Tracking-Link erhalten. Wir gehen primär davon aus, dass du für jeden Versanddienstleister eine eigene Versandart nutzt. Falls du nur eine Versandart mit mehreren Dienstleister hast, findest du dazu weiter unten einen eigenen Abschnitt.
Tracking-Links hinterlegen
Hinterlege zunächst in deinen Versandarten unter Einstellungen → Versand die jeweilige Tracking-URL. Als Platzhalter für den tatsächlichen Tracking-Code verwendest du %s.
Hier findest du eine Übersicht der URLs je Versanddienstleister:
| Versanddienstleister | Tracking-Link mit Platzhalter |
|---|---|
| Deutsche Post | https://www.deutschepost.de/de/s/sendungsverfolgung.html?piececode=%s |
| DHL | https://www.dhl.de/de/privatkunden/dhl-sendungsverfolgung.html?piececode=%s |
| DHL Express | https://www.dhl.com/de-de/home/tracking/tracking-ecommerce.html?submit=1&tracking-id=%s |
| DPD | https://tracking.dpd.de/status/de_DE/parcel/=%s |
| GLS | https://www.gls-pakete.de/sendungsverfolgung?trackingNumber=%s |
| Österreichische Post | https://www.post.at/s/sendungssuche?snr=%s |
| Schweizerische Post | https://service.post.ch/EasyTrack/submitParcelData.do?formattedParcelCodes=%s |
| UPS | https://www.ups.com/track?trackNums=%s |
| DSV (*) |
https://mydsv.com/new/tracking/track-shipment Wenn du einen Link zur Sendungsverfolgung für DSV hinterlegen möchte, beachte bitte die Hinweise dazu weiter unten. |
E-Mail Vorlage anpassen
Im nächsten Schritt ergänzen wir die Tracking-URL in der E-Mail-Vorlage. Gehe dazu auf Einstellungen → Shop → E-Mail-Templates und suche nach der Vorlage Eintritt Lieferstatus: Versandt. Klicke auf Bearbeiten.
Scrolle nun zum Abschnitt Mail-Text und trage für die Felder Text und HTML jeweils folgenden Code an der Stelle ein, an welcher der Link zur Sendungsverfolgung erscheinen soll. Wenn du ein Versandetikett erstellst, wird die generierte Tracking-Nummer automatisch in den Bestellungsdetails unter Details → Versand → Sendungsnummer(n) gespeichert. Diese Variable, trackingCode, wird später in die E-Mail eingefügt.
Im Feld Text:
{% for delivery in order.deliveries %}
{% for trackingCode in delivery.trackingCodes %}
{% set trackingLink = delivery.shippingMethod.trackingUrl|replace({'%s': trackingCode}) %}
Sendung verfolgen ({{ trackingCode }}): {{ trackingLink }}
{% endfor %}
{% endfor %}Im Feld HTML:
{% for delivery in order.deliveries %}
{% for trackingCode in delivery.trackingCodes %}
{% set trackingLink = delivery.shippingMethod.trackingUrl|replace({'%s': trackingCode}) %}
<p><a href="{{ trackingLink }}">Sendung verfolgen ({{ trackingCode }})</a></p>
{% endfor %}
{% endfor %}Flows überprüfen
Wenn du einen weiteren Versanddienstleister hinzufügst und individuelle Versandflows nutzt, prüfe, ob dieser hinterlegt werden muss.
Spezialfall: Mehrere Versanddienstleister aber nur eine Versandart
Nutze diese Methode, wenn du im Checkout nur eine Versandart anbietest (z. B. "Standardversand"), aber im Lager flexibel entscheidest, mit welchem Versanddienstleister du versendest. In diesem Fall wird die Tracking-URL nicht in der Versandart sondern direkt in der E-Mail-Vorlage hinterlegt werden. Auch hier gelten grundsätzlich die gleichen URLs wie oben:
| Versanddienstleister | Tracking-Link mit Platzhalter |
|---|---|
| Deutsche Post | https://www.deutschepost.de/de/s/sendungsverfolgung.html?piececode=%s |
| DHL | https://www.dhl.de/de/privatkunden/dhl-sendungsverfolgung.html?piececode=%s |
| DHL Express | https://www.dhl.com/de-de/home/tracking/tracking-ecommerce.html?submit=1&tracking-id=%s |
| DPD | https://tracking.dpd.de/status/de_DE/parcel/=%s |
| GLS | https://www.gls-pakete.de/sendungsverfolgung?trackingNumber=%s |
| Österreichische Post | https://www.post.at/s/sendungssuche?snr=%s |
| Schweizerische Post | https://service.post.ch/EasyTrack/submitParcelData.do?formattedParcelCodes=%s |
| UPS | https://www.ups.com/track?trackNums=%s |
|
DSV (*)
|
https://mydsv.com/new/tracking/track-shipment Wenn du einen Link zur Sendungsverfolgung für DSV hinterlegen möchte, beachte bitte die Hinweise dazu weiter unten. |
In unserem Beispiel versenden wir entweder mit DHL oder DPD. In der E-Mail wird dann anhand der Länge des hinterlegten Tracking-Codes entschieden, welcher Link ausgegeben wird. Grundannahme ist hier, dass DHL Tracking-Codes meist länger als 14 Zeichen und DPD Tracking Codes kürzer sind.
Gehe auf Einstellungen → Shop → E-Mail-Templates und öffne die Vorlage Eintritt Lieferstatus: Versandt. Gib im Abschnitt Mail-Text jeweils folgenden Code an der Stelle ein, an welcher der Link zur Sendungsverfolgung erscheinen soll:
Im Feld Text
{% for delivery in order.deliveries %}
{% for trackingCode in delivery.trackingCodes %}
{% if trackingCode|length > 14 %}
{% set trackingLink = 'https://www.dhl.de/de/privatkunden/pakete-empfangen/verfolgen.html?piececode=' ~ trackingCode %}
DHL Sendungsverfolgung: {{ trackingLink }}
{% else %}
{% set trackingLink = 'https://tracking.dpd.de/status/de_DE/parcel/' ~ trackingCode %}
DPD Sendungsverfolgung: {{ trackingLink }}
{% endif %}
{% endfor %}
{% endfor %}Im Feld HTML
{% for delivery in order.deliveries %}
{% for trackingCode in delivery.trackingCodes %}
<p>
{% if trackingCode|length > 14 %}
{% set trackingLink = 'https://www.dhl.de/de/privatkunden/pakete-empfangen/verfolgen.html?piececode=' ~ trackingCode %}
DHL Sendungsverfolgung: <a href="{{ trackingLink }}">{{ trackingCode }}</a>
{% else %}
{% set trackingLink = 'https://tracking.dpd.de/status/de_DE/parcel/' ~ trackingCode %}
DPD Sendungsverfolgung: <a href="{{ trackingLink }}">{{ trackingCode }}</a>
{% endif %}
</p>
{% endfor %}
{% endfor %} Spezialfall DSV
Bei DSV gibt es die Besonderheit, dass die Sendungsnummer nicht 1:1 in die URL zu Sendungsverfolgung übernommen wird sondern via API in eine ID umgewandelt wird. Alternativ könntest du daher direkt auf die Webseite zur Sendungsverfolgung verlinken (https://mydsv.com/new/tracking/track-shipment), wo dann die Sendungsnummer manuell eingegeben werden muss.
Hier findest du ein Beispiel, bei dem zunächst über die Variable delivery.shippingMethod.translated.name geprüft wird, ob der Name der Versandart 'DSV' enthält. Falls ja, wird der Link zur allgemeinen Sendungsverfolgungsseite von DSV eingefügt, andernfalls der hinterlegte Trackinglink der jeweiligen Versandart.
Im Feld Text
{% for delivery in order.deliveries %}{% for trackingCode in delivery.trackingCodes %}
{% if "DSV" in delivery.shippingMethod.translated.name %}
Dein Paket wurde per DSV versendet.
Deine Sendungsnummer lautet: {{ trackingCode }}
Du kannst den Status deiner Sendung hier abrufen:
https://mydsv.com/new/tracking/track-shipment
{% else %}
{% set trackingLink = delivery.shippingMethod.trackingUrl|replace({'%s': trackingCode}) %}
Du kannst den Status deiner Sendung hier abrufen: {{ trackingLink }}
{% endif %}
{% endfor %}{% endfor %}Im Feld HTML
{% for delivery in order.deliveries %}
{% for trackingCode in delivery.trackingCodes %}
{% if "DSV" in delivery.shippingMethod.translated.name %}
<p>Dein Paket wurde per <strong>DSV</strong> versendet.</p>
<p>Deine Sendungsnummer lautet: <strong>{{ trackingCode }}</strong></p>
<p>Du kannst den Status deiner Sendung hier abrufen:<br>
<a href="https://mydsv.com/new/tracking/track-shipment">DSV Sendungsverfolgung öffnen</a>
</p>
{% else %}
{% set trackingLink = delivery.shippingMethod.trackingUrl|replace({'%s': trackingCode}) %}
<p>Du kannst den Status deiner Sendung hier abrufen: <a href="{{ trackingLink }}">{{ trackingCode }}</a></p>
{% endif %}
{% endfor %}
{% endfor %}