Hoe koppelt u Svix aan Shopify Flow?
Svix vormt de webhook-infrastructuur achter Clerk, Resend, Superwall en tal van andere producten. Indien uw verzender via Svix verzendt, controleert deze voorinstelling dit. Workflow Webhooks zet die oproep om in een ‘Shopify Flow’-trigger, zodat uw winkel hierop kan reageren: een klant taggen, een opmerking bij een bestelling toevoegen, een interne e-mail versturen, een metaveld bijwerken - alles Shopify Flow kan doen.
Deze handleiding beschrijft het volledige proces - Svix verzendt, Workflow Webhooks ontvangt en verifieert, Shopify Flow voert de actie uit - waarbij bij elk verzoek de HMAC-handtekening van Svix wordt gecontroleerd, zodat uitsluitend Svix uw workflow kan starten.
Wat u kunt bouwen
- Tag een klant van Shopify wanneer Clerk meldt dat deze zich heeft aangemeld of zijn e-mailadres heeft geverifieerd in uw app.
- Reageer op een gebeurtenis met betrekking tot een herverzending of een afwijzing en markeer de klant wiens adres ongeldig is.
- Ontvang berichten van elk product dat op Svix draait, zonder dat u een aangepaste handtekening hoeft in te stellen.
Typische gebeurtenissen die kunnen worden verzonden: elke gebeurtenis die door de verzendende dienst wordt gedefinieerd.
Dezelfde voorinstelling controleert ook webhooks van Clerk, Resend en Superwall.
Voordat u begint
- Workflow Webhooks geïnstalleerd in uw Shopify-winkel.
- Shopify Flow geïnstalleerd, dat gratis te downloaden is via de App Store op Shopify.
- Een account op Svix waarmee u webhooks kunt aanmaken.
Stap 1 - Maak de webhook aan op Workflow Webhooks
- Ga naar Workflow Webhooks -> Webhooks -> Maak een webhook aan en geef deze een naam die u in Shopify Flow zult herkennen, bijvoorbeeld
Svix events. - Kies onder ‘Authenticatie’ de optie ‘HMAC’.
- Kies onder ‘Signature provider’ voor Svix. De app vult de header, het algoritme, de ondertekende payload en het replay-venster automatisch voor u in - u hoeft verder niets meer in te stellen.
- Laat het veld ‘geheim’ voorlopig leeg en klik op ‘Opslaan’. Kopieer de webhook-URL die op de pagina wordt weergegeven.
Zie Authenticatie voor de overige authenticatiemodi en Toewijzing van payloads en Flow-variabelen voor informatie over welke velden naar Shopify Flow worden verzonden.
Stap 2 - Voeg het eindpunt toe in Svix
Voeg de URL toe als eindpunt in de webhook-instellingen van de verzendende dienst en bekijk en kopieer vervolgens het ondertekeningsgeheim (dit begint met whsec_).
Hoe u uw Svix-ondertekeningsgeheim kunt vinden
Het geheim voor het ondertekenen van eindpunten, beginnend met ‘whsec_’, uit de instellingen van de webhook van de dienst.
In de documentatie van Svix zelf over webhook-handtekeningen () vindt u de exacte bewoordingen en schermafbeeldingen voor uw account.
Plak de geheime code in het veld ‘Secret’ van de webhook op Workflow Webhooks en sla deze op. Vanaf dat moment wordt elke Svix-levering geverifieerd voordat deze Shopify Flow bereikt.
Wat hiermee wordt gecontroleerd
| Wat | Waarde |
|---|---|
| Handtekeningkoptekst | svix-signature |
| Waar de handtekening zich bevindt | De waarde van de header, na het voorvoegsel v1, |
| Wat is ondertekend? | {header:svix-id}.{timestamp}.{body} |
| Handtekening | HMAC-SHA256, gecodeerd met Base64 |
| Tijdstempel | De header svix-timestamp, uitgedrukt in Unix-seconden |
| Bescherming tegen herhaling | Verzoeken waarvan de ondertekende tijdstempel meer dan 5 minuten in de verleden tijd ligt, worden afgewezen |
| Het geheim | Voor gebruik wordt de tekst in Base64 gedecodeerd. De voorvoegsel whsec_ wordt vóór het decoderen verwijderd. Plak de tekst precies zoals de afzender deze weergeeft. |
In de ondertekende payload is {body} de onbewerkte verzoektekst, byte voor byte, is {timestamp} de hierboven vermelde tijdstempel en is {header:svix-id} de verzoekheader svix-id.
Een verzoek dat aan een van deze voorwaarden niet voldoet, wordt afgewezen met de foutmelding 401, wordt geregistreerd in Geschiedenis en probleemoplossing en leidt nooit tot het starten van een workflow.
Stap 3 - Stel de Shopify Flow-workflow samen
- Maak in ‘Shopify Flow’ een workflow aan en kies de trigger ‘Workflow Webhooks’.
- Klik op ‘Gebeurtenissen registreren’ en verstuur vervolgens een testgebeurtenis vanuit Svix (of gebruik de optie ‘Test verzenden’ in Workflow Webhooks), zodat Shopify Flow de structuur van uw gegevens leert kennen.
- Elke webhook die u bezit, activeert dezelfde Shopify Flow-trigger; voeg daarom een eerste voorwaarde toe op basis van de webhook-ID om deze workflow uitsluitend voor Svix te reserveren. De ID wordt weergegeven op de webhook-pagina.
- Voeg uw acties toe - tag een klant, voeg een notitie toe, verstuur een interne e-mail, werk een Metaveld bij.



