W skrócie
- Feed to jeden plik XML lub CSV z całym katalogiem; format jest drugorzędny, ważne są kompletne i spójne dane.
- Minimum dla każdego produktu to stabilny identyfikator, tytuł, opis, cena, dostępność, link, zdjęcie, kategoria i marka.
- EAN i kod producenta pozwalają kanałom rozpoznać produkt, więc ich braki to najczęstsza przyczyna odrzuceń i słabej widoczności.
- Warianty muszą mieć własne SKU i wspólny element grupujący, inaczej rozmiary i kolory staną się osobnymi, chaotycznymi ofertami.
- Walidację zrób przed wysyłką, a ceny i stany aktualizuj częściej niż opisy.
- Jeden dobrze zbudowany plik główny obsłuży wiele kanałów, jeśli dla każdego dopracujesz tylko mapowanie kategorii i drobne reguły.
Czym jest feed i kiedy wybrać XML, a kiedy CSV
Feed produktowy to plik, który opisuje Twój katalog w uporządkowanej formie: jeden produkt to jeden rekord, a każda cecha produktu ma swoje pole. Generuje go zwykle sklep internetowy, system ERP albo wtyczka eksportująca. Odbiorca, czyli porównywarka lub marketplace, pobiera plik spod stałego adresu i na jego podstawie buduje lub odświeża oferty.
XML trzyma dane w znacznikach, więc dobrze radzi sobie z długimi opisami, zagnieżdżonymi parametrami i wieloma zdjęciami przy jednym produkcie. To najczęstszy wybór w sklepach z rozbudowanym katalogiem. CSV to zwykła tabela: wiersz to produkt, kolumna to pole. Jest prostszy do ręcznej edycji w arkuszu, ale gorzej znosi znaki specjalne, przecinki w opisach i produkty z wieloma atrybutami.
Jeśli Twój system potrafi wyeksportować oba formaty, wybierz XML dla dużego katalogu z wariantami, a CSV dla małej oferty, którą czasem poprawiasz ręcznie. Najważniejsze, żeby plik był generowany automatycznie i dostępny pod stałym adresem. Plik wgrywany ręcznie raz na miesiąc szybko rozjedzie się z cenami i stanami w sklepie.
Obowiązkowe pola: minimum, które musi mieć każdy produkt
Nazwy pól różnią się między kanałami, ale zestaw podstawowych informacji jest wszędzie podobny. Każdy kanał ma własną specyfikację, więc przed wygenerowaniem pliku pobierz ją i porównaj z eksportem ze sklepu. Poniższa lista to wspólny mianownik, od którego warto zacząć.
Zwróć uwagę na formaty. Cena powinna mieć jednolity zapis, najczęściej z kropką jako separatorem dziesiętnym, bez spacji i znaków typu „zł”, a waluta bywa podawana osobnym polem lub kodem. Dostępność wpisuj w sposób przewidziany przez kanał, nie własnymi słowami typu „od ręki”. Link do produktu musi prowadzić na działającą stronę z tym właśnie towarem, a nie na stronę główną czy listing kategorii.
Do pól podstawowych dodaj te, które zmniejszają liczbę pytań i zwrotów: stan produktu (nowy, używany, odnowiony), wagę, wymiary i koszt lub czas dostawy, jeśli kanał ich oczekuje. Brak jednego opcjonalnego pola rzadko blokuje ofertę, ale każda luka zmniejsza jej szanse w filtrach i wyszukiwaniu.
- Unikalny, stały identyfikator produktu (ID lub SKU), który nigdy się nie zmienia.
- Tytuł zgodny z zasadami opisanymi w poradniku o tytule oferty.
- Opis produktu, najlepiej bez nadmiaru formatowania i bez danych kontaktowych sklepu.
- Cena brutto w jednolitym formacie.
- Dostępność lub stan magazynowy.
- Adres strony produktu w Twoim sklepie.
- Adres głównego zdjęcia i, jeśli to możliwe, kolejnych ujęć.
- Kategoria sklepu, a często także kategoria docelowa kanału.
- Marka lub producent.
- EAN albo inny identyfikator produktu, jeśli produkt go posiada.
Identyfikatory: EAN, SKU i kod producenta
Identyfikatory to część pliku, którą sprzedawcy najczęściej lekceważą, a która najmocniej wpływa na dopasowanie. EAN (inaczej GTIN) to kod kreskowy produktu nadany przez producenta. Dzięki niemu kanał rozpoznaje, że Twój telefon, odkurzacz czy zabawka to ten sam model, który sprzedają inni, i może połączyć oferty, pokazać parametry i porównać ceny.
Kod producenta (MPN) przydaje się wszędzie tam, gdzie EAN nie istnieje lub jest niejednoznaczny, na przykład przy częściach zamiennych i akcesoriach. SKU to Twój wewnętrzny kod magazynowy. Nie zastępuje EAN-u, ale jest niezbędny, bo to po nim wiążesz zamówienia z towarem w magazynie. Trzymaj się jednej zasady: ID w pliku ustalasz raz i nie zmieniasz go po edycji tytułu, ceny czy kategorii. Zmiana identyfikatora oznacza dla odbiorcy nowy produkt i utratę dotychczasowej historii oferty.
Nie wpisuj w pole EAN wymyślonych numerów ani zer, żeby przejść walidację. Kod z błędną sumą kontrolną zostanie odrzucony, a fałszywy może połączyć Twoją ofertę z cudzym produktem. Jeśli towar jest własnej produkcji lub nie ma kodu, zostaw pole puste i zadbaj o markę, kod własny i dokładne parametry. Przy produktach marek zawsze przepisuj EAN z opakowania lub od dostawcy, nie z czyjejś oferty.
Zdjęcia w pliku produktowym
Feed nie zawiera samych zdjęć, tylko ich adresy. Odbiorca pobiera obrazy z Twojego serwera, więc każdy adres musi być publiczny, działać bez logowania i najlepiej zaczynać się od https. Częsty błąd to linki prowadzące do miniatur albo do plików, które sklep generuje dopiero po otwarciu strony produktu. Efekt: pusty kadr albo obraz w rozdzielczości, która po powiększeniu się rozmywa.
Pierwsze zdjęcie to zwykle to, które kanał wyświetla na liście wyników, dlatego powinno przedstawiać sam produkt na neutralnym tle, bez ramek, naklejek z promocją i logo sklepu. Wymagania co do minimalnej rozdzielczości i tła różnią się między kanałami, więc sprawdź je w specyfikacji. Zasady dobrego fotografowania, światła i liczby ujęć opisaliśmy w osobnym poradniku o zdjęciach produktowych.
Dodatkowe ujęcia podawaj jako osobne pola lub osobne znaczniki, zgodnie ze specyfikacją, i zachowaj stałą kolejność: od ujęcia głównego, przez detale, po zdjęcia w użyciu. Przy zmianie zdjęcia nadaj plikowi nową nazwę. Gdy podmienisz obraz pod tym samym adresem, część odbiorców nadal będzie wyświetlać starą wersję z pamięci podręcznej.
Kategorie i parametry: jak mówić językiem kanału
Twoje kategorie sklepowe, na przykład „Promocje lata” albo „Dla taty”, nic nie mówią marketplace'owi. Każdy kanał ma własne drzewo kategorii i oczekuje, że przypiszesz produkt do właściwej gałęzi. Najbezpieczniej trzymać w pliku pełną ścieżkę kategorii, na przykład „Elektronika > Telewizory > Telewizory LED”, a nie samą nazwę końcową. Ścieżka pozwala odbiorcy rozstrzygnąć niejednoznaczne nazwy.
Kategoria otwiera drogę do parametrów: przekątnej ekranu, materiału, pojemności, rozmiaru. To one zasilają filtry, po których klient zawęża wyniki. Produkt bez parametrów zniknie z wielu zestawień, nawet jeśli ma dobry tytuł i cenę. Dlatego parametry podawaj w osobnych polach, a nie tylko w opisie, i używaj stałych wartości: jednej jednostki, jednej pisowni koloru, jednego zapisu rozmiaru. Szerzej o tym, dlaczego kompletne dane podnoszą sprzedaż, piszemy w poradniku o parametrach i kategorii oferty.
Zacznij od tabeli mapowania: w jednej kolumnie kategorie sklepu, w drugiej kategorie docelowe. Przy katalogu liczącym tysiące produktów mapuj hurtowo, całe gałęzie, a wyjątki poprawiaj osobno. Jeśli kanał pokazuje raport braków, traktuj go jak listę zadań: braki uzupełniaj grupami, na przykład wszystkie czajniki bez pojemności naraz, zamiast otwierać każdy produkt z osobna.
Warianty: rozmiary i kolory bez bałaganu
Koszulka w pięciu rozmiarach i trzech kolorach to w magazynie piętnaście pozycji, ale dla klienta jeden produkt. Plik musi to odzwierciedlać. Każdy wariant dostaje własne SKU, własny EAN, własny stan magazynowy i, jeśli się różni, własne zdjęcie oraz cenę. Wspólnym elementem jest pole grupujące, które łączy warianty w jedną rodzinę. W specyfikacji Google nazywa się item_group_id, inne kanały używają własnych nazw lub zagnieżdżonych znaczników.
Najczęstszy błąd to wpisanie rozmiaru i koloru wyłącznie do tytułu. Odbiorca nie zbuduje wtedy wyboru wariantów, a klient zobaczy piętnaście niemal identycznych ofert. Rozmiar i kolor trzymaj w osobnych polach, ze stałym słownikiem wartości: nie raz „czarny”, raz „czarna”, raz „black”. Dla rozmiarów wybierz jedną konwencję, na przykład litery dla odzieży i numery dla obuwia, i stosuj ją wszędzie.
Dopilnuj też, by produkt główny i jego warianty nie występowały w pliku jednocześnie jako osobne pozycje, bo spowoduje to duplikaty. To, jak porządkować warianty z punktu widzenia klienta i konwersji, opisaliśmy w osobnym poradniku. Tutaj liczy się strona techniczna: każdy wariant ma unikalne ID, a grupa ma jeden wspólny identyfikator.
Aktualizacja: jak często odświeżać plik i co w nim zmieniać
Nie wszystkie dane starzeją się w tym samym tempie. Opis i zdjęcia zmieniają się rzadko, więc wystarczy aktualizować je przy zmianie produktu. Cena i stan magazynowy to inna sprawa: tu opóźnienie oznacza sprzedaż towaru, którego nie masz, albo oferowanie starej ceny. Plik pobierany przez odbiorcę raz na dobę bywa za wolny dla szybko rotującego asortymentu, dlatego sprawdź, jak często dany kanał odczytuje feed, i ustaw generowanie pliku z odpowiednim zapasem.
Zadbaj, aby adres pliku był stały, a plik generował się sam, według harmonogramu, a nie po ręcznym kliknięciu. Dobrze, jeśli sklep po każdej zmianie ceny lub stanu odświeża eksport, a nie raz dziennie w nocy. Wyłączone produkty usuwaj z pliku albo oznaczaj jako niedostępne zgodnie ze specyfikacją, nie zostawiaj ich z zerowym stanem i starą ceną. Temat spójności stanów i cen omawiamy szczegółowo w poradniku o synchronizacji magazynu.
Pilnuj także cen promocyjnych. Jeśli obniżasz cenę, plik powinien podawać aktualną cenę sprzedaży, a obniżka musi być zgodna z zasadami dyrektywy Omnibus, o czym piszemy w osobnym poradniku. Po zakończeniu promocji cena w pliku ma wrócić do normalnej tego samego dnia, bez ręcznej interwencji.
Walidacja: sprawdź plik, zanim zrobi to odbiorca
Błędy w pliku najlepiej wyłapać u siebie, a nie po odrzuceniu połowy katalogu. Zacznij od poprawności technicznej: plik XML musi być poprawnie zbudowany, z domkniętymi znacznikami, a CSV ze stałym separatorem kolumn i spójnym cudzysłowem. Kodowanie ustaw na UTF-8, inaczej polskie znaki zamienią się w nieczytelne ciągi. Teksty z HTML i znakami specjalnymi umieszczaj zgodnie z zasadami formatu, na przykład w sekcjach CDATA w XML.
Następnie sprawdź zawartość. Otwórz kilkanaście losowych produktów z różnych kategorii, w tym warianty i produkty bez EAN, i porównaj dane w pliku z tym, co widać w sklepie. Wiele kanałów udostępnia własny walidator lub raport z importu, który oddziela błędy blokujące od ostrzeżeń. Błędy napraw od razu, ostrzeżenia uporządkuj według liczby produktów, których dotyczą.
Wprowadź też stałą kontrolę po wdrożeniu. Po aktualizacji sklepu, zmianie motywu czy wtyczki eksport potrafi zmienić strukturę pliku bez ostrzeżenia. Zapisz sobie datę ostatniego poprawnego importu i sprawdzaj liczbę produktów w pliku: nagły spadek z kilku tysięcy do kilkuset to sygnał, że coś poszło nie tak.
- Czy plik otwiera się bez błędu składni i ma kodowanie UTF-8?
- Czy każdy produkt ma unikalne, stałe ID?
- Czy ceny mają jednolity format, bez tekstu i spacji?
- Czy linki do produktów i zdjęć działają i prowadzą do właściwych stron?
- Czy EAN-y mają poprawną długość i nie powtarzają się dla różnych produktów?
- Czy kategorie są zmapowane do drzewa kanału?
- Czy warianty mają własne SKU i wspólny element grupujący?
- Czy liczba produktów w pliku zgadza się z liczbą aktywnych produktów w sklepie?
Jeden plik dla wielu kanałów
Największa korzyść z dobrze zrobionego feedu to możliwość użycia go wielokrotnie. Zamiast budować osobny katalog dla każdego kanału, utrzymujesz jeden plik główny z pełnym zestawem danych i dopasowujesz go do odbiorców. Różnice dotyczą zwykle nazw pól, formatu ceny, mapowania kategorii i wyłączenia części produktów. Gdy plik główny jest kompletny, adaptacja to kwestia reguł, a nie ręcznej pracy nad tysiącami rekordów.
Praktyczne podejście wygląda tak: w pliku głównym trzymasz najbogatszą wersję danych, czyli pełne tytuły, wszystkie zdjęcia, parametry, EAN-y i kategorie sklepu. Dla każdego kanału ustawiasz osobne reguły: które produkty wysyłasz, jak mapujesz kategorie, czy dopisujesz do ceny narzut na prowizję. To ostatnie ma sens, bo prowizje różnią się między platformami, a niższa prowizja pozwala albo zarobić więcej na sprzedaży, albo obniżyć cenę. Jak to policzyć, opisujemy w poradniku o marży na marketplace.
Plik w formacie XML lub CSV, taki jak dla Ceneo czy Google, wystarczy też do podłączenia sklepu do allee przez allee Connect, gdy Twój system nie ma gotowej integracji: katalog trafia do poczekalni, allee dopasowuje kategorie i parametry oraz pokazuje braki, które uzupełniasz grupami. Ceny i stany są synchronizowane ze sklepem, a sklep zostaje po Twojej stronie, bo allee tylko czyta katalog. Więcej o integracjach znajdziesz na allee.pl/dla-sklepow, a o sposobach podłączenia popularnych systemów w osobnym poradniku.
Na koniec zadbaj o porządek organizacyjny. Wyznacz osobę odpowiedzialną za feed, prowadź listę kanałów z datami ostatniego importu i krótką notatkę, jakie reguły obowiązują w każdym z nich. Gdy dołączysz kolejny kanał, nie zaczynasz od zera: sprawdzasz specyfikację, uzupełniasz mapowanie kategorii i uruchamiasz import na próbce. To wystarczy, by szybko, bez chaosu, rozszerzyć sprzedaż o następne miejsce.
Najczęstsze pytania
Co lepsze: plik XML czy CSV?
Żaden format nie jest lepszy sam w sobie. XML sprawdza się przy dużych katalogach z wariantami, wieloma zdjęciami i długimi opisami, a CSV przy mniejszej ofercie, którą edytujesz w arkuszu. Wybierz ten, który Twój system generuje automatycznie i bezbłędnie.
Czy mogę dodać produkty do feedu, jeśli nie mają kodu EAN?
Tak, jeśli towar naprawdę nie ma kodu, na przykład jest własnej produkcji lub rękodziełem. Zostaw wtedy pole puste, nie wpisuj zmyślonych numerów, i zadbaj o markę, kod własny, kategorię i parametry. Dla produktów markowych EAN warto przepisać z opakowania lub od dostawcy.
Jak często powinien być aktualizowany plik produktowy?
Zależy od tego, jak szybko zmieniają się Twoje ceny i stany. Dla towarów szybko rotujących plik powinien generować się kilka razy dziennie lub po każdej zmianie, dla stałego asortymentu wystarczy rzadziej. Sprawdź też, jak często dany kanał pobiera plik, bo to wyznacza realną częstotliwość.
Dlaczego część moich produktów jest odrzucana po imporcie?
Najczęstsze przyczyny to brak obowiązkowego pola, błędny format ceny, niedziałający link lub zdjęcie, niepoprawny EAN i produkt bez przypisanej kategorii. Sprawdź raport z importu, który zwykle wskazuje konkretne produkty i rodzaj błędu, i napraw najpierw te, które dotyczą największej liczby pozycji.
Czy jeden plik produktowy mogę wysłać do kilku porównywarek i marketplace'ów?
Zwykle tak, pod warunkiem że zawiera komplet danych i odpowiada specyfikacji każdego kanału. Różnią się często nazwy pól, format ceny i kategorie, więc dla każdego odbiorcy ustaw osobne reguły mapowania. Plik główny pozostaje jeden, zmienia się tylko jego dopasowanie.
Jak przygotować warianty produktu w pliku produktowym?
Każdy wariant, na przykład rozmiar M w kolorze czarnym, powinien mieć własne SKU, własny EAN i własny stan magazynowy. Warianty łączy wspólne pole grupujące, a rozmiar i kolor podajesz w osobnych polach, nie tylko w tytule. Dzięki temu kanał pokaże je jako jedną ofertę z wyborem opcji.