Din butikschatt ska hjälpa folk att köpa. I stället fastnar den i samma frågor om och om igen: leveranstider, returer, ”har ni den här i rött?”, ”vilken storlek ska jag ta?”, ”finns den i lager?”. Du svarar snabbt, men inte alltid konsekvent, och ärligt talat är det utmattande.
Den här WooCommerce FAQ-automationen träffar butiksägare först, eftersom du är standardteamet för support. Men marknadschefer och kundsupportansvariga känner också av det, eftersom varje långsamt svar kostar konverteringar (och tålamod). Målet är enkelt: gör chatten till direkta produktval och korrekta FAQ-svar utan att anställa ytterligare en agent.
Det här flödet kopplar ihop WooCommerce, Google Drive-dokument och OpenAI så att varje meddelande skickas till rätt ”hjärna”. Du får se vad som automatiseras, vilka resultat du kan förvänta dig och vad som krävs för att köra det stabilt.
Så fungerar automatiseringen
Hela n8n-flödet, från trigger till slutresultat:
n8n Workflow Template: WooCommerce + Google Drive: snabba FAQ-svar
flowchart LR
subgraph sg0["Incoming Chat Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Incoming Chat Trigger", pos: "b", h: 48 }
n1@{ icon: "mdi:memory", form: "rounded", label: "Session Buffer Memory", pos: "b", h: 48 }
n2@{ icon: "mdi:wrench", form: "rounded", label: "Math Utility Tool", pos: "b", h: 48 }
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "Map Input Fields", pos: "b", h: 48 }
n4@{ icon: "mdi:brain", form: "rounded", label: "Primary Chat Model", pos: "b", h: 48 }
n5@{ icon: "mdi:wrench", form: "rounded", label: "Store Info Retriever", pos: "b", h: 48 }
n6@{ icon: "mdi:cube-outline", form: "rounded", label: "Qdrant Store Lookup", pos: "b", h: 48 }
n7@{ icon: "mdi:vector-polygon", form: "rounded", label: "OpenAI Embedding Gen", pos: "b", h: 48 }
n8@{ icon: "mdi:brain", form: "rounded", label: "Retriever Chat Model", pos: "b", h: 48 }
n9@{ icon: "mdi:cog", form: "rounded", label: "WooCommerce Product Finder", pos: "b", h: 48 }
n10@{ icon: "mdi:robot", form: "rounded", label: "Extract Search Details", pos: "b", h: 48 }
n11@{ icon: "mdi:brain", form: "rounded", label: "Extractor Chat Model", pos: "b", h: 48 }
n20@{ icon: "mdi:robot", form: "rounded", label: "Smart Shopping Agent", pos: "b", h: 48 }
n5 -.-> n20
n2 -.-> n20
n3 --> n10
n9 -.-> n20
n7 -.-> n6
n4 -.-> n20
n8 -.-> n5
n11 -.-> n10
n6 -.-> n5
n1 -.-> n20
n10 --> n20
n0 --> n3
end
subgraph sg1["Manual Test Flow"]
direction LR
n12@{ icon: "mdi:cog", form: "rounded", label: "Drive Folder List", pos: "b", h: 48 }
n13@{ icon: "mdi:cog", form: "rounded", label: "Drive File Download", pos: "b", h: 48 }
n14@{ icon: "mdi:vector-polygon", form: "rounded", label: "OpenAI Embedding Gen B", pos: "b", h: 48 }
n15@{ icon: "mdi:robot", form: "rounded", label: "Binary Data Loader", pos: "b", h: 48 }
n16@{ icon: "mdi:robot", form: "rounded", label: "Token Chunker", pos: "b", h: 48 }
n17@{ icon: "mdi:play-circle", form: "rounded", label: "Manual Test Trigger", pos: "b", h: 48 }
n18["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>External API Request"]
n19@{ icon: "mdi:cube-outline", form: "rounded", label: "Qdrant Store Insert", pos: "b", h: 48 }
n18 --> n12
n13 --> n19
n12 --> n13
n16 -.-> n15
n14 -.-> n19
n15 -.-> n19
n17 --> n18
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0,n17 trigger
class n10,n20,n15,n16 ai
class n4,n8,n11 aiModel
class n2,n5 ai
class n1 ai
class n6,n19 ai
class n7,n14 ai
class n18 api
classDef customIcon fill:none,stroke:none
class n18 customIcon
Problemet: chattfrågor stjäl tid (och försäljning)
Livechatt känns som en vinst … tills du inser att det mest är copy-paste. Folk frågar vad som finns i lager, vad som passar deras budget och vilka era villkor är. Du (eller ditt team) hoppar mellan WooCommerce, produktsidor och slumpmässiga Google Docs för att svara. Sedan svarar någon annan på samma fråga annorlunda dagen efter. Ännu värre: du missar läget – kunder väntar inte när de jämför alternativ.
Det är ingen stor katastrof. Det är dussintals små fördröjningar och inkonsekvenser som byggs på.
- Supportagenter slösar ofta 5–10 minuter per chatt på att hitta rätt produktlänk och kontrollera lagersaldo.
- FAQ-svar glider över tid, så kunder får blandade besked om leverans, returer eller öppettider.
- Enkla ”personlig shopping”-frågor hanteras som supportärenden, vilket saktar ner dem som faktiskt behöver hjälp.
- När chatten blir busy svarar du antingen sent eller stressar fram ett svar – och båda alternativen kostar pengar.
Lösningen: en hybrid chattassistent (produkter + policyer)
Det här flödet ger din butikschatt två ”lägen” automatiskt. När ett meddelande ser ut som köpsignal (”röda handväskor under 100 €”, ”SKU BAG123”, ”löparskor storlek 42”) plockar det ut användbara detaljer och frågar WooCommerce efter matchande produkter som finns i lager. När meddelandet är en allmän butiksfråga (”vad är er returpolicy?”, ”när öppnar ni?”, ”skickar ni internationellt?”) hämtar det svaret från dina egna dokument i Google Drive via en Retrieval-Augmented Generation (RAG)-lösning. OpenAI skriver sedan ett korrekt formaterat svar baserat på det som hittades, så chatten förblir hjälpsam och konsekvent.
Flödet startar när ett chattmeddelande tas emot. OpenAI klassificerar avsikten och routar sedan meddelandet till antingen WooCommerce produktletare eller Google Drive FAQ-hämtaren (via en Qdrant-vektorstore). Slutresultatet är ett chatt-svar som är klart att skicka: produktförslag när någon surfar, eller ett policy-svar som är förankrat i dina dokument när de behöver ett förtydligande.
Det du får: automatisering kontra resultat
| Vad det här flödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att din butik får cirka 20 chattmeddelanden per dag. Om ens hälften är ”hjälp mig hitta en produkt” och varje tar ungefär 7 minuter att tolka, söka i WooCommerce, bekräfta lagersaldo och svara, så är det runt en timme per dag som försvinner. Lägg till ytterligare 10 FAQ-liknande frågor á 4 minuter så är du nära 2 timmar om dagen. Med det här flödet triggas användarens meddelande direkt, agenten klassificerar det och svaret genereras medan du jobbar vidare. Oftast skummar du bara igenom och skickar.
Det här behöver du
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- WooCommerce för åtkomst till produktkatalog och lagerkontroller
- Google Drive för att lagra policyer, FAQ och butiksdokument
- OpenAI API-nyckel (hämta den i din OpenAI-dashboard)
Kunskapsnivå: Mellan. Du kopplar konton, lägger till ett Drive-mapp-ID och klistrar in en API-nyckel i några noder.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Ett chattmeddelande kommer in. Flödet startar med en inkommande chatt-trigger och mappar sedan indatafälten till ett korrekt formaterat format som AI:n kan läsa tillförlitligt.
Avsikt och detaljer extraheras. Modellen ”information extractor” avgör om meddelandet är en produktsökning eller en generell fråga och plockar ut strukturerade detaljer som nyckelord, prisspann, SKU och kategori (när det finns).
Assistenten routar till rätt verktyg. Vid köpsignal använder agenten WooCommerce produktletare och filtrerar på varor i lager. Vid butiksfråga gör den en sökning i en Qdrant-vektorstore byggd från dina Google Drive-dokument och använder de hämtade textavsnitten för att skriva ett korrekt svar.
Ett svar genereras med minne. Sessionsminne behåller kontext från tidigare meddelanden så att assistenten kan hantera följdfrågor utan att fråga om allt på nytt.
Du kan enkelt ändra dokumentuppsättningen i Drive för att matcha nya policyer efter behov. Se hela implementationsguiden nedan för alternativ för anpassning.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera chatttriggern
Det här arbetsflödet börjar med en chattbaserad trigger som fångar inkommande meddelanden till shoppingassistenten.
- Lägg till och öppna Incoming Chat Trigger.
- Låt standardinställningarna vara kvar om ni inte behöver anpassade chattalternativ.
- Bekräfta körflödet: Incoming Chat Trigger → Map Input Fields.
Steg 2: Mappa och extrahera användarens intention
Normalisera fält i chattens payload och extrahera sökintention samt parametrar för produktuppslagning.
- I Map Input Fields ställer ni in sessionId till
{{ $json.sessionId }}och chatInput till{{ $json.chatInput }}. - Öppna Extract Search Details och ställ in Text till
{{ $json.chatInput }}. - Behåll Schema Type som manual och klistra in den angivna JSON:en i Input Schema exakt som den visas.
- Säkerställ att Extractor Chat Model är ansluten som språkmodell för Extract Search Details.
Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i Extractor Chat Model (inloggningsuppgifter sätts på modellen, inte på extraktornoden).
Steg 3: Konfigurera den smarta shoppingagenten och verktygen
Agenten använder de extraherade detaljerna för att avgöra om den ska söka i WooCommerce eller hämta butiksinformation.
- Öppna Smart Shopping Agent och ställ in Text till
{{ $('Incoming Chat Trigger').item.json.chatInput }}. - Verifiera att System Message innehåller JSON-verktygsinstruktionen med
{{ JSON.stringify($json.output) }}. - Säkerställ att Primary Chat Model är ansluten som språkmodell för Smart Shopping Agent.
Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i Primary Chat Model. - Bekräfta att verktygen är anslutna till Smart Shopping Agent: WooCommerce Product Finder, Store Info Retriever och Math Utility Tool.
- I WooCommerce Product Finder behåller ni Operation som
getAlloch ställer in filtren till uttrycken:
sku{{ $('Extract Search Details').item.json.output.SKU }}, search{{ $('Extract Search Details').item.json.output.keyword }}, maxPrice{{ $('Extract Search Details').item.json.output.price_max }}, minPrice{{ $('Extract Search Details').item.json.output.price_min }}och stockStatus tillinstock.
Inloggningsuppgifter krävs: Anslut era wooCommerceApi-inloggningsuppgifter i WooCommerce Product Finder.
Steg 4: Sätt upp hämtning av butiksinformation (Qdrant)
Hämtning av butiksinformation använder en vektorstore och embeddings för att besvara frågor om butiken.
- Öppna Store Info Retriever och behåll name som
informazioni_negoziosamt den angivna beskrivningen. - Säkerställ att Qdrant Store Lookup är ansluten som vektorstore för Store Info Retriever.
Inloggningsuppgifter krävs: Anslut era qdrantApi-inloggningsuppgifter i Qdrant Store Lookup. - Säkerställ att OpenAI Embedding Gen är ansluten till Qdrant Store Lookup som embeddingmodell.
Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i OpenAI Embedding Gen. - Anslut Retriever Chat Model till Store Info Retriever som språkmodell.
Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i Retriever Chat Model.
Steg 5: Bygg pipeline för dokumentinläsning (manuellt test)
Den här vägen laddar dokument från Google Drive, chunkar dem, skapar embeddings och infogar i Qdrant för att kunna hämta dem senare.
- Öppna Manual Test Trigger för att köra inläsningsflödet vid behov.
- I External API Request ställer ni in URL till
https://[CONFIGURE_YOUR_API_KEY]och behåller Method somPOSTmed JSON-body{ "filter": {} }.
Inloggningsuppgifter krävs: Anslut era httpHeaderAuth-inloggningsuppgifter i External API Request. - I Drive Folder List ställer ni in Resource till
fileFolderoch väljer rätt Drive- och mapp-ID:n för My Drive och RAG Documents.
Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Drive Folder List. - I Drive File Download ställer ni in Operation till
downloadoch File ID till{{ $json.id }}, med konvertering tilltext/plainaktiverad.
Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Drive File Download. - I Token Chunker ställer ni in Chunk Size till
300och Chunk Overlap till30. - Säkerställ att Binary Data Loader har Data Type inställt på
binaryoch är ansluten till Qdrant Store Insert som dokumentkälla. - I Qdrant Store Insert ställer ni in Mode till
insertoch väljer er Qdrant-collection.
Inloggningsuppgifter krävs: Anslut era qdrantApi-inloggningsuppgifter i Qdrant Store Insert. - Säkerställ att OpenAI Embedding Gen B är ansluten till Qdrant Store Insert som embeddingmodell.
Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i OpenAI Embedding Gen B.
https://[CONFIGURE_YOUR_API_KEY] i External API Request med er faktiska endpoint, annars kommer inläsningsflödet att misslyckas.Steg 6: Konfigurera sessionsminne
Sessionsminnet behåller chattkontext mellan turer för en smidigare upplevelse med shoppingassistenten.
- Öppna Session Buffer Memory och ställ in Session Key till
{{ $('Map Input Fields').item.json.sessionId }}. - Ställ in Session ID Type till
customKey. - Bekräfta att Session Buffer Memory är ansluten till Smart Shopping Agent som minnesverktyg.
Steg 7: Testa och aktivera ert arbetsflöde
Kör kontrollerade tester för att verifiera både inläsnings- och chattvägarna, och aktivera sedan för produktion.
- Klicka på Execute Workflow på Manual Test Trigger för att validera inläsningsvägen via External API Request → Drive Folder List → Drive File Download → Qdrant Store Insert.
- Trigga Incoming Chat Trigger med ett exempelmeddelande från en användare och bekräfta att flödet kör Map Input Fields → Extract Search Details → Smart Shopping Agent.
- Kontrollera att WooCommerce-resultat visas när en produktintention upptäcks och att butiksfrågor använder retriever-vägen.
- När allt fungerar växlar ni arbetsflödet till Active för användning i produktion.
Vanliga fallgropar
- Google Drive-autentisering kan gå ut eller kräva specifika behörigheter. Om något slutar fungera: kontrollera först n8n-kopplingen för inloggningsuppgifter och inställningarna för delning av mapp.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in ert varumärkesspråk tidigt, annars kommer du redigera utdata i all evighet.
Vanliga frågor
Cirka en timme om din WooCommerce, din Drive-mapp och din OpenAI-nyckel är redo.
Nej. Du kopplar mest konton och redigerar ett par prompter. Kan du följa en checklista kan du köra det.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis testperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volymer. Du behöver också räkna med OpenAI API-kostnader, som vanligtvis ligger på några cent per konversation beroende på dina prompter och din trafik.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverdrift.
Ja, men gör det med en tydlig plan. Uppdatera prompten ”Extract Search Details” så att den även ger ett fält för detekterat språk, och instruera sedan noderna ”Smart Shopping Agent” och chattmodell-noderna att svara på det språket. Många team har också separata Google Drive-dokument per språk så att hämtningen blir felfri. Om du blandar språk i samma mapp, se till att dina dokument är tydligt märkta, annars kan chunkningen bli rörig.
Oftast handlar det om WooCommerce API-nycklar eller behörigheter. Generera om nycklarna i WooCommerce och uppdatera sedan inloggningsuppgifterna som används av verktyget ”WooCommerce Product Finder”. Bekräfta också att din butiks-URL är korrekt och går att nå från din n8n-instans; self-hostade upplägg blockerar ibland utgående anrop tills brandväggsreglerna är fixade.
En typisk installation hanterar hundratals chattar per dag utan problem, så länge dina OpenAI-gränser och dina hostingresurser är dimensionerade korrekt.
För det här användningsfallet: oftast ja. Du kombinerar förgreningar, minne, en vektordatabas och ett WooCommerce-”verktyg” som tjänar på mer flexibel hantering – en typ av flöde som lätt blir klumpigt (och dyrt) i enklare automationsbyggare. n8n ger dig också self-hosting, så du tvingas inte in i prissättning per uppgift när volymen växer. Med det sagt: om du bara vill skicka fördefinierade svar från en kort FAQ-lista kan Zapier eller Make gå snabbare att få på plats. Prata med en automationsexpert om du vill ha en second opinion.
När detta väl rullar slutar chatten vara en flaskhals och börjar fungera som en säljassistent. Sätt upp det en gång, håll dina Google Drive-dokument uppdaterade och låt flödet ta hand om upprepade frågor.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.