Tidsbaserade och lagerbaserade utlösare från mallar
Fyra mallar för anpassade utlösare i Shopify Flow: olevererade order efter N dagar, stillastående försändelser, metafältsdatum och lågt lager per plats.
Shopify Flow reagerar när något inträffar. Några av de mest användbara automatiseringarna startar när något inte inträffar, eller när ett visst datum infaller: en beställning som fortfarande inte har skickats efter tre dagar, ett paket som har stannat upp i leveranskedjan, ett lanseringsdatum som är lagrat i ett metafält. Andra kräver en regel som inte kan uttryckas med ett Shopify Flow-villkor, till exempel olika gränsvärden för lågt lager för varje plats.
Det finns fyra mallar för dessa fall. Var och en är en anpassad utlösare: du väljer mallen i redigeraren för anpassade utlösare, anger några värden högst upp i koden, testar den och aktiverar den. Du behöver inte skriva koden själv.
De fyra mallarna
| Mall | Hur det fungerar | Vad den reagerar på |
|---|---|---|
| Beställningen har inte levererats på N dagar | Enligt ett schema, varje timme | En öppen order som ännu inte har genomförts, eller endast delvis, det antal dagar som du angav efter det att den lades |
| Sändningen har inte rört sig på N dagar | Enligt ett schema, varje timme | En försändelse som inte har levererats trots att inga uppgifter om beställningen har ändrats under det antal dagar som du har angett |
| Datum då ett metafält nåddes | Enligt ett schema, var 6:e timme | Ett datummetafält för en produkt eller en beställning som har inträffat, eller som ligger ett visst antal dagar framåt i tiden |
| Lagret sjönk under en anläggnings egen tröskel | Vid varje lagerförändring | Lagerbeholdningen på en anläggning sjunker under det tröskelvärde som du har angett för den anläggningen |
Intervallet är mallens startvärde. Du kan ändra det i redigeraren.
Använd en mall
Skapa en anpassad utlösare på sidan ”Utlösare”, i avsnittet ”Dina anpassade utlösare”. Ge den ett namn och ett identifieringsnamn. Identifieringsnamnet är det som ditt arbetsflöde filtrerar efter, och det går inte att ändra i efterhand.
För de tre fördefinierade mallarna:
- I avsnittet ”Hur detta körs” väljer du alternativet ”Enligt schema”.
- Öppna listan ”Starta från en mall” på fliken Schema och välj mallen. Då ersätts koden och intervallet ställs in.
- Redigera värdena högst upp i koden. De beskrivs nedan för respektive mall.
- Testa det. Ett test kör din kod en gång, skickar ingenting till Shopify Flow och sparar ingenting, så du kan upprepa det så ofta du vill.
- Slå på avtryckaren och spara.
För standardmallen:
- I avsnittet ”Vad som utlöser detta” väljer du alternativet ”En Shopify-händelse”.
- Öppna listan ”Starta från en mall” och välj standardmallen. Systemet väljer händelsen ”Lagernivå har ändrats på plats” och fyller i koden.
- Redigera värdena högst upp i koden.
- Registrera en verklig händelse genom att ändra lagerstatusen för en variant i din butik och kör sedan ett test mot den.
- Slå på avtryckaren och spara.
Använd den i Shopify Flow
Alla fyra importeras till Shopify Flow som den anpassade utlösaren ”Custom Trigger”. Lägg till den i ett arbetsflöde och ange ett villkor: att fältet ”Trigger handle” ska vara lika med namnet på din utlösare. Varje värde som mallen skickar är ett fält i utlösaren.
De tre schemalagda mallarna skickar även med beställningen eller produkten som händelsens post-ID. Lägg till ett steg, till exempel ”Hämta beställningsdata” eller ”Hämta produktdata”, för att ladda hela posten och arbeta med den i de efterföljande stegen.
Beställningen har inte levererats på N dagar
Upptäcker försenade leveranser innan kunden hinner fråga.
| Värde i koden | Börjar med | Betydelse |
|---|---|---|
DAYS |
3 |
Antal dagar efter att beställningen gjordes |
ONLY_PAID |
true |
Endast betalda beställningar räknas. En obetald beställning väntar vanligtvis på betalning, inte på dig. |
Triggern startar ditt arbetsflöde en gång för varje öppen order som fortfarande är ouppfylld eller endast delvis uppfylld när den når den ålder du har ställt in. En order som har uppfyllts i tid utlöser aldrig triggern.
Kontrollen sker en gång per beställning, just vid det tillfället. En beställning som fortfarande inte har levererats en vecka senare utlöser inte arbetsflödet en andra gång. Med inställningen ”endast betalda” tas inte heller en beställning med som har betalats först efter det tillfället med i beräkningen.
| Fält som skickas till Shopify Flow | Innehåller |
|---|---|
name |
Ordernumret, till exempel #1042 |
placedAt |
När beställningen gjordes |
daysSinceOrder |
Beställningens ålder i dagar |
fulfillmentStatus |
Beställningens leveransstatus |
financialStatus |
Beställningens betalningsstatus |
thresholdDays |
Det antal dagar du anger |
Själva ordern skickas vidare som händelsens post-ID.

