So verbinden Sie Sendcloud mit Shopify Flow

Sendcloud kümmert sich um den Versand und die Sendungsverfolgung. Es sendet jedes Mal einen Webhook, wenn sich der Status eines Pakets ändert. „Workflow Webhooks“ wandelt diesen Aufruf in einen „Shopify Flow“-Trigger um, sodass Ihr Shop darauf reagieren kann: einen Kunden kennzeichnen, eine Bestellnotiz hinzufügen, eine interne E-Mail versenden, ein Metafeld aktualisieren - alles, was Shopify Flow leisten kann.

Diese Anleitung legt den gesamten Ablauf fest - Sendcloud versendet, Workflow Webhooks empfängt und überprüft, Shopify Flow führt die entsprechenden Aktionen aus -, wobei bei jeder Anfrage die HMAC-Signatur von Sendcloud überprüft wird, sodass ausschließlich Sendcloud Ihren Workflow starten kann.

Was Sie bauen können

  • Fügen Sie eine Notiz zur Bestellung hinzu, sobald ein Paket zugestellt wurde, ohne die API des Transportunternehmens abzufragen.
  • Bitte senden Sie eine E-Mail an den für den Kunden zuständigen Ansprechpartner, wenn eine Lieferung fehlgeschlagen ist.
  • Markieren Sie Bestellungen, die länger als erwartet in der Zustellung feststecken, damit der Support entsprechende Maßnahmen ergreifen kann.

Typische Ereignisse, die gesendet werden: Ein Paket wird angekündigt, ein Paket befindet sich im Transport, ein Paket wird zugestellt, eine Zustellung schlägt fehl.

Bevor Sie beginnen

  • Workflow Webhooks in Ihrem Shopify-Shop installiert.
  • Shopify Flow installiert, die kostenlos im App Store unter Shopify erhältlich ist.
  • Ein Sendcloud-Konto mit der Berechtigung zum Erstellen von Webhooks.

Schritt 1 - Erstellen Sie den Webhook unter Workflow Webhooks

  1. Öffnen Sie „Workflow Webhooks“** -> „Webhooks“ -> „Webhook erstellen“** und geben Sie ihm einen Namen, den Sie in Shopify Flow wiedererkennen, beispielsweise Sendcloud events.
  2. Wählen Sie unter „Authentifizierung“ die Option „HMAC“ aus.
  3. Wählen Sie unter „Signaturanbieter“ die Option „Sendcloud“ aus. Die App füllt die Felder „Header“, „Algorithmus“, „signiertes Payload“ und „Replay-Fenster“ automatisch für Sie aus - es sind keine weiteren Einstellungen erforderlich.
  4. Lassen Sie das Feld „Geheimnis“ vorerst leer und klicken Sie auf „Speichern“. Kopieren Sie die auf der Seite angezeigte URL des Webhooks.

Informationen zu den anderen Authentifizierungsmodi finden Sie unter Authentifizierung, und unter Zuordnung der Payload-Daten und Flow-Variablen erfahren Sie, welche Felder an Shopify Flow übermittelt werden.

Schritt 2 - Fügen Sie den Endpunkt in Sendcloud hinzu

Öffnen Sie in Sendcloud die Einstellungen der Integration und geben Sie als Webhook-URL die von Ihnen kopierte URL ein. Der geheime Schlüssel der Integration dient zur Signierung der Anfrage.

So finden Sie Ihr Sendcloud-Signaturschlüssel

Der geheime Schlüssel der Integration (oder der Webhook-Signaturschlüssel).

In der Sendcloud-eigenen Dokumentation zu Webhook-Signaturen unter finden Sie den genauen Wortlaut sowie Screenshots für Ihr Konto.

Fügen Sie dieses Geheimnis in das Feld „Secret“ des Webhooks unter Workflow Webhooks ein und speichern Sie es. Ab diesem Zeitpunkt wird jede Sendcloud-Zustellung überprüft, bevor sie Shopify Flow erreicht.

Was hier überprüft wird

Was Wert
Signaturzeile Sendcloud-Signature
Wo sich die Unterschrift befindet Der gesamte Wert des Headers
Was wurde unterzeichnet? {body}
Unterschrift HMAC-SHA256, hexadezimal kodiert
Zeitstempel Wird von diesem Absender nicht verwendet
Wiedergabeschutz Keine - dieser Absender signiert keinen Zeitstempel, daher bleibt jede gültige Signatur weiterhin gültig
Das Geheimnis Wird als Klartext verwendet. Fügen Sie den Text genau so ein, wie er vom Absender angegeben wird.

In der signierten Payload entspricht {body} byteweise dem Rohtext des Anfrage-Hauptteils.

