Geschiedenis en probleemoplossing
Elk verzoek dat bij een webhook binnenkomt, wordt geregistreerd - ongeacht of het is geaccepteerd of afgewezen. De geschiedenis is de eerste plaats waar u moet kijken wanneer er iets niet is gebeurd.
Het voorlezen van een openingsgebed
Open ‘Geschiedenis’ en klik op een vermelding. U krijgt dan de tijdstempel, de status, de aanroeper, de duur, de payload, de (gemaskeerde) verzoekheaders, de queryreeks en, in geval van fouten, de foutmelding en elke herhalingspoging te zien.
| Status | Betekenis |
|---|---|
| In behandeling | Geaccepteerd en in de wachtrij geplaatst, nog niet aan Shopify Flow geleverd |
| Succes | Shopify Flow heeft de trigger geaccepteerd |
| Mislukt | De levering is definitief mislukt - op de detailpagina wordt uitgelegd waarom |
De kolom ‘Invoked by’ geeft aan waar een oproep vandaan kwam: User (een extern systeem), Flow (een Shopify Flow-actie die de webhook aanroept), Test (de knop ‘Test’) of CURL.


Afwijzingen, en wat ze elk betekenen
Een afgewezen verzoek komt nooit bij Shopify Flow terecht. De inhoud van het antwoord bevat een machinaal leesbare code:
| Code | HTTP | Wat ging er mis? | Oplossing |
|---|---|---|---|
webhook_not_found |
404 | Onbekende korte code | Controleer de URL; de webhook is mogelijk verwijderd |
webhook_disabled |
400 | De webhook is uitgeschakeld | Schakel deze functie in op de webhook-pagina |
unauthorized |
401 | Token ontbreekt of is onjuist | Controleer het token en de naam van de header |
missing_signature |
401 | HMAC-modus, zonder handtekeningheader | Verzend de handtekeningheader die uw voorinstelling verwacht |
invalid_signature |
401 | De handtekening kwam niet overeen | Controleer of het ondertekeningsgeheim correct is en of de inhoud tijdens de overdracht niet is gewijzigd |
auth_not_configured |
401 | Auth-modus is ingesteld, maar er is geen token opgeslagen | Sla een token op in de webhook |
invalid_json |
400 | De inhoud is geen geldige JSON | Stuur geldige JSON-gegevens, of stel de Content-Type in die uw berichttekst daadwerkelijk heeft (formuliergegevens en XML worden ook gelezen) |
invalid_body |
400 | Een formulier of XML-body kon niet worden gelezen, of de body is de letterlijke tekst null |
Verzend een JSON-object of een berichttekst die overeenkomt met de Content-Type-header |
mapping_field_missing |
400 | Een toegewezen veld ontbreekt in de payload | Het veld verzenden of de koppeling ervan opheffen |
unexpected_fields |
400 | Het object bevat velden die niet zijn toegewezen | Breng ze in kaart, verwijder ze of schakel de optie ‘Aangepaste verzoektekst toestaan’ in |
ip_not_allowed |
403 | Het adres van de beller staat niet op de lijst met toegestane IP-adressen van de webhook | Zie IP-toegangslijsten |
invalid_proxy_signature |
401 | Er werd rechtstreeks verbinding gemaakt met het proxy-adres van de app, in plaats van via het domein van uw winkel | Gebruik de webhook-URL precies zoals deze in de app wordt weergegeven - zie CORS, de URL van de app-proxy en browserverzoeken |
payload_too_large |
413 | The Shopify Flow payload is larger than 50 KB | Verzend minder gegevens, of schakel de schakelaars voor het opvragen van gegevens uit |
quota_exceeded |
400 | De limiet van het abonnement is bereikt | Zie Abonnementen en gebruik |
Live Request Inspector
Zolang u een webhook in de editor geopend hebt, toont de inspector de binnenkomende verzoeken in realtime - inclusief de afgewezen verzoeken, met vermelding van de reden. Dit is veruit de snelste manier om een verzender te debuggen: verstuur een verzoek en kijk hoe het aankomt.
Ook verwijderde dubbele vermeldingen verschijnen hier, waarbij ze als zodanig zijn aangeduid - zie Bescherming tegen dubbele leveringen.
Herhaling
Elke eerdere aanroep kan vanaf de detailpagina opnieuw worden afgespeeld. Bij het opnieuw afspelen wordt dezelfde payload via dezelfde webhook opnieuw verzonden.
Er zijn twee dingen waarvoor het bijzonder geschikt is:
- Een Shopify Flow-workflow opzetten. Registreer gebeurtenissen via de Webhook-trigger en speel vervolgens een echte Voer deze aanroep uit, zodat Shopify Flow uw daadwerkelijke veldnamen leert kennen.
- Herstel na een onderbroken workflow. Corrigeer de workflow en speel vervolgens de gebeurtenissen die zijn uitgevoerd opnieuw af hoewel het verkeerd was.
Herhalingen worden in de geschiedenis als zodanig gemarkeerd en tellen niet mee voor uw abonnement.
Veelvoorkomende situaties
Er komen oproepen binnen, maar de workflow wordt niet uitgevoerd. Dit heeft vrijwel altijd te maken met de voorwaarde voor de Webhook-ID. Een Webhook Trigger-workflow ontvangt gebeurtenissen van elke webhook die u bezit, dus er is een voorwaarde nodig die overeenkomt met de specifieke Webhook-ID - zie Maak uw eerste webhook aan.
De workflow wordt twee keer uitgevoerd. Ofwel maken twee workflows gebruik van de Webhook-trigger zonder specifieke voorwaarden, ofwel voert uw afzender een herhalingspoging uit. Aan de hand van de geschiedenis kunt u zien wat het geval is: twee vermeldingen betekenen dat er twee verzoeken zijn binnengekomen. Schakel de optie Bescherming tegen dubbele leveringen in.
Er staat helemaal niets in de geschiedenis. Het verzoek is nooit bij ons aangekomen. Controleer de URL en de korte code, en ga na of de afzender aan zijn kant geen problemen ondervindt met TLS of DNS.
De status blijft op ‘In behandeling’ staan. De levering wordt met een backoff-interval opnieuw geprobeerd; bij een permanente fout verandert de status in ‘Mislukt’ met vermelding van de reden. Indien de status ongewoon lang op ‘In behandeling’ blijft staan, controleer dan status.codecreationlabs.cloud.

