Varianty produktů ve feedech: jak je správně zpracovat
Jedno tričko v pěti velikostech a třech barvách. Dodavatel ho pošle jako patnáct samostatných produktů, e-shop potřebuje jeden produkt s variantami a Google zase patnáct položek se společným ID. Ukážeme, jak to zpracovat bez chaosu.
Varianty jsou místo, kde se feedy lámou nejčastěji. U jednoduchého produktu stačí spárovat kód a přepsat cenu. U trička v pěti velikostech a třech barvách musíte vědět, že patnáct řádků ve feedu je jeden produkt, podle čeho se liší, který řádek má jaký sklad a ke které barvě patří která fotka.
Každý dodavatel to navíc zapisuje jinak. A výstupní kanály, tedy Heureka, Zboží.cz a Google, chtějí zase něco jiného než váš e-shop. V článku ukazujeme, jak varianty v datech rozpoznat, jak je uložit a jak je poslat dál.
Produkt, varianta a variantní parametr
Než začnete mapovat, ujasněte si tři pojmy:
- Produkt (skupina) je to, co zákazník vidí jako jednu stránku. Tričko Basic.
- Varianta je konkrétní prodejní kus s vlastním kódem, EAN, skladem a často i cenou. Tričko Basic, černé, M.
- Variantní parametr je vlastnost, podle které se varianty liší. Barva a velikost.
Všechno ostatní, třeba materiál, popis nebo značka, patří produktu. Pokud se to liší mezi variantami, není to obyčejný parametr, ale variantní.
Varianty jsou jiná věc než duplicitní produkty od více dodavatelů. Dvě nabídky téhož kusu od různých velkoobchodů spojujete jinak, to popisujeme v článku Konsolidace více dodavatelů.
Jak varianty posílají dodavatelé
V XML feedech dodavatelů se setkáte hlavně se třemi zápisy:
| Zápis ve feedu | Jak vypadá | Co s ním udělat |
|---|---|---|
| Vnořené varianty | Jeden produkt a uvnitř seznam variant, například VARIANTS a VARIANT ve formátu Shoptetu | Nejsnazší případ, struktura už odpovídá e-shopu |
| Ploché položky se skupinovým ID | Každá varianta samostatná položka, společné ITEMGROUP_ID jako u Heureky a Zboží.cz | Seskupit podle ID, rozdílné parametry označit jako variantní |
| Ploché položky bez označení | Každá varianta samostatný produkt, skupina se dá poznat jen z kódu nebo názvu | Seskupit podle pravidel, nejistá seskupení kontrolovat |
Třetí případ je nejpracnější a bohužel častý. Typicky vypadá takto: kódy TS-100-BLK-M, TS-100-BLK-L, TS-100-WHT-M a názvy „Tričko Basic černé M". Skupinu poznáte podle společného začátku kódu, variantní parametry z konce kódu nebo z názvu. Pravidlo se nastavuje pro každého dodavatele zvlášť, protože každý kóduje jinak.
Pozor na falešné skupiny. Dva produkty se stejným začátkem kódu nemusí být varianty, můžou to být dva různé modely jedné řady. Pokud se liší víc než variantními parametry, třeba popisem nebo hlavní fotkou, spojení raději nedělejte automaticky.
Jak varianty uložit v e-shopu
Každá platforma má pro varianty vlastní model a import se mu musí přizpůsobit (k 9/2026):
- [Shoptet](/kb/platformy/shoptet) zapisuje varianty v XML jako elementy
VARIANTuvnitř produktu. Každá varianta má vlastní kód a variantní parametry v blokuPARAMETERSs dvojicíNAMEaVALUE. Obrázky konkrétní varianty se zadávají přímo veVARIANTpřesIMAGE_REF. Shoptet při importu přijímá i XML podle specifikace Heureky. - [WooCommerce](/kb/platformy/woocommerce) má variabilní produkt a pod ním variace. Přes REST API se variace zakládají samostatným endpointem, dávkově podle dokumentace nejvýš 100 objektů najednou. Variantní atributy by měly být globální, jinak e-shop nepozná, že velikost M u dvou triček je tatáž hodnota.
Obecné pravidlo pro všechny platformy: hodnoty variantních parametrů musí projít stejným slovníkem jako ostatní parametry. Když jeden dodavatel pošle „M", druhý „Medium" a třetí „vel. M", zákazník uvidí ve výběru tři různé velikosti. Jak takový slovník postavit, popisujeme v článku Mapování parametrů a atributů.
Sklad, cena a obrázky na úrovni varianty
Tady vzniká nejvíc tichých chyb:
- Sklad patří vždy variantě. Pokud dodavatel posílá sklad jen za celý produkt, nevíte, jestli má skladem černou M, nebo jen bílou XXL. Takový produkt nemůžete poctivě zobrazit jako skladem v konkrétní variantě.
- Cena se často liší. Větší velikosti bývají dražší. Pokud ji e-shop ukládá jen na produkt, přirážka se ztratí nebo se naopak propíše do všech variant.
- Obrázky mají smysl hlavně u barev. Velikost M a L vypadají stejně, černá a bílá ne. Při zpracování přiřazujte fotky podle barvy, ne podle každé varianty zvlášť, jinak stahujete stejný obrázek desetkrát. Víc o práci s fotkami najdete v článku Zpracování obrázků z feedů dodavatelů.
- Zmizelá varianta je jiná situace než zmizelý produkt. Když z feedu vypadne jen jedna velikost, nemažte celý produkt. Variantu skryjte nebo označte jako nedostupnou.
Výstup do Heureky, Zboží.cz a Google
Směrem ven je situace jednodušší, protože kanály mají jasné specifikace:
Heureka a Zboží.cz. Každá varianta je samostatný SHOPITEM s unikátním ITEM_ID. Varianty jednoho produktu spojuje společné ITEMGROUP_ID, rozdíly popisují parametry PARAM. Heureka zdůrazňuje hlavně kategorie jako oblečení, matrace nebo kola, kde má každá varianta vlastní EAN.
Google Merchant Center. Varianty spojuje atribut item_group_id. Podle nápovědy Googlu:
- všechny varianty jednoho produktu mají stejnou hodnotu, různé produkty různou,
- hodnota má být stabilní, jednou přidělenou ji neměňte,
- každá varianta se musí lišit aspoň jedním variantním atributem, například
colornebosize, a kombinace hodnot se ve skupině nesmí opakovat, - produkty, které si jsou jen podobné, ale nejsou varianty,
item_group_idmít nemají.
V roce 2026 Google přidal volitelné atributy item_group_title (společný název skupiny, třeba „Tričko Basic" místo „Tričko Basic černé M") a variant_option, který popisuje, podle čeho se varianty liší, i mimo standardní atributy jako barva nebo velikost. Stávající feedy bez nich fungují dál, jejich přidání je doplněk. Strukturu celého feedu rozebíráme v článku Feed pro Google Merchant Center.
Praktický důsledek: skupinové ID generujte z interního ID produktu v e-shopu, ne z kódu dodavatele. Kód dodavatele se může změnit a s ním by se rozpadly skupiny ve všech kanálech.
Jak na to prakticky
Checklist pro varianty z nového feedu:
- Zjistěte, jak dodavatel varianty zapisuje: vnořené, se skupinovým ID, nebo bez označení.
- Určete variantní parametry a ověřte, že jejich hodnoty máte ve slovníku.
- Pro neoznačené varianty nastavte pravidlo seskupení a první výsledky zkontrolujte ručně.
- Ověřte, že sklad a cena přicházejí na úrovni varianty.
- Přiřaďte obrázky podle barvy, ne podle každé varianty.
- Rozhodněte, co udělat se zmizelou variantou a se zmizelým celým produktem.
- Skupinové ID pro výstupní feedy generujte ze stabilního interního ID.
- Po prvním importu projděte pár produktů s nejvíc variantami ručně na webu i ve srovnávačích.
Varianty řešíme u každého napojení v rámci služby napojení dodavatelů a feedů. Jednorázová implementace začíná od 3 000 Kč za dodavatele. Pokud potřebujete převést varianty při hromadném importu nebo migraci katalogu, podívejte se na importy a exporty. Pošlete nám ukázku feedu a řekneme vám, jak z něj varianty poskládat.
Potřebujete s tím pomoct?