Erstellen Sie Ihren ersten Webhook

Hier erfahren Sie, wie Sie von einer leeren App zu einem Shopify Flow-Workflow gelangen, der ausgeführt wird, wenn Ihr eigenes System dies anweist. Die Dauer beträgt etwa zehn Minuten.

1. Erstellen Sie einen Webhook

Webhooks -> Webhook erstellen. Auf der Seite werden Sie zunächst gefragt, wodurch dieser Webhook ausgelöst wird, und die entsprechenden Einstellungen werden entsprechend vorgenommen:

Ihre Antwort Was Sie erhalten
Ein Automatisierungstool (n8n, Make, Zapier, Ihr eigener Code) Ein generiertes Token, das Sie direkt in das Tool einfügen können
Ein Dienst, der seine Webhooks signiert (Stripe, GitHub, …) Signaturprüfung für den von Ihnen gewählten Dienst - siehe Überprüfung signierter Webhooks
Ein Browser- oder Storefront-Skript CORS ist aktiviert - siehe CORS, die Proxy-URL der App und Browser-Aufrufe
Nichts - führen Sie den Vorgang nach einem Zeitplan aus Ein Webhook, der eine URL nach einem festgelegten Zeitplan abruft; anschließend wird die Registerkarte „Zeitplan“ geöffnet - siehe Planmäßige URL-Abfrage
Etwas anderes oder später entscheiden Sie wählen die Authentifizierungsmethode selbst aus

Geben Sie ihr einen Namen, den Sie später wiedererkennen werden („Erinnerung für die Karte im Portemonnaie“, „Kontaktformular“), und speichern Sie die Einstellung. Alle Einstellungen können später geändert werden.

Sie verfügen nun über eine Webhook-URL, die mit einem Kurzcode endet, beispielsweise https://.../webhook/ab12cd34. Diese URL ist der Endpunkt, an den Ihr System einen POST-Request sendet.

Auf der Seite „Webhook erstellen“ wird die Frage „Was löst diesen Webhook aus?“ gestellt, wobei die Option „Nichts - nach Zeitplan ausführen“ ausgewählt ist und ein Hinweis darauf erscheint, dass als Nächstes die Registerkarte „Zeitplan“ geöffnet wird
Die Erstellung eines Webhooks beginnt mit der Frage, was ihn aufrufen soll. Je nach Antwort wird die entsprechende Authentifizierung eingerichtet; bei der Antwort „Nichts - nach Zeitplan ausführen“ wird anschließend die Registerkarte „Zeitplan“ geöffnet.
Der Webhook-Editor: Name und Authentifizierung auf der linken Seite, die Endpunkt-Karte mit Status, Webhook-URL und Webhook-ID auf der rechten Seite, darüber „Live-Vorschau“, „Testen“ und „Nutzung“
Der Webhook-Editor. Die Einstellungen befinden sich auf der linken Seite; die Karte „Endpunkt“ auf der rechten Seite enthält die Webhook-URL, die Sie dem Absender mitteilen müssen, sowie die Webhook-ID, die Sie unter Shopify Flow verwenden.

2. Legen Sie fest, wie Anrufer ihre Identität nachweisen sollen

Öffnen Sie den Webhook und wählen Sie eine Authentifizierungsmethode aus. Einen vollständigen Vergleich finden Sie unter Authentifizierung - hier die Kurzfassung:

  • Statisches Token - für fast jeden geeignet. Klicken Sie auf die Schaltfläche „Generieren“, kopieren Sie das Token, Senden Sie diese im Header X-Api-Key.
  • HMAC SHA-256 - für Absender, die ihre Anfragen signieren (Stripe, GitHub und ähnliche Dienste).
  • Keine - dient nur zu Testzwecken. Jeder, der die URL kennt, kann Ihren Workflow auslösen.

3. Teilen Sie uns bitte mit, welche Bereiche für Sie von Bedeutung sind

Ordnen Sie unter „Erweiterte Einstellungen“ bis zu vier Felder aus Ihrer JSON-Payload zu. Wenn Ihr System Folgendes sendet:

Die Registerkarte „Erweiterte Einstellungen“, auf der die Felder 1 bis 4 den Werten „orderId“, „status“, „total“ und „note“ zugeordnet sind
Erweiterte Einstellungen: Ordnen Sie bis zu vier Werte aus dem Request-Body zu. Diese werden in Shopify Flow als „fieldOne“ bis „fieldFour“ bereitgestellt.
json
{ "customer": { "email": "someone@example.com" }, "orderId": "1001" }

