Shopify events: order-update
Het order-update-event wordt, zoals de naam al aangeeft, getriggerd wanneer een bestelling wordt bijgewerkt in de Shopify-webshop. Dit wordt middels een webhook doorgegeven aan Copernica, waardoor er, zodra een bestelling aangepast is, opvolgacties uitgevoerd kunnen worden.
Variabelen
Alle velden die teruggegeven worden door de Shopify Admin API voor een order zijn beschikbaar. Deze variabelen zijn direct beschikbaar via de 'trigger'-variabelen in opvolgacties en mailings, bijvoorbeeld: {$trigger.id}.
Handige variabelen
De volgende velden zijn vaak handig om te gebruiken in opvolgacties en mailings:
- {$trigger.totalPriceSet.presentmentMoney}: de totaalprijs van de bestelling
- {$trigger.createdAt}: het tijdstip waarop de bestelling geplaatst is
- {$trigger.customer}: de klant die de bestelling geplaatst heeft
- {$trigger.customer.first_name}: de voornaam van de klant die de bestelling geplaatst heeft
- {$trigger.lineItems}: een lijst van de producten in de bestelling
- {$trigger.totalDiscountsSet.presentmentMoney}: de gegeven korting op een bestelling
- {$trigger.shippingAddress}: het verzendadres van de bestelling
Meer informatie over de beschikbar velden en het gebruik vind je in dit artikel.
Webhook attributen
Wanneer je een van bovenstaande velden gebruikt, worden de gegevens automatisch opgevraagd bij jouw Shopify webshop. Dit kan er echter voor zorgen dat het opbouwen van een e-maildocument wat langer duurt. In veel gevallen staan de gegevens die je wilt gebruiken al rechtstreeks in de webhook data vanuit Shopify. Deze kun je gebruiken met de {$trigger.webhook} Smarty-variabele. De beschikbare velden kun je vinden in de Shopify-documentatie. Het is sterk aangeraden om zoveel mogelijk deze attributen te gebruiken, aangezien dit API calls naar je webshop scheelt, waardoor je mails sneller kunnen opbouwen, en je niet tegen een rate limit van de API aan loopt.
Handige attributen
De volgende velden zijn vaak handig om te gebruiken in opvolgacties en mailings:
- {$trigger.webhook.notify_customer}: of de klant op de hoogte gebracht moet worden
- {$trigger.webhook.line_items[].additions}: een lijst van de producten toegevoegd aan de bestelling
- {$trigger.webhook.line_items[].removals}: een lijst van de producten verwijderd uit de bestelling
Voorbeeld: bevestiging van aanpassing
Met de volgende Smarty-code halen we de naam van de klant op en vermelden we
welke producten er zijn toegevoegd aan en verwijderd uit de bestelling. Let op
dat je de $shopify
-variabele bijwerkt met de identifier van je integratie.
Beste {$trigger.customer.firstName},
De volgende items zijn toegevoegd aan je bestelling:
{foreach $trigger.attributes.line_items.additions as $item}
{assign item="product" value=$shopify.product[$item.id]}
- {$item.delta}x: {$product.title}
{/foreach}
De volgende items zijn verwijderd uit je bestelling:
{foreach $trigger.attributes.line_items.removals as $item}
{assign item="product" value=$shopify.product[$item.id]}
- {$item.delta}x: {$product.title}
{/foreach}