# Shopify + Brew

Start automatiseringen in Brew vanuit events van Shopify over klanten, bestellingen, checkouts en orderafhandeling. Voor flows voor welkomstmails, betaalbewijzen, verlaten checkouts en verzending.

Canonieke URL: https://brew.new/nl/browse/integrations/shopify

- Richting: Inkomend
- Koppelmethode: Webhookgeheim
- Eventtriggers voor e-commerce

## Live mogelijkheden

- **Eventtriggers**: Start automatiseringen in Brew vanuit events van Shopify over klanten, bestellingen, checkouts en orderafhandeling. Voor flows voor welkomstmails, betaalbewijzen, verlaten checkouts en verzending.

## Maak van webshopevents nuttige e-mails

Koppel Shopify om merkconforme e-mails te versturen wanneer een klant zich aanmeldt, een bestelling wordt betaald, een checkout wordt aangemaakt of een zending wordt verstuurd. Brew ondersteunt 13 eventtypen van Shopify-webhooks voor klanten, bestellingen, checkouts en orderafhandeling.

Voor de koppeling gebruik je webhooks die je zelf aanmaakt in het Shopify-beheercentrum. Je hebt geen Shopify-app, client-ID of OAuth nodig. Shopify blijft verantwoordelijk voor bestellingen, betalingen en orderafhandeling. Brew maakt en verstuurt de e-mails.


## Wat je kunt bouwen

- Welkomstmails voor klanten: Shopify verstuurt customers/create wanneer er in Shopify een klantrecord wordt aangemaakt.
- Orderbevestigingen en betaalbewijzen: Shopify verstuurt orders/create wanneer een bestelling wordt geplaatst en orders/paid wanneer de betaling is geïnd. Beide bevatten orderNumber, totalPrice, currency en financialStatus. Kies er per bericht één om dubbele e-mails te voorkomen.
- Annuleringsmeldingen: Shopify verstuurt orders/cancelled wanneer een bestelling wordt geannuleerd; het event bevat het ordernummer en de betalingsstatus.
- Verzendmeldingen: fulfillments/create bevat trackingNumber en trackingUrl als de zending die heeft. Shopify verstuurt ook orders/fulfilled wanneer een bestelling wordt verzonden, maar dat event heeft geen trackingvelden, dus kies één trigger per verzendmail.
- Opvolging van de orderafhandeling: Shopify verstuurt fulfillments/update wanneer een zending wordt gewijzigd. fulfillmentStatus is de verwerkingsstatus van de zending, zoals pending, success of failure, en geen bevestiging van de bezorging. Wil je na de bezorging bedanken of om een review vragen, verstuur dan pas een aangepast event naar Brew nadat je applicatie de bezorging heeft bevestigd.
- Checkoutherinneringen: Shopify verstuurt checkouts/create wanneer een checkout wordt aangemaakt; het event kan abandonedCheckoutUrl bevatten, een link waarmee de checkout wordt hervat.
- Stem dit af op de klantmeldingen van Shopify, zodat een klant niet van allebei hetzelfde bericht krijgt.

## Checkoutherinneringen vragen om een statuscontrole

Shopify verstuurt checkouts/create wanneer de checkout wordt aangemaakt, niet wanneer die wordt verlaten. Een herinneringsflow start daar en wacht. Een geplaatste bestelling stopt een run die al loopt niet.

Na een wachtstap leest een voorwaarde actuele contactvelden, zoals shopify_last_order_status en shopify_last_order_at. Die beschrijven de laatste bestelling die Brew heeft gezien, niet deze specifieke checkout, dus ze kunnen niet bewijzen dat deze checkout een bestelling is geworden.

Shopify verstuurt checkouts/update telkens wanneer de checkout verandert, niet na een vaste wachttijd, dus op zichzelf werkt dat event niet als getimede tweede herinnering.

Een checkout zonder e-mailadres start geen automatisering, tenzij Brew al een e-mailadres heeft gezien voor dezelfde klant-ID van Shopify. Test vóór het publiceren een checkout die tot een bestelling leidt en een die dat niet doet.


## Shopify instellen in Brew

- Open Integraties, kies Shopify en klik op Webhook-URL genereren.
- Vul je myshopify.com-domein in, bijvoorbeeld acme.myshopify.com, en niet het eigen domein van je webshop. Brew vergelijkt het bij elke webhook met de header X-Shopify-Shop-Domain.
- Open in het Shopify-beheercentrum Instellingen > Meldingen en scrol naar Webhooks. Shopify stuurt een eventtype alleen naar een webhook die daarvoor is aangemaakt, dus maak één webhook aan per event dat je wilt gebruiken. Kies JSON als indeling, plak de URL van Brew en kies de nieuwste API-versie.
- Kopieer het ondertekeningsgeheim onderaan het gedeelte Webhooks. Hetzelfde geheim ondertekent elke webhook van de webshop. Plak het in Brew en klik op Koppelen.
- Open het menu van elke webhook die je hebt aangemaakt en kies Test verzenden. Na de eerste test verandert de status in Brew van “Wacht op testevent” in “Gekoppeld”, en elke test markeert het bijbehorende event als ontvangen. Een test verifieert alleen de webhook. Brew voegt geen contact toe en start geen automatisering.
- Bij het koppelen maakt Brew triggers aan voor alle 13 eventtypen. Er is geen schakelaar om events in of uit te schakelen, maar een eventtype zonder Shopify-webhook komt nooit binnen.
- Maak een automatisering aan, selecteer het bijbehorende Shopify-event en verstuur een test zolang de automatisering nog de status Concept heeft. Alleen automatiseringen met de status Live worden uitgevoerd wanneer er een overeenkomend event binnenkomt.