Leiten Sie fieldOne auf orderId und fieldTwo auf customer.email um - bei verschachtelten Pfaden verwenden Sie Punkte. Ausführliche Informationen finden Sie unter Zuordnung der Payload-Daten und Flow-Variablen.

4. Senden Sie eine Testanfrage

Ein Aufruf wurde im Protokoll „History“ mit seinen Anforderungsheadern, der Payload, dem Status, der Dauer und den Kennungen erfasst
Nach einer Testanfrage wird der Aufruf im Verlauf zusammen mit der empfangenen Payload angezeigt.
bash
curl -X POST https://your-app-url/webhook/ab12cd34 \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: your-token" \
  -d '{"orderId":"1001","customer":{"email":"someone@example.com"}}'

Öffnen Sie den Verlauf. Dort sollten Sie den Aufruf mit seinem Status, den Headern und der Payload sehen. Sollte er nicht aufgeführt sein, finden Sie unter Hintergrund und Fehlerbehebung eine Auflistung aller Ablehnungsgründe.

5. Erstellen Sie den „Flow“-Workflow

Erstellen Sie in „Shopify Flow“ einen Workflow, der mit dem Trigger **„Webhook-**Trigger“ beginnt.

  1. Fügen Sie den Trigger hinzu und klicken Sie auf „Ereignisse aufzeichnen“.
  2. Kommen Sie bitte hierher zurück, öffnen Sie den Aufruf im Verlauf und klicken Sie auf „Wiederholen“. Shopify Flow verfügt nun über eine Eine echte Beispiel-Payload, mit der man arbeiten kann - das ist viel einfacher, als Feldnamen zu erraten.
  3. Bedingung hinzufügen: Webhook ID entspricht der ID Ihres Webhooks (auf der Webhook-Seite angezeigt). Jeder „Webhook-Trigger“-Workflow empfängt Ereignisse von all Ihren Webhooks, daher gilt Folgendes: Diese Bedingung sorgt dafür, dass der Workflow ausschließlich auf diesen einen Fall reagiert.
  4. Fügen Sie Ihre Aktionen unter {{fieldOne}} bis {{fieldFour}} hinzu.
  5. Aktivieren Sie den Workflow.
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.
Das Pluszeichen unter dem Schritt „Webhook-Trigger“ wurde geöffnet und zeigte die Optionen „Aktion“ und „Bedingung“ an
Das Pluszeichen unter einem Schritt bietet die beiden Elemente, aus denen ein Workflow besteht: eine Bedingung und eine Aktion.
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.
Das Fenster „Variable hinzufügen“ von Shopify Flow für den Webhook-Trigger, in dem „webhookId“ sowie „fieldOne“ bis „fieldFour“ mit Beispielwerten aus einer kürzlich erfolgten Anfrage aufgeführt sind
Was der Trigger an Ihren Workflow übergibt: die Webhook-ID und Ihre vier zugeordneten Felder, dargestellt mit den Werten einer kürzlich erfolgten Anfrage.
Die Shopify Flow-Aktion „Interne E-Mail senden“ mit „fieldOne“ und „fieldTwo“ im Betreff sowie „fieldThree“ und „fieldFour“ im Text
Verwenden Sie die zugeordneten Felder überall dort, wo eine Shopify Flow-Aktion eine Variable benötigt, in diesem Fall im Betreff und im Text einer internen E-Mail.
Der fertige Workflow: Webhook-Trigger, eine Bedingung anhand 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.

6. In Betrieb nehmen

Richten Sie Ihr Produktivsystem auf die Webhook-URL aus. Überprüfen Sie die ersten paar Aufrufe im Verlauf, um sicherzustellen, dass sie eintreffen und erfolgreich verarbeitet werden.

Falls Ihr Absender nach Ablauf der Zeitüberschreitung einen erneuten Versuch unternimmt, aktivieren Sie die Option Schutz vor doppelten Lieferungen, damit Ihr Workflow durch einen erneuten Versuch nicht zweimal ausgeführt wird.

Die Seite „Webhooks“, auf der sechs Webhooks aufgelistet sind, jeweils mit der Anzahl der Aufrufe, den Authentifizierungsdaten und einer Kennzeichnung „Aktiviert“ oder „Deaktiviert“
Die Seite „Webhooks“. In jeder Zeile wird angezeigt, wie oft der Webhook aufgerufen wurde, wie sich die Aufrufer authentifizieren und ob er aktiviert ist; über das Menü auf der rechten Seite können Sie ihn aktivieren, deaktivieren oder löschen.