Sändningen har inte rört sig på N dagar
Ger svar på frågan ”Var är min beställning?” innan den ens ställs.
| Värde i koden | Börjar med | Betydelse |
|---|---|---|
DAYS |
5 |
Antal dagar utan förändring |
ONLY_WITH_TRACKING |
true |
Sändningar utan spårningsnummer räknas inte med. De kan aldrig rapportera en leverans |
DONE |
DELIVERED, PICKED_UP, CANCELED |
Leveransstatus som räknas som avslutade |
Det går inte att söka i Shopify efter det datum då en leverans senast uppdaterades. Mallen utgår därför från beställningen. Den söker efter slutförda eller delvis slutförda beställningar som inte har uppdaterats på det antal dagar du angett och som fortfarande har en leverans som inte är avslutad.
Varje ändring av beställningen startar räkningen om från början. Det gäller både en uppdatering av spårningsinformationen, en redigerad anteckning och en ny tagg.
Triggern startar ditt arbetsflöde en gång per fastnat försändelse, så en beställning med två fastnade paket startar det två gånger. Upp till tre försändelser per beställning kontrolleras.
| Fält som skickas till Shopify Flow | Innehåller |
|---|---|
name |
Orderens namn |
fulfillmentId |
Sändningens ID |
shipmentStatus |
Leveransens aktuella status |
lastTrackingStatus |
Status för den senaste spårningshändelsen |
lastMovedAt |
När försändelsen senast flyttades |
daysWithoutMovement |
Antal dagar sedan försändelsen senast flyttades |
shippedAt |
När försändelsen skapades |
estimatedDeliveryAt |
Det beräknade leveransdatumet, om transportören anger något sådant |
carrier |
Transportörens namn |
trackingNumber |
Spårningsnumret |
trackingUrl |
Spårningslänken |
thresholdDays |
Det antal dagar du anger |
Själva ordern skickas vidare som händelsens post-ID.
Datum då ett metafält nåddes
För lanseringsdatum, garantier, bäst före-datum, förnyelsedatum: allt som anges som ett datum på en produkt eller i en beställning.
| Värde i koden | Börjar med | Betydelse |
|---|---|---|
RESOURCE |
"products" |
Var metafältet finns: på produkter eller på order |
NAMESPACE |
"custom" |
Metafältets namnområde |
KEY |
"release_date" |
Metafältets nyckel |
OFFSET_DAYS |
0 |
Antal dagar före eller efter datumet. Se exemplen nedan |
Tre exempel på förskjutningen:
| Offset | När ditt arbetsflöde startar |
|---|---|
0 |
På själva dagen |
-7 |
Sju dagar före datumet |
30 |
Trettio dagar efter den dagen |
Utlösaren startar ditt arbetsflöde en gång för varje produkt eller beställning vars förfallodag infaller den dagen. Dagarna anges i UTC. Utlösaren bearbetar en dag i taget, så de dagar som den har missat hanteras i tur och ordning. När fler än 100 poster förfaller samma dag hanteras resten vid nästa körning.
| Fält som skickas till Shopify Flow | Innehåller |
|---|---|
name |
Produktens titel eller ordernamnet |
date |
Det datum som lagrats i metafältet |
reachedOn |
Den dag då rapporten skulle lämnas in |
offsetDays |
Den förskjutning du har ställt in |
Själva produkten eller beställningen överförs som händelsens post-ID.
Lagret sjönk under en anläggnings egen tröskel
En regel för låga lagernivåer per plats: 20 i lagret, 3 i butiken.
| Värde i koden | Börjar med | Betydelse |
|---|---|---|
THRESHOLDS |
{ "Main warehouse": 20, "Pop-up store": 3 } |
Tröskeln för varje plats, uppdelat efter platsens namn |
DEFAULT |
5 |
Tröskelvärdet för varje plats som inte finns med i listan |
ALSO_WHEN_RESTOCKED |
false |
Oavsiktligt om ditt arbetsflöde också startar när lagernivån åter når tröskelvärdet eller överstiger det |
Om du vill ignorera en plats anger du tröskelvärdet null för den. Om du endast vill övervaka de angivna platserna ställer du in standardtröskelvärdet till null.
Utlösaren startar ditt arbetsflöde en gång, vid övergången: lagernivån låg på eller över tröskelvärdet före förändringen och ligger under det efteråt. Den reagerar inte på varje försäljning när lagernivån redan är låg. Detta är möjligt eftersom appen känner till lagernivån före och efter varje förändring.
Skriv in platsnamnen exakt så som de visas i din Shopify-admin under Inställningar > Platser.
Den här mallen kräver att utlösaren ”Lagernivå ändrad på plats” är aktiverad och att behörigheterna för den har beviljats. Det är detta som gör att appen kan följa lagernivåerna. Se Sidan ”Triggers” (tidigare ”Inställningar”) och Behörigheter och åtkomst till data.
| Fält som skickas till Shopify Flow | Innehåller |
|---|---|
event |
Vad som hände: aktiekursen sjönk under tröskelvärdet, eller så har aktiekursen återhämtat sig |
productTitle |
Produktens titel |
variantTitle |
Alternativ titel |
sku |
Variantens SKU |
location |
Platsens namn |
locationId |
Platsens ID |
oldAvailable |
Tillgängligt lager före ändringen |
newAvailable |
Tillgängligt lager efter ändringen |
threshold |
Den tröskel som gällde |
Fältet för vad som hände kan ha ett av två värden:
| Värde | Betydelse |
|---|---|
below |
Aktiekursen sjönk under tröskelvärdet |
restocked |
Lagernivån ligger återigen på eller över tröskelvärdet |
Varför startade inte mitt arbetsflöde efter att jag hade slagit på utlösaren?
Vid den första körningen av en schemalagd mall lagras endast startpunkten. Utlösaren reagerar på order, leveranser och datum som passerar gränsen efter det, inte på de som redan har passerat den.
Kan jag köra kontrollen oftare än en gång i timmen?
Ja, du väljer själv intervallet, från var 30:e sekund till en gång om dagen. Ett kortare intervall innebär fler körningar, och varje körning räknas in i din plan. För en regel som mäts i dagar räcker det oftast mer än väl med en gång i timmen.
Datumutlösaren visar ett felmeddelande. Vad är det för fel?
Nästan alltid definitionen av metafältet. Det måste vara av typen Datum och alternativet Filtrering måste vara aktiverat under Inställningar > Anpassade data. Kontrollera också att namnområdet och nyckeln i koden stämmer exakt överens med definitionen.
Kan en mall ändra mina beställningar eller produkter?
Nej. En anpassad utlösare är endast avsedd för läsning. Om du vill märka ordern, skicka ett e-postmeddelande eller uppdatera ett metafält måste du lägga till dessa åtgärder i det arbetsflöde som startar med utlösaren.
En leverans fastnade längre än de dagar jag hade angett, och mitt arbetsflöde startade inte. Varför?
Räkningen räknas från den senaste ändringen av beställningen. Om beställningen under tiden har redigerats - av personal, via en annan app eller genom en spårningsuppdatering - börjar räkningen om från det ögonblicket.
Nästa steg
- Anpassade utlösare - redigeraren, testning och hur anpassade utlösare fungerar i Shopify Flow.
- Skapa triggerkod med AI - beskriv en annan regel och låt AI skriva koden.
- Planer och användning - hur körningar och händelser räknas in i ditt abonnemang.
- Lagerutlösare, steg för steg - de inbyggda inventeringsutlösarna, steg för steg.
