XML feedy od dodavatelů: automatická synchronizace cen a skladu
Jak zpracovat desítky dodavatelských feedů v různých formátech, nastavit marži a pravidla a mít v e-shopu aktuální ceny a dostupnost bez ruční práce.
Autor: Tím SIS PRO · Publikováno · Aktualizováno
Synchronizace dodavatelských feedů automaticky načte XML nebo CSV soubory od dodavatelů, sjednotí je, aplikuje vaše cenová pravidla a zapíše ceny, sklady a nové produkty do e-shopu. Pro vlastní e-shopy na třech trzích jsme na to postavili aplikaci ShopSync. Tady je, co jsme se naučili: jak synchronizace funguje, která pravidla musíte rozhodnout předem, kde feedy selhávají a kdy stačí funkce platformy a kdy potřebujete vlastní aplikaci.
Problém, který feedy řeší
Dodavatel změní cenu nebo vyprodá zboží. Pokud to v e-shopu nezměníte do hodin, prodáváte se ztrátou nebo prodáváte něco, co nemáte. U jednoho dodavatele a sta položek se to dá uhlídat ručně. U deseti dodavatelů a tisíců položek ne. Synchronizace feedů je proto pro e-shop s dropshippingem nebo s větším počtem dodavatelů základní infrastruktura, ne vylepšení.
Jak feed vypadá
Každý dodavatel posílá jiný formát. Někdo XML se strukturou podle vlastních představ, někdo CSV se středníky, někdo tabulku e-mailem, někdo poskytuje API. Běžná pole: kód, EAN, název, cena bez DPH, sklad, obrázek, kategorie, parametry. Méně běžná, ale důležitá: jednotka balení, dostupnost ve dnech, doporučená prodejní cena, hmotnost, celní kód při prodeji mimo EU.
Feedy se liší i ve spolehlivosti: některé jsou generované automaticky a jsou konzistentní, jiné někdo exportuje ručně a jednou za čas pošle prázdný soubor nebo soubor s jinou strukturou. Synchronizace s tím musí počítat.
Architektura synchronizace
- Stažení feedu v nastaveném intervalu (každou hodinu, denně) z URL, FTP nebo API.
- Validace: velikost souboru, počet položek, očekávaná pole. Podezřelý feed se nezpracuje a pošle se notifikace.
- Parser pro konkrétní formát, který data převede do jednotné struktury.
- Párování položek na produkty v e-shopu přes EAN, kód dodavatele nebo interní kód.
- Pravidla: marže, zaokrouhlování, minimální sklad, co s položkami, které z feedu zmizely, priorita dodavatelů.
- Zápis do e-shopu přes API platformy, po dávkách a s ohledem na limity; zapisují se jen změny, ne celý katalog.
- Log a report: co se změnilo, co selhalo, co čeká na schválení.
Každý krok je samostatný, aby se dal testovat a aby chyba v jednom feedu nezastavila ostatní.
Pravidla, která je třeba rozhodnout
Marže
Procento podle dodavatele, kategorie nebo cenového pásma. Plus zaokrouhlování na psychologické ceny a minimální marže, pod kterou se produkt raději skryje, než by se prodával se ztrátou.
Více dodavatelů na jeden produkt
Který má přednost: nejlevnější, nejrychlejší, nebo preferovaný? A co když preferovaný nemá sklad? Běžné pravidlo: preferovaný, pokud má sklad; jinak nejlevnější se skladem; jinak nedostupné.
Položky, které zmizely z feedu
Skrýt, označit jako nedostupné, nebo nechat s nulovým skladem? Nikdy nemazat automaticky. Produkt má historii, odkazy a pozice; zmizení z feedu může být dočasné.
Nové položky
Vytvořit koncept produktu ke schválení, nebo publikovat rovnou? Doporučujeme schvalování: feedy obsahují i položky, které prodávat nechcete, a automaticky publikované produkty bez vlastních popisů jsou duplicitní obsah, který má na webu každý další prodejce téhož dodavatele.
Obrázky a popisy
Přebírat při vytvoření a pak už nepřepisovat, abyste nepřišli o vlastní úpravy. Pokud dodavatel změní obrázek, systém to ohlásí a vy se rozhodnete.
Interval
Ceny a sklady několikrát denně, nové produkty a popisy jednou denně nebo na vyžádání. Častější interval není automaticky lepší; zatěžuje API platformy a u nespolehlivého feedu zvyšuje riziko.
Úskalí z praxe
- EAN chybí nebo je špatný. Bez EAN se páruje přes kód dodavatele a je třeba udržovat převodní tabulku. Špatný EAN spáruje dva různé produkty.
- Rozdílné jednotky a měny. Balení po 10 kusech, ceny v cizí měně, ceny s DPH u jednoho a bez DPH u druhého. Pravidla musí být per dodavatel.
- Nespolehlivé feedy. Prázdný feed nesmí vynulovat sklad. Kontrolujte velikost a počet položek před zpracováním a při velké odchylce od předchozího stavu zpracování zastavte.
- Limity API platformy. Tisíce změn najednou je třeba rozdělit na dávky a respektovat limity požadavků, jinak platforma zápisy odmítne.
- Duplicity. Tentýž produkt pod různými kódy od více dodavatelů. Řeší se převodní tabulkou a pravidlem priority.
- Změny struktury feedu. Dodavatel přejmenuje pole a synchronizace přestane rozumět. Validace to zachytí, oprava parseru je krátká, ale někdo ji musí udělat.
- Kategorie dodavatele. Nesedí s vašimi. Mapování kategorií je ruční práce u každého nového dodavatele.
Co platforma zvládne sama a kdy je třeba aplikace
Upgates má silný import feedů přímo v administraci a pro jednoho či dva dodavatele s jednoduchými pravidly stačí. Shoptet a Shopify to řeší doplňky a aplikacemi, které pokryjí běžné případy.
Vlastní aplikaci potřebujete, když máte desítky feedů, složitá pravidla marže, více dodavatelů na produkt, více e-shopů nebo trhů, když chcete schvalovat nové položky, nebo když potřebujete jeden sjednocený katalog, ze kterého se plní různé platformy a marketplaces. Tehdy je aplikace levnější než sada doplňků, které se navzájem neznají.
Jak začít
- Sepište dodavatele, formát jejich feedů a jak často se mění.
- Určete, jak se položky párují: EAN, kód, převodní tabulka.
- Napište pravidla marže a priority; s čísly, ne obecně.
- Rozhodněte, co s novými a zmizelými položkami.
- Začněte s jedním dodavatelem, ověřte, pak přidávejte další.
Většina problémů se objeví u prvního dodavatele a řešení pak platí pro všechny.
ShopSync: jak to máme my
ShopSync načítá desítky feedů od dodavatelů v různých formátech, páruje položky, aplikuje pravidla marže a synchronizuje ceny a sklad do e-shopů na Upgates na třech trzích. Nové položky schvalujeme, zmizelé se skrývají a čekají, podezřelé feedy se nezpracují. Běží každý den a je důvod, proč víme, kde feedy bolí.
Příklad pravidel v praxi
Modelový dodavatel posílá XML jednou za hodinu, položky páruje přes EAN, ceny bez DPH v korunách, balení po kusech. Pravidla pro jeho feed by mohla vypadat takto:
| Pravidlo | Nastavení |
|---|---|
| Interval | každou hodinu ceny a sklad; jednou denně nové položky |
| Párování | EAN, náhradně kód dodavatele přes převodní tabulku |
| Marže | 28 % v kategorii A, 22 % v kategorii B, minimálně 12 % |
| Zaokrouhlení | na 9 Kč u cen do 1 000 Kč, na desítky korun nad 1 000 Kč |
| Sklad | zobrazit dostupné, pokud dodavatel hlásí alespoň 2 kusy |
| Zmizelé položky | označit jako nedostupné, po 30 dnech skrýt, nikdy nemazat |
| Nové položky | koncept ke schválení s návrhem kategorie |
| Validace | feed s méně než 80 % položek oproti minulému běhu se nezpracuje |
Druhý dodavatel bude mít jiná pravidla a systém je musí držet odděleně. Proto jsou pravidla data, ne kód: měníte je v administraci, ne u programátora.
Co sledovat v reportech
Po každém běhu má vzniknout report: počet zpracovaných položek, počet změn cen, počet změn skladu, nové položky ke schválení, položky, které zmizely, a chyby. Jednou týdně se vyplatí podívat se na trend: rostoucí počet nespárovaných položek znamená, že dodavatel změnil kódy; klesající počet položek ve feedu může znamenat, že dodavatel mění sortiment. Reporty jsou i podklad pro vyjednávání s dodavatelem, když jeho feed opakovaně selhává.
Dodavatelské feedy versus feedy pro srovnávače
Jsou to dvě různé věci, které se často pletou. Dodavatelský feed jde dovnitř: od dodavatele do vašeho e-shopu. Feed pro srovnávače a marketplaces jde ven: z vašeho e-shopu do Heureky, Zboží.cz, Google Nákupů nebo marketplace. Oba potřebují pravidla a kontrolu, ale výstupní feedy generuje platforma nebo doplněk a synchronizace do nich zasahuje jen tím, že jim dodává správné ceny a dostupnost. Pokud jsou vstupní feedy v pořádku, výstupní jsou v pořádku automaticky.
Jak přidat nového dodavatele
Při fungující synchronizaci je nový dodavatel otázka dní, ne týdnů:
- Získat feed a ověřit jeho strukturu a spolehlivost (stáhnout ho několik dní po sobě a porovnat).
- Napsat nebo nastavit parser pro jeho formát.
- Určit párování: má EAN, nebo je třeba převodní tabulka?
- Nastavit pravidla marže, zaokrouhlování a skladu pro tohoto dodavatele.
- Namapovat jeho kategorie na vaše.
- Spustit v režimu náhledu: systém ukáže, co by změnil, ale nezapíše nic.
- Zkontrolovat náhled, opravit pravidla, spustit naostro.
Režim náhledu je nejdůležitější krok. Odhalí špatné párování a nesmyslné ceny dřív, než je uvidí zákazníci.
Sortiment bez EAN
Některý sortiment EAN nemá: náhradní díly, ruční výroba, sypané zboží. Tehdy se páruje přes kód dodavatele a převodní tabulku mezi kódem dodavatele a vaším interním kódem. Tabulku je třeba udržovat u každé nové položky, ale dá se to udělat jako součást schvalování nových položek: když schválíte nový produkt, vazba na kód dodavatele vznikne automaticky. Horší je, když dodavatel kódy mění; tehdy pomůže jen dohoda s ním nebo párování přes kombinaci názvu a parametrů s ručním potvrzením.
Co synchronizace neřeší
Synchronizace řeší ceny, sklady a nové položky. Neřeší kvalitu popisů, fotografií ani rozhodnutí, co prodávat. Produkt s popisem od dodavatele, který má na webu dalších padesát prodejců, se ve vyhledávání neprosadí; vlastní popis a vlastní fotografie pro nejdůležitější produkty jsou práce, kterou za vás automatizace neudělá. Synchronizace vám na ni uvolní čas, to je její skutečný přínos.
Často kladené dotazy
Dá se synchronizovat i do více e-shopů najednou? Ano. Jeden sjednocený katalog se dá plnit do více e-shopů s různými maržemi a měnami. Přesně tak to funguje pro naše tři trhy.
Co když dodavatel nemá feed, jen ceník v tabulce? Tabulka se dá zpracovat jako CSV, pokud má stabilní strukturu. Pokud ji dodavatel posílá e-mailem, dá se načíst ze schránky automaticky. Horší, ale řešitelné.
Jak dlouho trvá nasazení? Integrace pro jednoho až tři dodavatele s běžnými pravidly 2 až 4 týdny. Aplikace na míru pro desítky feedů a více e-shopů déle, termín určí analýza.