Eine Anfrage, die eine dieser Bedingungen nicht erfüllt, wird mit dem Fehler 401 abgelehnt, in Hintergrund und Fehlerbehebung protokolliert und löst keinen Workflow aus.

Schritt 3 - Erstellen Sie den Workflow Shopify Flow

  1. Erstellen Sie in „Shopify Flow“ einen Workflow und wählen Sie den Trigger „Workflow Webhooks“ aus.
  2. Klicken Sie auf „Ereignisse aufzeichnen“ und senden Sie anschließend ein Testereignis über Sendcloud (oder verwenden Sie die Funktion „Test senden“ in Workflow Webhooks), damit Shopify Flow die Struktur Ihrer Daten erkennt.
  3. Jeder Webhook, den Sie besitzen, löst denselben Shopify Flow-Trigger aus. Fügen Sie daher eine erste Bedingung anhand der Webhook-ID hinzu, um diesen Workflow ausschließlich auf Sendcloud zu beschränken. Die ID wird auf der Webhook-Seite angezeigt.
  4. Fügen Sie Ihre Aktionen hinzu - taggen Sie einen Kunden, fügen Sie eine Notiz hinzu, versenden Sie eine interne E-Mail, aktualisieren Sie ein Metafeld.
Shopify Flow
Wählen Sie unter Shopify Flow die Option „Select a trigger“ aus, öffnen Sie Workflow Webhooks und wählen Sie „Webhook Trigger“ aus.
Eine Shopify Flow-Bedingung: Die Webhook-ID entspricht der ID eines Webhooks
Der erste Schritt jedes Workflows: eine Bedingung bezüglich der Webhook-ID, damit der Workflow nur für diesen Webhook ausgeführt wird.
Der fertige Workflow: Webhook-Trigger, eine Bedingung basierend auf der Webhook-ID, anschließend „Interne E-Mail senden“ im „True“-Zweig
Der fertige Workflow: Trigger, Bedingung anhand der Webhook-ID, anschließend Ihre Aktion im „True“-Zweig.

Schritt 4 - Testen Sie das System durchgehend

Lösen Sie ein echtes Ereignis in Sendcloud aus. Unter „Workflow Webhooks“ → „History“ sollten Sie den Aufruf mit dem Status „Success“ sehen. Sollte die Signatur fehlerhaft sein, erhalten Sie stattdessen einen fehlgeschlagenen Eintrag mit der entsprechenden Begründung; unter Überprüfung signierter Webhooks finden Sie Erläuterungen zum Signatur-Tester, der Ihnen genau anzeigt, welcher Schritt fehlgeschlagen ist.

Ein Aufruf wurde im Protokoll „History“ mit seinen Anforderungsheadern, der Payload, dem Status, der Dauer und den Kennungen aufgezeichnet
Ein in „History“ übermittelter Vorgang: Der Status „Erfolgreich“ bedeutet, dass Shopify Flow diesen akzeptiert hat.
Die Signatur stimmt nicht überein▾

In dieser Bestellung: das Geheimnis (die häufigste Ursache - ein überflüssiges Leerzeichen oder ein Schlüssel aus der falschen Umgebung), ob der Absender das Geheimnis eines anderen Endpunkts verwendet und ob irgendetwas zwischen Sendcloud und der App den Hauptteil umschreibt. Signaturen beziehen sich auf die Rohbytes, sodass ein Proxy, der JSON neu formatiert, diese Signaturen ungültig macht. Der Signatur-Tester auf der Seite für Webhooks zeigt den genauen Text an, der signiert wurde.

Bei jeder Anfrage erhalte ich den Fehlercode 401▾

Bitte überprüfen Sie, ob die Authentifizierung des Webhooks auf „HMAC“ eingestellt ist und der Anbieter „Sendcloud“ ausgewählt ist, ob das Geheimnis eingegeben wurde und ob Sendcloud die Daten genau an die URL sendet, wie sie in der App angezeigt wird, einschließlich des Codes am Ende.

Im Verlauf wird nichts angezeigt▾

Die Anfrage ist nie angekommen. Überprüfen Sie die URL in Sendcloud noch einmal und sehen Sie sich im Sendcloud-Zustellungsprotokoll die erhaltene Antwort an. Ein 404 bedeutet, dass der Webhook falsch ist oder gelöscht wurde; ein 429 bedeutet, dass Sie das Aufruflimit Ihres Tarifs überschritten haben - siehe Pläne und Nutzung.

Der Workflow wird bei den falschen Ereignissen ausgeführt▾

Jeder Webhook in Ihrem Shop löst denselben Shopify Flow-Trigger aus. Fügen Sie als ersten Schritt des Workflows eine Bedingung für die Webhook-ID hinzu oder schränken Sie die Ereignisse ein, die Sie von Sendcloud senden.

Verwandte Themen