Sådan forbinder du Zendesk med Shopify Flow

Zendesk kan udløse en Webhook fra en trigger eller en automatisering, hver gang der sker en ændring i en ticket. Workflow Webhooks omdanner dette kald til en Webhook i Shopify Flow, så din butik kan reagere på det: mærke en kunde, tilføje en ordrebemærkning, sende en intern e-mail, opdatere et metafelt - alt, hvad Shopify Flow kan gøre.

Denne vejledning beskriver hele forløbet - Zendesk sender, Workflow Webhooks modtager og verificerer, Shopify Flow udfører handlingen - hvor Zendesks HMAC-signatur kontrolleres ved hver eneste anmodning, så kun Zendesk kan igangsætte din arbejdsgang.

Hvad du kan bygge

  • Tag den kunde, der står bag en eskaleret sag (Shopify), så dit team kan se det i administrationspanelet.
  • Tilføj en ordrekommentar, når en supportanmodning vedrørende den pågældende ordre er løst.
  • Send en e-mail til en leder, når en vigtig kunde giver en dårlig tilfredshedsvurdering.

Typiske hændelser, der skal sendes: Der oprettes en sag, en sag løses, der indkommer en tilfredshedsvurdering.

Før du går i gang

  • Workflow Webhooks installeret på din Shopify-butik.
  • Shopify Flow installeret - den kan hentes gratis fra App Store på Shopify.
  • En konto på Zendesk med tilladelse til at oprette webhooks.

Trin 1 - Opret webhook på Workflow Webhooks

  1. Åbn Workflow Webhooks -> Webhooks -> Opret webhook, og giv den et navn, du kan genkende i Shopify Flow, f.eks. Zendesk events.
  2. Vælg HMAC under »Autentificering«.
  3. Vælg Zendesk under »Signaturudbyder«. Appen udfylder overskriften, algoritmen, den signerede payload og replay-vinduet for dig - der er ikke andet, du skal konfigurere.
  4. Lad feltet »Secret« være tomt foreløbig, og klik på »Gem«. Kopier den webhook-URL, der vises på siden.

Se Godkendelse for at få mere at vide om de øvrige godkendelsesmetoder, og Kortlægning af payload og strømningsvariabler for at vælge, hvilke felter der skal sendes til Shopify Flow.

Trin 2 - Tilføj endepunktet i Zendesk

I Zendesk Admin Center skal du åbne »Apps og integrationer« → »Webhooks«, oprette en webhook, der peger på den URL, du har kopieret, knytte den til en udløser og derefter bruge funktionen »Vis hemmelighed«.

Sådan finder du din Zendesk-signeringsnøgle

Webhookens signeringsnøgle (Admin Center → Apps og integrationer → Webhooks → Vis nøgle).

Zendesks egen dokumentation om webhook-signaturer indeholder den nøjagtige ordlyd og skærmbilleder, der gælder for din konto.

Indsæt den hemmelige nøgle i feltet »Secret« for webhooken på Workflow Webhooks og gem. Fra det øjeblik bliver hver eneste Zendesk-levering verificeret, inden den når frem til Shopify Flow.

Hvad dette kontrollerer

Hvad Værdi
Signaturhoved X-Zendesk-Webhook-Signature
Hvor underskriften er placeret Hele værdien i overskriften
Hvad der er underskrevet {header:x-zendesk-webhook-signature-timestamp}{body}
Underskrift HMAC-SHA256, base64-kodet
Tidstempel Bruges ikke af denne afsender
Beskyttelse mod gentagelse Ingen - denne afsender underskriver ikke et tidsstempel, så alle gyldige underskrifter forbliver gyldige
Hemmeligheden Bruges som almindelig tekst. Indsæt den nøjagtigt, som afsenderen har angivet den

I den signerede payload er {body} den rå anmodningstekst, byte for byte, og {header:x-zendesk-webhook-signature-timestamp} er x-zendesk-webhook-signature-timestamp-anmodningsheaderen.