## Ondersteunde Shopify-events

Brew ondersteunt de volgende 13 eventtypen van Shopify-webhooks:

- customers/create
- customers/update
- customers/delete
- customers/enable
- customers/disable
- orders/create
- orders/paid
- orders/cancelled
- orders/fulfilled
- checkouts/create
- checkouts/update
- fulfillments/create
- fulfillments/update

## Contactsynchronisatie en personalisatie

Elk geverifieerd event met een echt e-mailadres maakt een contact in Brew aan of werkt het contact met dat e-mailadres bij, ongeacht of een automatisering het event gebruikt. Als die gegevens er zijn, vult Brew de voor- en achternaam, shopify_customer_id en shopify_shop_domain.

Bestelevents werken shopify_last_order_number, shopify_last_order_total, shopify_last_order_currency en shopify_last_order_at bij. orders/create, orders/paid en orders/cancelled vullen ook shopify_last_order_status, en orders/fulfilled vult shopify_last_fulfillment_status. Events over orderafhandeling werken shopify_last_tracking_number, shopify_last_tracking_url en shopify_last_fulfillment_status bij. Checkoutevents werken shopify_last_checkout_url bij.

customers/delete, customers/disable en customers/enable zetten shopify_account_status op deleted, disabled of active. Brew verwijdert het contact niet en meldt het ook niet af, dus filter op dat veld waar het ertoe doet.

Gebruik voor personalisatietags het gedeclareerde payloadschema van het gekozen event. Elk event bevat, voor zover beschikbaar, email, firstName, lastName, currency, shopDomain en createdAt. Bestelevents voegen orderNumber, totalPrice, financialStatus en fulfillmentStatus toe. Checkoutevents voegen totalPrice en abandonedCheckoutUrl toe. Events over orderafhandeling voegen trackingNumber, trackingUrl en fulfillmentStatus toe.

totalPrice is het bedrag dat Shopify in de valuta van de bestelling verstuurt, zoals 49.95, en niet in centen. Payloads bevatten geen orderregels, en ID’s van Shopify-objecten zijn geen personalisatietags.

De klantwebhooks van Shopify bevatten geen marketingtoestemming meer, dus Brew ontvangt die niet. Leg toestemming apart vast en controleer die vóór promotionele verzendingen.


## Ondersteunt Brew terugbetalingen en winkelwagenevents?

Nee. Shopify heeft geen eventtype orders/refunded, en de webhook voor terugbetalingen bevat geen klant. carts/update bevat geen identiteit van een ontvanger, dus Brew kan op basis daarvan niet veilig versturen. Voeg voor die eventtypen geen webhooks toe.


## Waarom verschijnt er een event zonder dat er een e-mail wordt verstuurd?

Een event ontvangen en een e-mail versturen zijn aparte stappen. Controleer of een overeenkomende automatisering op Live staat en bekijk daarna de filters, de uitvoeringsgeschiedenis, of de ontvanger in aanmerking komt en of het verzenddomein in orde is. Een levering via Test verzenden verschijnt als testevent en start nooit een automatisering. Een event zonder e-mailadres voor een onbekende klant wordt vastgelegd als onopgelost.


## Limieten en problemen oplossen

- Brew kan geen klanten, bestellingen of zendingen in Shopify wijzigen.
- Een 401 met shop_domain_mismatch betekent dat het domein dat je in Brew hebt ingevuld niet overeenkomt met de webshop die de webhook verstuurt. Koppel opnieuw met het canonieke myshopify.com-domein.
- Vernieuw je het ondertekeningsgeheim in Shopify, koppel dan opnieuw met de nieuwe waarde. Brew vereist dat het geheim minstens 16 tekens lang is.
- Toont een trigger “Nog geen events”, maak dan een Shopify-webhook aan voor dat eventtype en verstuur er een test vanuit.
- Bestelwebhooks laten de naam van de klant soms weg. Geef de personalisatietag firstName een standaardwaarde, zoals een algemene aanhef.
- Controleer de toestemming en het doel van elke e-mail. Shopify-klanten synchroniseren geeft je nog geen toestemming voor promotionele verzendingen.

## Bronnen en handleidingen

- [Handleiding voor Shopify](https://docs.brew.new/integrations/import/shopify)
- [Een automatisering bouwen](https://docs.brew.new/create-emails/build-an-automation)
- [Personalisatietags](https://docs.brew.new/create-emails/merge-tags)
- [Wat je met Brew kunt versturen](https://docs.brew.new/get-started/what-you-can-send)
- [Webhooks in Shopify](https://shopify.dev/docs/apps/build/webhooks)

## Gerelateerd

- [Alle integraties](https://brew.new/nl/browse/integrations.md)
- [Account aanmaken](https://brew.new/nl/sign-up.md)
- Website: https://brew.new
