Feed pro Facebook katalog: napojení Shoptet na Meta
Dobrá zpráva na úvod: pokud jedete e-shop na Shoptetu, feed pro Facebook katalog už máte hotový. Shoptet ho generuje sám, je to systémový XML feed, je součást platformy a aktualizuje se každou hodinu. Vaše práce tedy není „postavit feed“, ale najít jeho URL, založit katalog v Meta Commerce Manageru, naplánovat načítání a doladit pár polí. Tenhle článek vás tím provede krok za krokem.
A rovnou jeden mýtus z cesty. Občas zazní, že „Facebook katalog je v Česku stejně k ničemu, protože Meta zrušila Obchody“. To plete dvě různé věci dohromady. Meta od 10. 8. 2023 omezila funkce Obchodů (Shops) na vybrané země, takže checkout a FB/IG Shop v ČR opravdu nemusí být plně dostupné. Ale katalog pro reklamy (dynamický remarketing, Advantage+ katalogové kampaně) běžně funguje i v Česku. Pro reklamy katalog potřebujete a tenhle návod je přesně o něm, ne o Shopu.
| Krok | Kde to je | Co udělat |
|---|---|---|
| 1. Najít URL feedu | Shoptet: Propojení → XML feedy | Zkopírovat řádek „Facebook katalog“ (systémový, součást Shoptetu, aktualizace každou hodinu) |
| 2. Nastavit dostupnosti | Shoptet: Nastavení → Produkty → Dostupnosti | U každého stavu vyplnit pole „Google nákupy“ a „Naskladnění v hodinách“, jinak produkt do feedu vůbec nejde |
| 3. Spárovat kategorie | Shoptet: Produkty → Kategorie → Doplňková nastavení | Přiřadit Google kategorii (zpřesní zařazení produktu) |
| 4. Mít Meta Pixel | Meta a Shoptet: Propojení → Facebook / Meta Pixel | Pixel je potřeba pro dynamický remarketing (párování content_ids a id) |
| 5. Založit katalog | Meta: Commerce Manager → + Přidat katalog | Vybrat E-komerce, potvrdit, Nahrát informace o produktu, pojmenovat, vytvořit |
| 6. Přidat zdroj dat | Commerce Manager: katalog → Zdroje → Data feed | Nahrát soubor → Použít URL → vložit URL feedu ze Shoptetu |
| 7. Naplánovat načítání | Commerce Manager: plánované načítání | Nastavit frekvenci „Každou hodinu“ (Meta umí hodinově, minimum je 1x za hodinu) |
| 8. Počkat na kontrolu | Commerce Manager: stav položek / diagnostika | Meta produkty zkontroluje; sledovat odmítnuté a nezobrazené |
Krok 1: Najděte systémový Facebook feed v Shoptetu
V administraci Shoptetu jděte do sekce Propojení → XML feedy a zkopírujte URL z řádku Facebook katalog. Tu adresu pak vložíte do Commerce Manageru. Nemusíte nic skládat ani konfigurovat, je to systémově generovaný feed, který Shoptet drží aktuální za vás.
Pozor jen na to, že se pojmenování v menu napříč verzemi Shoptetu i Meta časem mění. Orientujte se spíš podle významu (řádek „Facebook katalog“ v Shoptetu, „Přidat katalog“ v Meta) než podle přesného popisku. Jde pořád o ten samý systémový feed, akorát Shoptet i Meta tu věc historicky nazývají hned „Facebook katalog“, hned „Facebook feed“.
Jednu vlastnost tohoto feedu si zapamatujte, protože se k ní ještě vrátíme: aktualizuje se každou hodinu. Ta hodinová frekvence bude důležitá u kroku 7.
Krok 2: Nastavte dostupnosti v hodinách (nejčastější česká chyba)
Tohle je úskalí číslo jedna a zároveň nejčastější příčina toho, že „produkt chybí ve feedu“. Shoptet pošle do svého XML feedu (pro Google i Facebook) jen produkty, které mají u dostupnosti vyplněné pole pro Google nákupy. Když ho nevyplníte, produkt do feedu vůbec nevstoupí a v katalogu ho pak marně hledáte.
Nastavuje se to v sekci Nastavení → Produkty → Dostupnosti. U každého stavu dostupnosti vyplňte pole „Google nákupy“ (mapuje český popisek na anglický token, který Meta chce) a „Naskladnění v hodinách“. Bez vyplněné dostupnosti produkt do XML exportu nejde, takže tenhle krok neodkládejte na později.
Krok 3: Pixel a kategorie
Dvě věci, které je dobré mít hotové, než katalog rozjedete naplno.
- Meta Pixel. Pro dynamický remarketing (Meta znovu ukáže přesně ty produkty, které si někdo prohlížel) musí být na webu Pixel a musí párovat chování na webu s produktem v katalogu. Na Shoptetu Pixel napojíte v sekci Propojení → Facebook / Meta Pixel. Klíčové je, aby
idproduktu ve feedu přesně sedělo scontent_ids, které Pixel posílá, k tomu se vrátíme u povinných polí. - Párování kategorií. Na Shoptetu v sekci Produkty → Kategorie → Doplňková nastavení přiřadíte odpovídající Google kategorii. Není to blokující krok, ale zpřesní zařazení produktu, a tím i to, komu a na co se ukáže.
Krok 4: Založte katalog v Commerce Manageru
Commerce Manager je Meta přihrádka, do které se feed nahrává. Katalog založíte přes + Přidat katalog, vyberete typ E-komerce, potvrdíte, zvolíte Nahrát informace o produktu, katalog pojmenujete a vytvoříte. Pak v něm otevřete Zdroje → Data feed, dáte Nahrát soubor → Použít URLa vložíte URL „Facebook katalog“ feedu ze Shoptetu (z kroku 1).
Konkrétní pojmenování sekcí se v Commerce Manageru průběžně mění (Meta UI přejmenovává průběžně), takže se i tady řiďte spíš významem („přidat katalog“, „přidat zdroj dat přes URL“) než přesným popiskem v menu.
Krok 5: Naplánujte hodinové načítání (rozdíl oproti Google Nákupům)
U zdroje dat nastavíte plánované načítání: jak často má Meta feed z té URL stahovat. A tady je příjemné překvapení proti Google Nákupům.
Praktický důsledek: krátkodobý nesoulad ceny nebo dostupnosti mezi e-shopem a katalogem řešte nastavením hodinového načítání, ne čekáním. Nastavte frekvenci „Každou hodinu“ a feed bude blízko realitě. Near-real-time pro prudce se měnící sklad by chtělo Catalog Batch API, ale to běžný Shoptet přes URL nevyužívá a pro většinu e-shopů je hodinové načítání dost.
Devět povinných polí Meta katalogu
Systémový Shoptet feed tahle pole plní za vás, takže je nemusíte psát ručně. Tabulka je tu pro pochopení, co Meta po feedu chce, a pro případnou validaci, když si feed upravujete:
| Pole | Hodnoty / limity | Poznámka pro český e-shop |
|---|---|---|
| id | do 100 znaků | Musí se přesně shodovat s content_ids z Pixelu, jinak dynamický remarketing tiše nefunguje |
| title | max 200 znaků (do 65 doporučeno) | Shoptet plní z názvu produktu |
| description | max 9 999 znaků | Pozor na HTML značky v popisu |
| availability | in stock, out of stock, available for order, preorder, discontinued | Anglický token, ne české „Skladem“; Shoptet mapuje přes pole „Google nákupy“ u dostupnosti |
| condition | jen new, refurbished, used | Užší než u Google, Meta víc hodnot nemá |
| price | číslo, mezera, ISO kód měny | 299.99 CZK, ne 299,99 Kč (tečka, ISO kód, bez symbolu měny) |
| link | URL produktu | Odkaz na detail produktu na webu |
| image_link | URL hlavního obrázku | Meta ji stáhne a nacachuje, tudy vstupuje Emberfeed (viz níže) |
| brand | značka | Povinné pole pro katalogové reklamy |
Cena v korunách a DPH: formát, který shazuje feedy
Meta atribut price chce přesný formát: číslo, mezera a třípísmenný kód měny podle ISO 4217, s tečkou jako desetinným oddělovačem (ne čárkou) a bez symbolu měny. Kód koruny je CZK.
- Správně:
299.99 CZK - Špatně:
299,99 Kč,299.99 Kč,Kč 299.99nebo holé299,99
Systémový Shoptet feed tohle dělá správně. Pozor dejte hlavně tehdy, když si feed upravujete ručně nebo nějakým nástrojem, protože český formát ceny (čárka, „Kč“) je tady jednou z nejčastějších příčin odmítnutí.
K DPH: pro ČR a EU je standardem a doporučením mít cenu ve feedu s DPH a aby se shodovala s cenou na vstupní stránce i v košíku. Systémový feed ze Shoptetu posílá koncovou cenu s DPH, takže když na něm jedete, máte to ošetřené. (Detailněji DPH i párování ceny s košíkem rozebírá Google strana věci, princip je u Meta stejný.)
Časté chyby českých e-shopů
Šest věcí, kvůli kterým padá nejvíc katalogů na Meta. Většinu z nich systémový Shoptet feed řeší sám, problémy nastávají hlavně u ručně upravených feedů a u dostupností:
| Chyba | Proč padá | Oprava |
|---|---|---|
| Dostupnost nenastavená v hodinách / chybí pole „Google nákupy“ | Shoptet pošle do XML feedu jen produkty s vyplněnou dostupností pro Google nákupy; bez toho produkt ve feedu vůbec není | Nastavení → Produkty → Dostupnosti → u každého stavu pole „Google nákupy“ a „Naskladnění v hodinách“ |
| Cena v českém formátu (299,99 Kč) | Meta chce 299.99 CZK (tečka, ISO kód, bez symbolu); systémový feed to dělá správně, ručně upravený často ne | Číslo, mezera, CZK, tečka, max dvě desetinná místa |
| Dostupnost česky (Skladem) místo in stock | Atribut availability chce anglický token, ne český popisek | Shoptet mapuje přes pole dostupnosti; u ručního feedu přemapovat na in stock / out of stock |
| Nesoulad ceny nebo dostupnosti feed vs. stránka | Meta (jako Google) porovnává feed s landing page, nesoulad je problém | Hodinové plánované načítání + cena s DPH shodná s košíkem (u Meta řešte frekvencí, ne čekáním) |
| id se neshoduje s content_ids z Pixelu | Dynamický remarketing tiše nefunguje, Meta nespáruje chování na webu s produktem v katalogu | Sjednotit id v Pixelu a ve feedu |
| Hlavní obrázek s propagační vrstvou nebo plný textu | Pravidlo 20 % textu už není tvrdé pravidlo, ale text-heavy obrázky degradují distribuci a cenu (výkonnostní signál, ne zamítnutí) | Čistý produktový obrázek; brandované vrstvy řešit renderem do feedu (Emberfeed), ne nalepené v editoru |
Obrázek je jen URL, a tady pomůže Emberfeed
Jedna věc, kterou je dobré pochopit, protože je z ní jasné, kde Emberfeed vstupuje: image_link je obyčejná URL. Meta ji stáhne, nacachuje a použije ji v dynamicky složené reklamě. Meta nerozlišuje „šablonovaný“ a „surový“ obrázek, prostě vyrenderuje to, co na té adrese je.
Z toho plyne: když do image_linkpřijde předrenderovaná, brandovaná URL, Meta ji naservíruje jako každý jiný obrázek. Žádné speciální API, žádná „dynamic creative“ integrace. Mechaniku Meta katalogových reklam rozebíráme zvlášť, ale princip je přesně tenhle.
A přesně tak Emberfeed funguje. Vezme systémový feed ze Shoptetu, který už máte, a vylepší ho. Je to hostovaná služba, nic si nenasazujete ani nespravujete na vlastním serveru, jen připojíte URL zdrojového feedu. Konkrétně:
- Obrázky: vyrenderuje produktové obrázky podle navržené šablony per produkt (brandové pozadí, badge, cenovka, lifestyle scéna) místo holé produktové fotky. To je přesně to, co nativní Meta overlaye nenabízejí.
- Pravidla na úpravu polí: jedním pravidlem nad celým feedem sjednotíte třeba formát ceny nebo přemapujete dostupnost na anglický token.
- Validace: feed zkontroluje proti Meta specifikaci dřív, než to udělá Meta, takže problémy vidíte rovnou v Emberfeedu.
- Servírovaná URL: vylepšený feed dostanete jako novou URL, kterou v Commerce Manageru vložíte do načítání místo původní Shoptet URL (krok 6).
Když vám stačí jednoduchá cenovka na Facebook Feed, Meta má nativní overlaye zdarma, použijte je. Emberfeed dává smysl tam, kde chcete designovaný obrázek per produkt fungující napříč všemi umístěními. Cena je 25 €/feed/měsíc (~625 Kč), první 3 měsíce zdarma na jednom feedu do 1 000 produktů, bez karty. K Shoptetu máme samostatnou stránku s detaily k napojení a setup katalogu na Meta rozebírá i use-case katalogové reklamy na Meta.
Related
- Shoptet a Google Nákupy: feed a Merchant CenterNa Shoptetu už feed pro Google Nákupy máte hotový: je systémový a aktualizuje se každou hodinu. Tady je, kde ho najdete, jak ho napojíte do Merchant Center a které dvě pole se nejčastěji zapomínají.
- Meta catalog ads dynamic creative: where the feed takes over"Dynamic creative" is not a switch you flip on a Meta catalog ad. Meta dynamically picks the product; the image is whatever URL sits in your feed. Here is how that works, what Meta's own overlay and frame tools cover, and the exact point where a pre-rendered feed image takes over.
- AI šablony katalogu: dynamické obrázky produktů z feeduRučně upravovat stovky produktových obrázků do reklam a srovnávačů? Feed-vázané AI šablony renderují každý obrázek z feedu automaticky. Jak to funguje, kde to vyhraje nad českými overlay nástroji a co to stojí.
Ship better catalog ads this afternoon.
Free for 3 months on one feed up to 1,000 products. Connect your XML feed, design a template, paste the new URL into Meta / Google / TikTok.