Shopify anvender som standard kun din højeste rabat. For at stacake rabatter har du brug for rabatter, der lever i forskellige klasser, som Shopify kalder produkt, ordre og forsendelse, plus en regel på hver rabat, der fortæller den, om den må kombineres med de andre. To rabatter i samme klasse lægges ikke sammen: Shopify bevarer den med højere værdi og dropper den anden. På tværs af forskellige klasser er kombinering tilladt, men kun når hver rabat eksplicit tilmelder sig. Der er ingen enkelt "stapel alt"-switch, hvilket er hvorfor så mange butikker viser en stacakede total på kurv siden og derefter opkræver en anden total ved kassen.
Denne guide forklarer, hvordan Shopify afgør, hvad der kombineres, hvorfor native rabatter kun vælger den højeste, reglen med en-produkt-rabat-pr.-linje og dens Shopify Plus-undtagelse, hvordan koder og automatiske rabatter interagerer, checkout-paritets-fælden, der koster købelmandue penge, og en trin-for-trin opsætning med et gennemarbejdet eksempel, du kan følge i dag.
Kan du stacake rabatter i Shopify?
Ja, men kun på tværs af klasser, og kun når du slår kombinering til. En rabat fra en klasse kan kombineres med en rabat fra en anden klasse, men to rabatter fra samme klasse lægges aldrig sammen. Så en volumerabat (produktklasse), en udgifts-mål rabat (orderklasse) og gratis forsendelse (forsendelsesklasse) kan alle gælde for samme ordre. Hvad du ikke kan gøre native er at sætte to produktrabatter, to orderrabatter eller to forsendelsesrabatter på hinanden: når to rabatter i samme klasse kunne begge gælde, bevarer Shopify den værd mere og ignorerer stille og roligt resten.
Fangen er, at kombinering er fra, indtil du slår det til. Hver rabat som standard kører alene, så hvis du ønsker din volumetrin og dit gratis forsendelsestilbud på samme ordre, skal du åbne hver og markere det som kombinérbart med den anden klasse. Spring dette trin over, og en kunde, der kvalificerer sig til begge, får kun en.
BILLEDE PLACEHOLDER (Billede 1): De tre Shopify rabatklasser
Foreslået visual: Et rent 16:9 diagram på hvid baggrund med tre mærket søjler i violet (produktrabat), dyb guld (orderrabat) og skifer (forsendelsesrabat). Pile mellem søjler viser grønne "kan kombinere" links på tværs af forskellige klasser og røde "bevarer den højere værdi" loops inden for samme klasse. Minimalt, fladt, brandfarver violet og guld, sans-serif etiketter, ingen fotografi.
Hvad er Shopifys tre rabatklasser?
Hver rabat, du opretter i Shopify, uanset om det er en automatisk rabat, en rabatkode eller en genereret af en app gennem Shopify Functions, tildeles en klasse. Klassen styrer, hvordan rabatten beregnes, og mere vigtigt, hvad den må kombineres med.
Produktrabatter
En produktrabat reducerer prisen på specifikke emner i kurven. Volumetrin ("køb 3, få 15 procent rabat"), køb X få Y tilbud, en procentdel rabat på en samling og et fast beløb rabat på et enkelt produkt er alle produktklasse rabatter. De vedhæfter til individuelle kurv linjer, hvilket betyder noget for per-linje reglen dækket nedenfor.
Orderrabatter
En orderrabat reducerer ordrens subtotal i stedet for et enkelt produkt. Et udgiftsmål som "10 dollar rabat på ordrer over 100 dollar," en flad "20 dollar rabat på din ordre," eller en butiksvid procentdel rabat på hele kurven er orderklasse rabatter. Fordi de virker på subtotalen, kan kun en gælde ad gangen. To orderrabatter kombineres aldrig på samme ordre.
Forsendelsesrabatter
En forsendelsesrabat reducerer eller fjerner forsendelsesomkostningerne. Gratis forsendelse over en tærskel og en procentdel rabat på forsendelsestakster er forsendelsesklasse rabatter. Som med orderrabatter gælder kun en forsendelsesrabat pr. ordre.
Denne taksonomi betyder noget, fordi stacking afgøres pr. klassepaar, ikke pr. rabat-par. Du spørger aldrig "kan disse to specifikke tilbud kombineres." Du spørger "må en produktrabat sidde ved siden af en orderrabat, og har hver af dem valgt til?" Ifølge Shopify Hjælpcenter, rabatter kombineres kun, når de er indstillet som kombinérbar og tilhører berettigede klasser, hvilket er grunden til, at standardadfærden overrasker så mange forhandlere.
Hvorfor anvender Shopify kun den højeste rabat?
Dette er den vigtigste frustration, som forhandlere rejser på Shopify community-fora, og det er ikke en fejl. Når to rabatter i samme klasse kunne begge gælde for en ordre, lægger Shopify dem ikke sammen. Den sammenligner dem og bevarer den, der giver kunden den største reduktion, dropper derefter den anden uden advarsel og uden linjeemne for at forklare hvad der skete.
Billede en butik, der kører en automatisk "køb 6, få 10 procent rabat" volumerabat (produktklasse), mens en kunde indtaster en "SAVE15" kode, der også er produktklasse. Begge er produktrabatter, så Shopify vil ikke stacake dem i 25 procent. Den anvender 15 procent koden, fordi den er værd mere, og 10 procent volumerabaten forsvinder stille og roligt. Forhandleren, der forventede, at volumetilbuddet altid ville fyre, ser inkonsistente resultater afhængig af hvad ellers der er i kurven.
Det samme sker med to orderrabatter eller to forsendelsesrabatter: højeste værdi vinder, alt andet droppes. Dette er Shopifys sikkerhedsstandardindstilling, så butikker ikke ved et uheld giver margin væk ved at stable rabatter i samme klasse på hinanden. Det er fornuftigt, men det er usynligt, og usynlighed er problemet. Forhandlere finder ud af, at deres rabatter ikke stacakes, kun når de læser en test kvittering linje for linje, eller værre, når en kunde spørger, hvorfor de blev opkrævet mere end kurven viste.
Hvad er reglen med en-produkt-rabat-pr.-linje?
Her er nuancen, der forvirrer selv erfarne forhandlere. Reglen "højeste værdi vinder" for produktrabatter bliver ikke anvendt på hele kurven. Det bliver anvendt pr. kurv linje.
En kurv linje er en enkelt produkt-og-variant-række i kurven. Shopify tillader som standard kun en produktrabat pr. kurv linje, så hvis to produktklasse rabatter målretter samme linje, bevarer den linje den bedre af de to. Men to produktrabatter målrettet forskellige linjer kan begge gælde for samme ordre, fordi de ikke kæmper over samme linje.
Det er grunden til, at en butik kan køre "20 procent rabat på hatte" og "køb 2 t-shirts, få 1 gratis" på samme tid: hatteabatten lander på hat linjerne, t-shirt tilbuddet lander på t-shirt linjerne, og begge gælder. Hvad du ikke kan gøre på en standard plan er at sætte to produktrabatter på samme t-shirt linje.
Shopify Plus undtagelsen
Stacking af to produktrabatter på samme kurv linje er muligt, men kun på Shopify Plus, og kun med en tag-baseret mekanisme, som Shopify kalder samme-linje stacking. Ifølge Shopifys udvikler dokumentation, bruger samme-linje produkt-på-produkt stacking en tag-match og er en Shopify Plus-funktion. Hvis du ikke er på Plus, behandl "to produktrabatter på det nøjagtige samme emne" som væk fra bordet, og design dine tilbud, så konkurrerende produktrabatter målretter forskellige produkter.
Det er værd at sige klart, fordi meget marketingkopi antyder, at du frit kan stacake hvilke som helst to produkttilbud. Det kan du ikke. Cross-klasse stacking (produkt plus ordre plus forsendelse) virker på hver Shopify-plan. Samme-klasse produktstacking på en linje gør ikke, medmindre du er på Plus.
Hvordan interagerer rabatkoder og automatiske rabatter?
Koder og automatiske rabatter følger de samme klasseregler, med nogle få ekstra grænser ved kassen.
En automatisk rabat og en kode kan kombineres, hvis de er i berettigede klasser, og begge er indstillet som kombinérbar, nøjagtigt som ethvert andet par. En produktklasse kode og en orderklasse automatisk rabat kan stacakes. To produktklasse rabatter, en kode og en automatisk, kan ikke stacakes på samme linje: højeste værdi vinder.
Ved kassen begrænser Shopify, hvor mange koder en kunde kan indtaste, til op til 5 produkt- eller orderrabatkoder plus 1 forsendelsesrabatkode pr. ordre. Automatiske rabatter tæller ikke op mod denne grænse, men de følger stadig klassekombinationsreglerne, så en kunde ser kun de koder, der faktisk har tilladelse til at kombineres givet deres klasser og indstillinger. Alt der konflikter, løses af reglen højeste værdi.
Den praktiske konsekvens: koder er ikke en genvej omkring stacking-regler. En kode er blot en anden rabat med en klasse. Hvis du ønsker en kode for at kombineres med dit automatiske volumetrin, skal de to være i forskellige klasser, og begge skal være markeret som kombinérbar.
Hvorfor vises rabatten i kurven, men ikke ved kassen?
Dette er fælden, der koster butikker rigtige penge, og det er den mest almindelige klage over rabat apps generelt. Kurv siden og checkoutet er i mange apps to forskellige systemer, der beregner rabatter på to forskellige måder.
Mange rabat apps beregner den stacakede total ved hjælp af JavaScript på kurv siden eller et tema widget. Det preview ser perfekt ud. Derefter klikker kunden på checkout, og Shopifys checkout, som ikke kører det tema JavaScript, genberegner med sine egne regler. Hvis de to stemmer ikke overens, ser kunden ét tal i kurven og et anderledes tal ved kassen. Underopkrævning koster forhandleren margin; overopkrævning koster salget. Det bliver værre med accelererede checkouts: Shop Pay, Apple Pay og Google Pay springer helt over kurv siden, så tema-baseret rabat logik køres aldrig for disse købere, og rabatten mislykkes stille og roligt.
Den eneste pålidelige løsning er at beregne rabatter server-siden, inden for Shopifys egen checkout pipeline, så der er én sandhedskilder. Det er, hvad Shopify Functions er til. En rabat bygget på Shopify Functions kører den samme beregning, uanset om køber er på kurv siden, checkout siden eller en accelereret checkout, fordi ét system gør matematikken. Kurv preview og den endelige opkrævning kan ikke gå i stykker, fordi de er den samme beregning.
BILLEDE PLACEHOLDER (Billede 2): Kurv total versus checkout total
Foreslået visual: En 16:9 split-panel illustration. Venstre panel mærket "Theme JavaScript" viser en kurv med en stacakede total på 92 dollar og et lille rødt advarsel. Højre panel mærket "Shopify checkout" viser samme kurv opkrævning på 110 dollar med et rødt mismatch badge. En center divider med et brækket kæde ikon. Nedenfor, et grønt banner læser "Server-side Functions: one total, everywhere." Brand farver violet og guld, flad vektor stil, ingen fotografi.
Gennemarbejdet eksempel: stacking af en volumetrin, en orderrabat og gratis forsendelse
Lad os gøre dette konkret. En kunde bygger denne kurv:
- 3 trådløse øretelefoner på 40 dollar hver, subtotal 120 dollar
- Standard forsendelse koster normalt 8 dollar
Butikken kører tre tilbud:
- En volumerabat: køb 3 eller flere øretelefoner, få 15 procent rabat (produktklasse)
- Et udgiftsmål: 10 dollar rabat på ordrer over 100 dollar (orderklasse)
- Gratis forsendelse på ordrer over 75 dollar (forsendelsesklasse)
Alle tre er i forskellige klasser, så de er berettiget til at kombineres, forudsat at hver enkelt er indstillet til at kombineres med de andre. Her er hvordan matematikken spilles sammenlignet med Shopifys standardadfærd.
Med stacking konfigureret korrekt betaler kunden 92 dollar og får gratis forsendelse. Med Shopifys out-of-the-box standard, hvor kombinering er fra, gælder kun den enkelt højeste-værdi rabat. Det er 18 dollar volumerabaten, så kunden betaler 102 dollar og betaler stadig 8 dollar forsendelse, for en total på 110 dollar. Orderrabatten og den gratis forsendelse firer aldrig.
De 18 dollar forskel mellem 110 og 92 er forskellen mellem "Jeg slog stacking til" og "Jeg antog, at Shopify ville bare gøre det." Multiplicer det med en BFCM weekend, og indsatsen er åbenbar.
Hvordan du opsætter stapelbare rabatter i Shopify, trin for trin
Du kan gøre meget af dette med native Shopify rabatter, hvis du er forsigtig. Her er den pålidelige sekvens.
1. Beslut klassen for hvert tilbud
Skriv ned alle tilbud, og mærk dem produkt, ordre eller forsendelse. Dette fortæller dig øjeblikkeligt, hvilke tilbud der kan kombineres (forskellige klasser), og hvilke der skal kæmpe (samme klasse). To produkttilbud målrettet de samme emner stacakes aldrig på en standard plan, så plan omkring det nu, ikke ved checkout.
2. Hold konkurrerende rabatter i forskellige klasser
Hvis du vil have to ting til at lægge sammen, sørg for, at de ikke er samme klasse. Vil du have en procentdel rabat på produkter plus et dollarbeløb rabat på ordren? Godt, de er produkt og ordre, de kan kombineres. Vil du have to procenter rabat på det samme produkt? Det er to produktrabatter på en linje, som har brug for Shopify Plus. Omstrukturmere den ene af dem, for eksempel gør den anden til en orderrabat, så de lever i forskellige klasser.
3. Slå kombinering til for hver rabat
I Shopify admin, hver automatisk rabat og kode har en "Kombinationer" sektion, hvor du checker, hvilke andre rabattyper den kan kombineres med. Dette er fra som standard. Åbn hvert tilbud, der skal stacakes, og tillad det eksplicit at kombineres med de relevante klasser. Hvis du springer dette over på selv én tilbud, kører det tilbud alene.
4. Tænk på per-linje- og per-ordre-grænserne
Husk: en produktrabat pr. kurv linje, en orderrabat pr. ordre, en forsendelsesrabat pr. ordre, og maksimalt 25 aktive automatiske funktionsbaserede rabatter pr. butik. Design ikke en kampagne, der har brug for to orderrabatter for at stacakes, fordi det kan ikke.
5. Test både en burde-gælde og en burde-ikke-gælde kurv
Byg en rigtig test kurv, der kvalificerer sig til alle dine tilbud, sted en udkast eller test ordre, og læs checkout sammenfattelse linje for linje for at bekræfte hver forventet rabat er der. Byg derefter en kurv, der kun burde få nogle af dem, og bekræft de andre korrekt forbliver fra. Stillevirkende fejlslutninger er fjenden: en rabat, der aldrig firer, fejler aldrig.
6. Verificer de accelererede checkouts
Kør samme test kurv gennem Shop Pay. Native eller Functions-baserede rabatter gælder identisk; rabatter, der er afhængige af tema scripts, er hvor du fanger kurv-versus-checkout mismatchet før dine kunder gør.
BILLEDE PLACEHOLDER (Billede 3): De tre kombinationsknapper på et tilbud
Foreslået visual: En 16:9 produktskærm mockup af Stackable kampagne editor Stacking trin. Viser et tilbud med tre mærkede toggle switches, "Kombinere med produktrabatter," "Kombinere med orderrabatter," og "Kombinere med forsendelsesrabatter," to slået til og en fra, med en klartekst sammenfattelse linje under læse "Dette tilbud stacakes med ordre og forsendelsesrabatter." Ren Shopify Polaris admin styling, brand accent i violet. Henvisning til dokumenter/screenshot-manifest.md slot discount-stacking-step-1 til at indfange det virkelige skærmbillede senere.
Kør dette pålideligt med Stackable
Hvis du hellere ikke vil hånd-auditere kombinérbare afkrydsningsfelter på tværs af dusinvis af tilbud og test-ordre hver permutation, dette er nøjagtigt problemet Stackable blev bygget for at løse, og det gør det ærligt inden for Shopifys reelle regler.
- Hvert tilbud har tre kombinationsknapper, en hver for produkt-, ordre- og forsendelsesrabatter. De kortlægger en til en til, hvordan Shopify afgør kombinationer, så det du indstiller er, hvad checkout gør. Der er ingen skjulte standardindstillinger at opdage med en test ordre.
- En kurv simulator kører en prøvekurv gennem hvert aktivt tilbud, før du går live, og viser den nøjagtige linje-for-linje total, plus hvilke tilbud firedde og hvilke der ikke gjorde og hvorfor.
- Matematikken køres indeni en Shopify Function, så kurv siden, checkout siden og accelererede checkouts som Shop Pay alle beregner den identiske total fra ét system. Der er ingen tema-versus-checkout drift at jagte.
- Stackable ændrer aldrig dine produktpriser. Rabatter eksisterer kun som checkout justeringer, så afinstallation efterlader dit katalog nøjagtigt, som det var.
Installer Stackable gratis og se, at kurv, checkout og Shop Pay stemmer på øret, på usestackable.com/pricing. 🚀
Bundlinjen
- Shopify anvender som standard kun din enkelt højeste-værdi rabat. Stacking er ikke automatisk; det er en indstilling, du slår på pr. tilbud.
- Der er tre rabatklasser: produkt, ordre og forsendelse. Rabatter kombineres på tværs af klasser, aldrig inden for samme klasse, hvor højeste værdi vinder.
- Produktrabatter følger en-pr.-kurv-linje regel. To produktrabatter på det samme emne stacakes kun på Shopify Plus, ved hjælp af tag-baseret samme-linje stacking.
- Rabatkoder adlyder de samme klasseregler, med en checkout grænse på 5 produkt- eller ordrekoder plus 1 forsendelseskode pr. ordre.
- Kurv-versus-checkout mismatchet sker, når rabatter beregnes i tema i stedet for server-siden. Shopify Functions holder én total overalt, herunder Shop Pay.
- Test altid både en kurv, der skal få hver rabat, og en, der ikke skal, og læs checkout sammenfattelse linje for linje. Stillevirkende fejlslutninger udsender aldrig fejl.
- Værktøjer som Stackable udsætter de tre per-klasse kombinationsknapper direkte og preview den nøjagtige total før du går live, så det du konfigurerer er, hvad checkout opkræver.
Relaterede artikler
- Rabatopsætning, gjort rigtigt: hvordan de tre per-klasse kombinationsknapper virker med en live simulator.
- Volumerabatter og mængde breaks: tæl enheder af det samme produkt, ikke hele samlingen.
- Udgiftsmål og orderrabatter: belønne kunder for at krydse en kurv-værdi tærskel.
- Gratis forsendelse tilbud: tilføje gratis forsendelse som et forsendelsesklasse lag, der stacakes med dine produkttilbud.
- Migrering væk fra Shopify Scripts: flyt regelbaseret rabat logik til Functions før den 30. juni 2026 deadline.
- Shopify Scripts slutter: migrer uden en udvikler: den no-code sti væk fra Scripts.
- Auto-tilføj en gratis gave, når kurven rammer et udgiftsmål: det gratis-gave mønster native Køb X få Y kan ikke gøre.
- Stackable priser: planer, det gratis lag, og hvad hver inkluderer.



