Voorwaarden in Shopify Flow

In Shopify Flow bepalen voorwaarden of een actie al dan niet wordt ondernomen nadat een trigger een workflow heeft gestart. Wanneer je een voorwaarde instelt, kies je een waarde die is afgeleid van gegevens in je winkel en een logische operator en stel je handmatig een waarde in waar je op wilt controleren.

Gegevenstypen die worden gebruikt met Flow

De eerste waarde in een Flow-voorwaarde is dat gegevens uit je winkel worden afgenomen en afkomstig zijn van GraphQL-admin-API.

Flow ondersteunt de volgende soorten gegevens:

  • Float: Float-waarden zijn getallen met een decimaal getal. Bijvoorbeeld 4,25.
  • Geheel getal: gehele getallen zijn getallen zonder decimaal getal. Bijvoorbeeld 42.
  • Datum: datumwaarden zijn numerieke weergave van de datum. Bijvoorbeeld 01012021.
  • Tekenreeks: tekenreekswaarden zijn tekst. Vergelijkingen met tekenreekswaarden zijn niet hoofdlettergevoelig.
  • Boolean: Boolean-waarden zijn waar of onwaar.
  • Enum: Enum-waarden zijn reeksen gegevens waarmee een variabele een reeks vooraf gedefinieerde constanten kan zijn.

Logische operators gebruikt in Flow

Logische operators definiëren hoe je voorwaarde wordt toegepast. Voorwaarden kunnen eenvoudige eigenschappen controleren, zoals of het totaal van een bestelling hoger is dan een bepaald bedrag of dat een klant marketing accepteert. Logische operators kunnen ook controleren op complexere eigenschappen.

Flow kan de volgende operators gebruiken:

Gelijk aan

Gelijk aan vergelijkt waarden om te zien of ze hetzelfde zijn. In het volgende voorbeeld wordt de waarde voor order.currentTotalDiscountsSet.shopMoney.amount uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, 50.

Voorbeeld van een workflow die de logische operator 'gelijk aan' gebruikt om een bestelling te annuleren als de opgehaalde gegevens gelijk zijn aan 50

Als de eerste waarde gelijk is aan 50, dan is de voorwaarde waar. De bestelling is geannuleerd.

Niet gelijk aan

Niet gelijk aan vergelijkt waarden om te zien of ze hetzelfde zijn. In het volgende voorbeeld wordt de waarde voor order.currentTotalDiscountsSet.shopMoney.amount uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, 50.

Voorbeeld van een workflow die de logische operator 'Niet gelijk aan' gebruikt om een bestelling te annuleren als de opgehaalde gegevens gelijk zijn aan 50

Als de eerste waarde gelijk is aan 93, dan is de voorwaarde waar. De bestelling is geannuleerd.

Meer dan en Groter dan of gelijk aan

Groter dan en Groter dan of gelijk aan vergelijken waarden om te zien of de eerste waarde groter is dan, of groter is dan of gelijk is aan de tweede waarde. In het volgende voorbeeld wordt de waarde voor order.currentTotalDiscountsSet.shopMoney.amount uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, 50.

Voorbeeld van een workflow die de logische operator 'Groter dan' gebruikt om een bestelling te annuleren als de opgehaalde gegevens groter zijn dan 50

Als de waarde die uit je winkel wordt afgenomen 137 is, dan is de voorwaarde waar, omdat 137 groter is dan 50. De bestelling is geannuleerd.

Minder dan en Minder dan of gelijk aan

Minder dan en Minder dan of gelijk aan vergelijken waarden om te zien of de eerste waarde minder is dan, of minder is dan of gelijk is aan de tweede waarde. In het volgende voorbeeld wordt de waarde voor order.currentTotalDiscountsSet.shopMoney.amount uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, 50.

Voorbeeld van een workflow die de logische operator 'minder dan of gelijk aan' gebruikt om een bestelling te annuleren als de opgehaalde gegevens minder zijn dan of gelijk zijn aan 50

Als de waarde die uit je winkel wordt afgenomen 47 is, is de voorwaarde waar, omdat 47 minder dan of gelijk is aan 50. De bestelling is geannuleerd.

Minstens een van

Een van vergelijkt waarden in een array met gegevens om te zien of de eerste waarde-invoer een van de gegevens uit de tweede waarde-invoer bevat. Voer de te controleren waarden afzonderlijk in en druk na elke ingevoerde waarde op de Enter-toets. Als je Een van gebruikt met een lege array, resulteert dit in een verkeerde beoordeling. In het volgende voorbeeld wordt de waarde voor order.lineitem.product.title uit je winkelgegevens opgehaald en vergeleken met de tweede reeks waarden: ananas, guava, kiwi.

Voorbeeld van een workflow die de logische operator 'Een van ' gebruikt om een bestelling te annuleren als de opgehaalde gegevens ananas, guave of kiwi bevatten

