Shopify Flow's activeren bij wijzigingen in metafields van klanten
We gaan uit van het volgende scenario om te begrijpen hoe we de trigger ‘Customer Metafield Update’ uit de app ‘Workflow Trigger Extensions’ kunnen gebruiken om producten te labelen op basis van de voorkeur van een klant wat betreft kledingmaten.
Scenario: De klant wijzigt zijn/haar maat → Alle bijbehorende producten worden automatisch van een tag voorzien
Een modewinkel biedt klanten de mogelijkheid om hun favoriete kledingmaat in hun profiel op te slaan. Telkens wanneer een klant zijn of haar maat bijwerkt, zoekt Flow automatisch alle producten die in die maat verkrijgbaar zijn en markeert deze, waardoor het eenvoudig wordt om op maat gebaseerde collecties, filters en gepersonaliseerde aanbevelingen samen te stellen.
Het metaveld custom.clothing_size in een klantrecord wordt bijgewerkt naar een nieuwe groottewaarde (bijv. "XL").
Een voorwaarde controleert of de waarde van het metaveld niet leeg is, zodat de workflow alleen wordt uitgevoerd als er een geldige grootte is ingesteld.
Flow zoekt alle producten op waarvan een variantoptie overeenkomt met de maat van de klant (bijvoorbeeld "XL").
Elk bijpassend product wordt voorzien van de tag available-in-XL (of de ingestelde maat), waardoor ze gemakkelijk te vinden zijn in collecties en winkels die op maat zijn gesorteerd.
Er wordt een e-mail naar de klant gestuurd om hem of haar te laten weten dat er nieuwe producten in zijn of haar maat te koop zijn.
Hoe deze flow op te zetten
Je kunt deze flow opzetten door deze 2 stappen te volgen:
- Voeg de trigger ‘Klantmetaveld’ toe aan de app
- Maak de Shopify Flow aan
Je kunt deze stappen ook bekijken in de onderstaande demovideo (de video heeft geen geluid):
1) Voeg een trigger toe aan het metafield ‘Klant’
Eerst moet je de trigger registreren op het metaveld van de klant dat je wilt volgen.
- Zorg er eerst voor dat je over de klanttoegang beschikt. Ga hiervoor naar Workflow Trigger Extensions → Dashboard → Setup Guide. Daar zie je de optie ‘Grant Customer access’ (Klanttoegang verlenen). Je kunt de machtigingen ook bekijken via Workflow Trigger Extensions → Permissions.
- Vervolgens moet je de trigger voor het metaveld ‘Customer’ aanmaken. Als je de installatiehandleiding niet ziet, ga dan rechtstreeks naar de pagina met metaveldtriggers van de app.
- Klik op de knop ‘Trigger toevoegen’ om een nieuwe trigger aan te maken.
- Selecteer het resourcetype ‘Klant’ en zoek naar het metaveld
custom.clothing_size. Selecteer dit en klik op de knop ‘Trigger toevoegen’ om te bevestigen.
Als je je metaveld niet kunt zien in de geselecteerde bron, ook al is het metaveld wel aanwezig, klik dan op de knop ‘Metavelden vernieuwen’ op de pagina ‘Metaveldtriggers’. Hierdoor wordt de cache geleegd en kun je je metaveld weer zien.
2) Maak het bestand Shopify Flow aan
Maak nu de Flow die overeenkomende producten zoekt en deze markeert telkens wanneer de maat van de klant wordt bijgewerkt.
- Ga naar Shopify Flow en maak een lege workflow aan. Selecteer de trigger** ‘Metafield Update’** uit de app ‘Workflow Trigger Extensions’.
- Klik op** ‘Event vastleggen**’ en wijzig vervolgens in een nieuw tabblad het metafield
custom.clothing_sizevan een klant in"XL"om een voorbeeldpayload vast te leggen. Klik op** ‘Testgebeurtenis selecteren’** om de vastgelegde payload in de workflowbouwer te laden. - Je ziet de payload met de klantgegevens en de nieuwe waarde van het metaveld. Hierin staat de nieuwe maat die de klant zojuist heeft ingesteld (bijvoorbeeld
"XL"). - Voeg een voorwaarde toe om te controleren of de waarde van het metaveld niet leeg is EN
metafield.key = "clothing_size"ENresourceType = "CUSTOMER" - Een actie toevoegen**: Haal gegevens over productvarianten op** en filter op variantoptie1 die overeenkomt met de waarde van het metaveld:
Variant option1 == {{ metafield.value }}Hiermee worden alle producten opgehaald die een variant hebben in de maat van de klant.
In mijn geval heb ik slechts één optie beschikbaar voor de variant (maat) en de bijbehorende optie 1. Als je op een andere plaats een variantoptie hebt, dan is dat optie 2 of misschien optie 3.
- Een actie toevoegen**: Een tag toevoegen aan** elk geretourneerd product:
available-in-{{ metafield.value }}Voor een klant die de maat"XL"heeft ingesteld, wordt hiermee de tagavailable-in-XLtoegevoegd aan elk product dat aan deze maat voldoet. - Voeg eventueel een actie toe**: ‘Tag aan klant toevoegen’** om het klantdossier gesynchroniseerd te houden:
size-{{ metafield.value }}

