Skip to main content

Oversigt

Upcart er en separat app fra Aftersell, så Strategies er ikke indbygget i Upsells-modulet på samme måde som i Aftersells post-purchase- og checkout-flows. I stedet bygger du bro mellem de to apps med et lille script, der kalder Strategies API direkte og fodrer resultatet ind i Upcarts eksisterende Upsells-modul via Upcarts offentlige API. Scriptet er drop-in - indsæt det én gang i Upcarts brugerdefinerede HTML, erstat to værdier (din Strategy API-nøgle og Strategy-ID’et), og Upsells-modulet vil begynde at vise de produkter, Strategyen returnerer.

Hvad du skal bruge

  1. Din Strategy API-nøgle. I Aftersell skal du gå til Settings → Product Strategy og i kortet Security Token kopiere dit token (dette er din Strategy API-nøgle).
  2. Strategy-ID’et. Åbn den Strategy, du vil køre, i Aftersells Strategy-editor, og kopiér dens ID.
  3. Upsells-modulet aktiveret i Upcart. Scriptet tilsidesætter listen over produkter, der vises i den eksisterende upsell-blok, så modulet skal være slået til, for at noget kan vises.

Tilføjelse af scriptet

I Upcart skal du gå til Settings → Custom HTML → Scripts (before load) og indsætte scriptet nedenfor. Erstat STRATEGY_ID og STRATEGY_API_KEY med værdierne fra Aftersell, og gem derefter.
Din Strategy API-nøgle autoriserer kald mod din butiks Strategies. Scriptet ovenfor placerer den i klientsidekode, hvilket er den eneste praktiske måde at kalde API’en fra cart draweren. Behandl nøglen, som du ville behandle enhver anden offentlig butiksfacade-legitimation, og rotér den fra Aftersell Settings → Product Strategy, hvis den nogensinde eksponeres på en måde, du ikke havde til hensigt.

Hvad Strategyen ser

Fordi dette kører fra butiksfacadens kurv, er konteksten en slank delmængde af det, der er tilgængeligt på Aftersells egne flader:

Produktkontekst

De varelinjer, der aktuelt ligger i Upcart-kurven, sendes som inputprodukter. Triggere som produkttype, leverandør, produkt-handle, produkttitel og eventuelle produkt-ID / variant-ID-triggere evalueres alle i forhold til disse varer.

Kurvkontekst

  • Subtotal - kurvens subtotal i butikkens primære valutaenheder (f.eks. dollars). Upcarts total_price er i mindre enheder (cents), så scriptet dividerer med 100 for at matche de enheder, resten af Strategies API bruger - og de enheder, dine cart_subtotal-regler er skrevet i.
  • Antal varer - samlet antal på tværs af alle linjer.
  • Antal linjer - antal forskellige varelinjer.

Sessionskontekst

  • Valutakode - hentes fra window.Shopify.currency.active.
Kundetriggere og UTM-triggere matcher ikke. Standardscriptet sender ikke kundetags, ordreantal, placering eller UTM-parametre - så enhver regel, der bruger disse triggere, bliver aldrig udløst. Brug produkt-, kurv- og valutatriggere eller en Catch all for at sikre, at der altid returneres noget.

Hvad der sker, når Strategyen returnerer

De produkter, Strategyen returnerer, erstatter fuldstændigt den liste, Upcart ellers ville vise i Upsells-modulet. Den forhandlerdefinerede upsell-liste tilsidesættes for den kurvs varighed - den flettes ikke ind. Hvert Strategy-produkt mappes til Upcarts forventede produktformat (varianter, billeder, muligheder, metafelter osv.), så det vises inde i upsell-blokken præcis som ethvert andet produkt.

Når der ikke returneres noget produkt

Hvis Strategyen ikke returnerer nogen produkter, vises Upsells-modulet tomt - der vises ingen upsells. For at undgå dette skal du konfigurere en Catch all i Strategyen, så der altid er et fallback-produkt at returnere. Se siden Opbygning af Strategies for at lære, hvordan du opsætter en Catch all.

Genevaluering ved kurvændringer

I modsætning til checkout-upsells genevaluerer Upcart-implementeringen Strategyen, hver gang kurven ændres - varer tilføjes, fjernes eller ændres i antal. Scriptet abonnerer på Upcarts cartUpdated-event, sender den nye kurv til Strategies API og opdaterer cart draweren med den nye upsell-liste. En kurvsignaturkontrol springer overflødige kald over, hvis varelinjerne og antallene faktisk ikke har ændret sig, så på hinanden følgende kurv-events, der ikke reelt ændrer kurven, rammer ikke API’en igen.

Tips til Upcart-Strategies

  • Designe ud fra kurven. Triggere for kurvens sammensætning og produkter er de stærkeste signaler, du har her. Kundehistorik og UTM-baseret målretning sendes ikke af standardscriptet.
  • Brug Catch all som sikkerhedsnet. Uden en viser Upsells-modulet intet, når ingen regel matcher.
  • Cache-venligt som standard. Kurvsignaturbeskyttelsen forhindrer, at API’en kaldes igen, hvis kurven ikke reelt har ændret sig - godt for kunder, der åbner og lukker kurven uden at redigere den.