Als de waarde die uit je winkel wordt afgenomen guave is, is de voorwaarde waar, omdat guava is opgenomen in de array ananas, guava, kiwi. De bestelling wordt geannuleerd.

Niet een van

Niet een van vergelijkt waarden in een array met gegevens om te zien of de eerste waarde-invoer geen van de gegevens uit de tweede waarde-invoer bevat. Voer de te controleren waarden afzonderlijk in en druk na elke ingevoerde waarde op de Enter-toets. In het volgende voorbeeld wordt de waarde voor order.lineitem.product.title uit je winkelgegevens opgehaald en vergeleken met de tweede reeks waarden: ananas, guava, kiwi.

Voorbeeld van een workflow die de logische operator 'niet minstens een van' gebruikt om een bestelling te annuleren als de opgehaalde gegevens geen ananas, guave of kiwi bevatten

Als de waarde die uit je winkel wordt afgenomen framboos is, is de voorwaarde waar, omdat framboos niet is opgenomen in de array ananas, guava, kiwi. De bestelling wordt geannuleerd.

Bevat

Bevat vergelijkt de waarden om te zien of een van de eerste waarde-invoer de gegevens in de tweede waarde-invoer bevat. In het volgende voorbeeld wordt de waarde voor order.lineitem.product.title uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, krabben.

Voorbeeld van een workflow die de logische operator 'bevat' gebruikt om een bestelling te annuleren als de opgehaalde gegevens de string 'krab' niet bevatten

Als de waarde die je uit je winkelgegevens haalt wolkenkrabber is, dan is de voorwaarde waar, want de exacte string krab is niet opgenomen in de string wolkenkrabber. De bestelling wordt geannuleerd.

Bevat geen

Bevat geen vergelijkt de waarden om te zien of een van de eerste waarde-invoer niet de gegevens in de tweede waarde-invoer bevat. In het volgende voorbeeld wordt de waarde voor order.lineitem.product.title uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, krab.

Voorbeeld van een workflow die de logische operator 'bevat geen' gebruikt om een bestelling te annuleren als de opgehaalde gegevens de string 'krabben' niet bevatten

Als de waarde die je uit je winkelgegevens haalt 'scrap-metal' is, dan is de voorwaarde waar, want de exacte tekenreeks 'scrape' is niet opgenomen in de tekenreeks 'scrap-metal'. De bestelling wordt geannuleerd.

Begint met

Begint met vergelijkt waarden om te zien of de eerste waarde begint met de gegevens in de tweede waarde. In het volgende voorbeeld wordt de waarde voor order.shippingAddress.country uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, Verenigd.

Voorbeeld van een workflow die de logische operator 'begint met' gebruikt om een bestelling te annuleren als de opgehaalde gegevens beginnen met Verenigd

Als de waarde die wordt afgenomen uit je winkel Verenigd Koninkrijk is, is de voorwaarde waar, omdat de reeks Verenigd Koninkrijk de tekenreeks Verenigd voorafgaat. De bestelling wordt geannuleerd.

Begint niet met

Begint niet met vergelijkt waarden om te zien of de eerste waarde niet begint met de gegevens in de tweede waarde. In het volgende voorbeeld wordt de waarde voor order.shippingAddress.country uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, Verenigd.

Voorbeeld van een workflow die de logische operator 'begint niet met' gebruikt om een bestelling te annuleren als de opgehaalde gegevens niet beginnen met Verenigd

Als de waarde die wordt afgenomen uit je winkel Canada is, is de voorwaarde waar, omdat de reeks Verenigd Koninkrijk niet wordt voorafgegaan door Canada. De bestelling wordt geannuleerd.

Eindigt met

Eindigt met vergelijkt waarden om te zien of de eerste waarde eindigt met de gegevens in de tweede waarde. In het volgende voorbeeld wordt de waarde voor order.lineitems.product.title uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, laatste beschikbaar.

Voorbeeld van een workflow die de logische operator 'eindigt met' gebruikt om een bestelling te annuleren als de opgehaalde gegevens eindigen op de laatste beschikbare string

Als de waarde die wordt afgenomen uit je winkel sportsokken laatste beschikbaar is, is de voorwaarde waar, omdat de tekenreeks sportsokken laatste beschikbaar eindigt met de tekenreeks laatste beschikbaar. De bestelling wordt geannuleerd.

Eindigt niet met

Eindigt niet met vergelijkt waarden om te zien of de eerste waarde niet eindigt met de gegevens in de tweede waarde. In het volgende voorbeeld wordt de waarde voor order.lineitems.product.title uit je winkelgegevens opgehaald en vergeleken met de tweede waarde, laatste beschikbaar.

Voorbeeld van een workflow die de logische operator 'eindigt niet met' gebruikt om een bestelling te annuleren als de opgehaalde gegevens niet eindigen met de tekenreeks laatste beschikbaar