En anmodning, der ikke opfylder et af disse kriterier, afvises med fejlmeddelelsen »401«, registreres i »Historik og fejlfinding« og igangsætter aldrig en arbejdsgang.

Trin 3 - Opret arbejdsgangen »Shopify Flow«

  1. I »Shopify Flow« skal du oprette en arbejdsgang og vælge udløseren »Workflow Webhooks«.
  2. Tryk på »Optag begivenheder«, og send derefter en testbegivenhed fra Zendesk (eller brug funktionen »Send test« i Workflow Webhooks), så Shopify Flow kan lære dine datas struktur at kende.
  3. Hver eneste webhook, du ejer, udløser den samme Shopify Flow-trigger, så tilføj en første betingelse baseret på webhook-id’et for at sikre, at denne arbejdsgang kun gælder for Zendesk. Id’et vises på webhook-siden.
  4. Tilføj dine handlinger - tag en kunde, tilføj en note, send en intern e-mail, opdater et metafelt.
Shopify Flow
I »Shopify Flow« skal du vælge »Select a trigger«, åbne »Workflow Webhooks« og vælge »Webhook Trigger«.
I en Shopify Flow-betingelse: Webhook-id’et er det samme som ID’et for en bestemt webhook
Det første trin i enhver arbejdsgang: en betingelse baseret på webhook-ID’et, så arbejdsgangen kun udføres for netop denne webhook.
Den færdige arbejdsgang: Webhook-udløser, en betingelse baseret på webhook-ID’et, og derefter »Send intern e-mail« på »True«-grenen
Den færdige arbejdsgang: udløser, betingelse baseret på webhook-ID’et, og derefter din handling i »True«-grenen.

Trin 4 - Test det fra start til slut

Udløs en reel hændelse i Zendesk. Under »Workflow Webhooks« → »History« bør du kunne se opkaldet med status »Success«. Hvis signaturen var forkert, vises der i stedet en fejlmeddelelse med årsagen, og på Bekræftelse af signerede webhooks finder du en signaturtester, der viser dig præcis, hvilket trin der mislykkedes.

En anmodning åbnet i History med dens anmodningsheadere, payload, status, varighed og identifikatorer
En gennemført begivenhed i History: Status »Success« betyder, at Shopify Flow har godkendt den.
Underskriften stemmer ikke overens▾

I denne rækkefølge: hemmeligheden (den mest almindelige årsag - et ekstra mellemrum eller en nøgle fra det forkerte miljø), om afsenderen bruger en anden endepunkts hemmelighed, og om noget mellem Zendesk og appen omskriver brødteksten. Signaturerne dækker de rå bytes, så en proxy, der omformaterer JSON, ødelægger dem. Signaturtesteren på webhook-siden viser den nøjagtige tekst, der blev signeret.

Jeg får en 401-fejl ved hver eneste forespørgsel▾

Kontroller, at webhookens godkendelse er indstillet til HMAC med Zendesk valgt som udbyder, at den hemmelige nøgle er udfyldt, og at Zendesk sender data til URL’en nøjagtigt som angivet i appen, inklusive koden i slutningen.

Der vises intet under »Historik«▾

Anmodningen blev aldrig modtaget. Tjek URL-adressen igen i Zendesk, og se i Zendesks egen leveringslog, hvilket svar systemet har modtaget. En fejlmeddelelse af typen »404« betyder, at webhooken er forkert eller er blevet slettet, mens en fejlmeddelelse af typen »429« betyder, at du har overskredet dit abonnements grænse for antallet af opkald - se Planer og anvendelse.

Arbejdsgangen kører for de forkerte begivenheder▾

Hver eneste webhook i din butik udløser den samme Flow-trigger. Tilføj en betingelse baseret på webhook-id’et som det første trin i arbejdsgangen, eller begræns de begivenheder, du sender fra Zendesk.

Relateret