Stap 4 - Test het van begin tot eind
Activeer een daadwerkelijke gebeurtenis in Svix. Onder Workflow Webhooks -> Geschiedenis zou u de aanroep moeten zien met de status ‘Succes’. Indien de handtekening onjuist was, krijgt u in plaats daarvan een vermelding van een mislukking met de bijbehorende reden, en op Gecertificeerde webhooks verifiëren vindt u uitleg over de handtekeningcontrole, die u precies laat zien welke stap is mislukt.

De handtekening komt niet overeen▾
In deze bestelling: het geheim (de meest voorkomende oorzaak - een extra spatie of een sleutel uit de verkeerde omgeving), of de afzender het geheim van een ander eindpunt gebruikt, en of er iets tussen Svix en de app staat dat de body herschrijft. Handtekeningen hebben betrekking op de ruwe bytes, dus een proxy die JSON opnieuw opmaakt, maakt ze ongeldig. De handtekeningtester op de webhook-pagina toont de exacte tekst die is ondertekend.
Bij elk verzoek krijg ik een 401-foutmelding▾
Controleer of de authenticatie van de webhook is ingesteld op HMAC met de Svix-provider geselecteerd, of het geheim is ingevuld en of Svix de gegevens naar de URL verstuurt precies zoals de app deze weergeeft, inclusief de code aan het einde.
Er wordt niets weergegeven in de geschiedenis▾
Het verzoek is nooit aangekomen. Controleer de URL nogmaals in Svix en bekijk het eigen afleveringslogboek van Svix om te zien welk antwoord het heeft ontvangen. Een 404 duidt op een onjuiste of verwijderde webhook, een 429 betekent dat u de limiet voor het aantal aanroepen van uw abonnement hebt overschreden - zie Abonnementen en gebruik.
De workflow wordt voor de verkeerde gebeurtenissen uitgevoerd▾
Elke webhook in uw winkel activeert dezelfde Shopify Flow-trigger. Voeg als eerste stap van de workflow een voorwaarde toe op basis van de webhook-ID, of beperk de gebeurtenissen die u vanuit Svix verstuurt.
Verzoeken mislukken met de foutmelding „tijdstempel buiten de tolerantiegrens“▾
Svix voegt een tijdstempel toe en de app wijst alles af dat ouder is dan 5 minuten. Dit is doorgaans een klokprobleem aan de verzendende kant, of een verzending die Svix veel later opnieuw heeft geprobeerd met het oorspronkelijke tijdstempel. Herhalingspogingen van hetzelfde oorspronkelijke verzoek worden niet geaccepteerd; verzoek Svix om een nieuwe gebeurtenis te verzenden.
Gerelateerd
- Gecertificeerde webhooks verifiëren - elke aanbieder die wij controleren, en hoe wij een aanbieder beschrijven die wij niet controleren.
- Toewijzing van payloads en Flow-variabelen - de juiste velden uit de Payload halen en in Shopify Flow invoeren.
- Bescherming tegen dubbele leveringen - wat er gebeurt wanneer Svix een bezorgpoging herhaalt.
- Geschiedenis en probleemoplossing - het logboek van elk verzoek, inclusief de mogelijkheid tot het opnieuw afspelen ervan.