Als de waarde die uit je winkel is gehaald sportsokken nieuw is, dan is de voorwaarde waar omdat de tekenreeks sportsokken nieuw niet eindigt op de tekenreeks last-available. De bestelling is geannuleerd.

Voorwaarden in de juiste volgorde zetten

Je kunt workflows aanmaken met meerdere voorwaarden, die elk verschillende acties kunnen activeren. De volgorde van de voorwaarden is belangrijk. De controle op voorwaarden begint bij het begin van de workflow en gaat systematisch door elke voorwaarde heen. De controle stopt als aan een voorwaarde voldaan is.

Aan meerdere voorwaarden voldoen

Wanneer je een voorwaarde instelt, kun je verschillende criteria instellen en bepalen of Flow de voorwaarde 'waar als aan alle voorwaarden wordt voldaan' overweegt of 'als aan een van de voorwaarden wordt voldaan'.

Als aan alle voorwaarden is voldaan

Het kiezen van Als aan alle voorwaarden is voldaan geeft alleen een waar antwoord als elk criterium dat je instelt waar is.

Je maakt bijvoorbeeld een workflow om klanten in Canada te taggen en meer dan USD 500 uit te geven aan één bestelling.

Voorbeeld van een workflow dat de voorwaarde 'en' gebruikt

De workflow tagt de klant alleen als de klant zich in Canada bevindt en hij of zij meer dan USD 500 aan de bestelling besteedt. Als een van deze voorwaarden onjuist is, wordt de klant niet getagd.

Als aan alle voorwaarden wordt voldaan

Als je de resultaten Als aan alle voorwaarden wordt voldaan selecteert, krijg je een waar antwoord als een van de criteria die je instelt waar is.

Je maakt bijvoorbeeld een workflow om bestellingen te taggen die worden beschouwd als hoog of gemiddeld risico.

Voorbeeld van een workflow dat de voorwaarde 'of' gebruikt

De workflow tagt de bestelling als het een hoog of gemiddeld risico heeft. Zolang een van die voorwaarden waar is, wordt de bestelling getagd.

Voorwaarden en acties combineren

Je kunt voorwaarden combineren om één grote voorwaarde te maken. Wanneer voorwaarden worden gecombineerd, is de hele voorwaarde alleen waar als aan alle voorwaarden is voldaan. Als niet aan een voorwaarde wordt voldaan, is de hele voorwaarde onwaar. In het volgende voorbeeld moet de klant marketingmateriaal accepteren en moet de totale prijs van de bestelling aan een bepaalde drempel voldoen.

Voorbeeld van een workflow die het totale uitgavenbedrag van een klant controleert en tags toevoegt

Je kunt acties ook combineren om meerdere acties tegelijk uit te voeren. In dit voorbeeld worden meerdere voorwaarden gebruikt om te controleren of een klant in aanmerking komt voor een loyaliteitsprogramma op basis van het totale bedrag dat de klant in de winkel heeft uitgegeven. In het bovenstaande voorbeeld worden de volgende voorwaarden gecontroleerd in de weergegeven volgorde:

  1. Als de totale prijs hoger is dan $ 1000 en de klant marketing accepteert, dan geef je de klant de tag Goud.
  2. Als de totale prijs lager is dan $ 1000, maar hoger dan $ 500 en de klant marketing accepteert, dan geef je de klant de tag Zilver.
  3. Als de klant meer dan $ 200 heeft besteed en marketing accepteert, dan geef je deze klant de tag Brons.

Statische en dynamische gegevens onder voorwaarden

Meestal is de tweede waarde in een voorwaarde een statische, handmatig ingevoerde waarde. Deze waarde blijft elke keer dat de workflow wordt uitgevoerd hetzelfde.

Je kunt ook dynamische waarden gebruiken als in het veld voor de tweede waarde een symbool </> wordt weergegeven. Dynamische waarden worden uit je winkelgegevens gehaald telkens als de workflow wordt uitgevoerd. Als je een dynamische waarde wilt gebruiken, klik je op het symbool </> en selecteer je de waarde die je wilt controleren. Dynamische waarden zijn niet voor alle velden beschikbaar.

Je maakt bijvoorbeeld een workflow die een bestelling tagt als het land op het factuuradres van de bestelling overeenkomt met het land op het bezorgadres.

Voorbeeld van een workflow die een bestelling tagt met behulp van RHS-gegevens om te controleren of de facturering en het land voor verzending van een klant hetzelfde zijn.

In dit voorbeeld zijn zowel de eerste als de tweede waarden afkomstig van de gegevens van je winkel, in plaats van handmatig een statische tekenreeks op te geven om tegen te gaan voor de tweede waarde. Als het land op het factuuradres dat door de klant wordt opgegeven, hetzelfde is als het land dat de klant heeft opgegeven in het bezorgadres, is de voorwaarde waar en wordt de bestelling getagd.

Klaar om te beginnen met verkopen met Shopify?

Probeer het gratis