Feed produktowy to plik XML lub CSV z listą produktów sklepu — nazwą, ceną, dostępnością, zdjęciem i linkiem — który regularnie pobierają Google Merchant Center, Facebook, Ceneo i inne platformy. Bez niego Twoje produkty nie pojawią się w Google Zakupach, w reklamach dynamicznych ani w porównywarkach cen. W PrestaShop feed przygotujesz ręcznie z eksportu CSV albo automatycznie modułem, który generuje plik dla każdej platformy i odświeża go przez CRON. Poniżej wyjaśniamy, do czego służą feedy, co decyduje o ich jakości i jak krok po kroku generować je modułem PriceWars.
Czym jest feed produktowy?
Feed produktowy (nazywany też plikiem produktowym, feedem XML albo plikiem dla porównywarek) to ustrukturyzowana lista ofert sklepu w formacie, który rozumie konkretna platforma. Każdy produkt — albo każdy wariant, np. koszulka w rozmiarze M — jest w nim osobną ofertą z tymi samymi polami:
| Pole | Co zawiera | Przykład |
|---|---|---|
| Identyfikator | stały numer oferty | 128-45 |
| Tytuł i opis | nazwa produktu i krótki opis | Kurtka przeciwdeszczowa Nord, granatowa, M |
| Cena i waluta | cena brutto, którą widzi klient | 349.00 PLN |
| Dostępność | w magazynie, na zamówienie, brak | in_stock |
| Link i zdjęcie | adres karty produktu i zdjęcia | https://…/kurtka-nord.jpg |
| Marka i GTIN | producent i kod kreskowy EAN | 5901234123457 |
| Kategoria | kategoria sklepu lub platformy | Odzież > Kurtki |
Platforma pobiera plik spod stałego adresu, np. co kilka godzin, i na jego podstawie aktualizuje oferty. Dlatego feed musi być zawsze aktualny: jeśli produkt zniknie z magazynu, a plik nadal pokazuje go jako dostępny, płacisz za kliknięcia, z których nie będzie sprzedaży.
Do czego służą feedy produktowe?
Jeden katalog PrestaShop może zasilać kilka kanałów sprzedaży naraz. Każdy z nich potrzebuje własnego pliku, bo różnią się formatem, wymaganymi polami i drzewem kategorii.
- Google Merchant Center — reklamy produktowe (Google Zakupy, Performance Max) i bezpłatne informacje o produktach w wyszukiwarce. Jak założyć konto i dodać pierwszy plik, opisaliśmy w poradniku o Google Merchant Center i PrestaShop.
- Katalog Meta — reklamy dynamiczne na Facebooku i Instagramie, które pokazują klientowi produkty oglądane w Twoim sklepie, oraz zakładki ze sklepem.
- Porównywarki cen — Ceneo, Skąpiec, Okazje.info w Polsce, Heureka i Zboží.cz w Czechach, idealo w Niemczech, Compari.ro, Árukereső.hu. Klient porównuje tam ceny wielu sklepów i przechodzi do najtańszego lub najlepiej ocenianego.
- Marketplace'y i integratory — eMAG, Skroutz, Morele.net, marketplace'y Mirakl (Carrefour, Decathlon, Empik), Base.com (BaseLinker) i hurtownie, które przyjmują ofertę dostawcy w pliku.
- Sieci afiliacyjne i asystenci AI — Awin oraz feed produktów OpenAI, z którego korzysta ChatGPT.
Feed przydaje się też poza sprzedażą: plik w formacie mapy witryny pomaga wyszukiwarkom znaleźć wszystkie produkty i ich wersje językowe. Więcej o tym w poradniku o mapie witryny XML w PrestaShop.
Dlaczego jakość feedu ma znaczenie?
Platformy nie poprawiają Twoich danych — odrzucają oferty, które nie spełniają ich specyfikacji. Odrzucony produkt nie wyświetla się wcale, a często dowiadujesz się o tym dopiero z raportu w panelu platformy, kilka dni później. Najczęstsze powody to:
- cena lub dostępność niezgodna ze stroną produktu — Google porównuje dane z pliku z tym, co widzi na karcie produktu;
- brak identyfikatorów — marki i kodu GTIN (EAN) dla produktów, które je mają;
- zła kategoria — platformy z własnym drzewem kategorii (Google, Ceneo, Heureka) oczekują przypisania do swojej kategorii;
- niedozwolone znaki i HTML w opisie, zbyt długie tytuły, brakujące zdjęcia.
Dochodzą przepisy. Przy promocji w Unii Europejskiej trzeba podać najniższą cenę z 30 dni przed obniżką (dyrektywa Omnibus), a rozporządzenie GPSR wymaga danych producenta i, gdy producent jest spoza UE, osoby odpowiedzialnej w Unii — część platform prosi o te dane w pliku. Dobry feed to więc nie tylko „eksport produktów”, ale plik zgodny ze specyfikacją każdej platformy, z tymi samymi cenami, które widzi klient.
Jak wygenerować feed w PrestaShop?
PrestaShop nie ma wbudowanego generatora feedów dla porównywarek. Masz trzy drogi:
- Eksport CSV z panelu (Katalog → Produkty → Eksportuj) i ręczna obróbka w arkuszu. Działa przy kilkudziesięciu produktach i jednym kanale, ale plik trzeba aktualizować ręcznie, a ceny z rabatami i warianty liczysz sam.
- Osobny moduł dla każdej platformy — osobno Google, osobno Ceneo, osobno Facebook. Każdy ma własne ustawienia, mapowanie kategorii i cron, co przy kilku kanałach szybko się mnoży.
- Jeden moduł do wszystkich feedów — wspólne filtry, reguły cen i mapowanie kategorii, a dla każdej platformy plik w jej formacie.
Trzecią drogę realizuje nasz moduł PriceWars - generowanie feedów: tworzysz w nim dowolną liczbę feedów — dla Google, Meta, Ceneo i ponad 20 innych platform i formatów — a każdy ma własny język, walutę, kraj, produkty i ceny.
Generowanie feedów modułem PriceWars krok po kroku
Moduł działa w PrestaShop 1.7.8, 8 i 9 (PHP od 7.2.5), także w trybie multistore. Po instalacji znajdziesz go w menu Katalog → PriceWars. Ceny, stany i koszty dostawy liczy funkcjami samego PrestaShop, więc w pliku są te same kwoty, które widzi klient — z Twoimi podatkami, cenami specjalnymi i rabatami grup.
Krok 1. Dodaj feed i wybierz platformę
Kliknij Dodaj feed i wybierz platformę. Nowy feed od razu dostaje ustawienia, jakich oczekuje dana platforma. Lista pokazuje wszystkie feedy sklepu z formatem, liczbą ofert i datą ostatniego pliku, a akcje w wierszu otwierają mapowanie kategorii, diagnostykę, podgląd i generowanie.


Krok 2. Ustaw adres i sposób generowania
W zakładce Ogólne nadajesz feedowi nazwę w adresie, np. ceneo — plik będzie dostępny pod stałym, krótkim adresem, który wklejasz w panelu platformy. W Generowaniu wybierasz plik z pamięci podręcznej (szybki, odświeżany przez cron), plik zapisywany tylko przez cron albo generowanie na żywo. Feed może też wymagać klucza, jeśli ma być prywatny.

Krok 3. Język, waluta i rynek
Każdy feed ma własny język, walutę, kraj (podatki i koszt dostawy) oraz grupę klientów (rabaty). Sprzedajesz w Polsce i Czechach? Utwórz feed Ceneo w złotych i feed Heureki w koronach z tego samego katalogu.

Krok 4. Wybierz produkty i warianty
Filtry decydują, co trafia do pliku: kategorie, marki, dostawcy, przedział cen, produkty w promocji, stan magazynu, widoczność albo własna lista produktów. Możesz pominąć produkty bez marki, kodu EAN lub zdjęcia, zanim platforma je odrzuci. Kombinacje eksportujesz jako osobne oferty — każda z własną nazwą, kodem i zdjęciem — albo jako jeden produkt.

Krok 5. Tytuły, opisy i ceny
Tytuł oferty składasz z szablonu ze smart tagami, np. {brand} {name_base} {feature:5} — marka, nazwa i wybrana cecha dają tytuł, który lepiej odpowiada na wyszukiwanie niż sama nazwa produktu. Reguły cen pozwalają podać cenę brutto lub netto, przed rabatem lub po nim, doliczyć narzut wzorem (np. {p} * 1.1 + 5) i dodać najniższą cenę z 30 dni dla platform, które jej wymagają.


Krok 6. Zmapuj kategorie
W Mapowaniu kategorii wskazujesz, które kategorie sklepu są eksportowane, a dla platform z własnym drzewem — odpowiadającą im kategorię Google, Ceneo, Heureki, Zboží.cz lub I-SZOP. Wystarczy wpisać kilka liter i wybrać z listy. Podkategorie dziedziczą wybór kategorii nadrzędnej, więc zmapowanie głównej kategorii obejmuje całe drzewo. Mapowanie skopiujesz z innego feedu albo wyedytujesz w arkuszu (eksport i import CSV).

Krok 7. Sprawdź podgląd i diagnostykę
Zanim wkleisz adres w panelu platformy, otwórz Podgląd: zobaczysz XML pierwszych 20 ofert, a tester produktu wyjaśni, czy dany produkt trafi do pliku i dlaczego nie (np. brak w magazynie albo brak marki, której wymaga platforma). Diagnostyka sprawdza wygenerowany plik ze specyfikacją platformy, wskazuje każdą naruszoną regułę z ofertą, której dotyczy, i pokazuje listę pominiętych produktów z powodem.


Krok 8. Ustaw cron i wklej adres w platformie
Skopiuj adres feedu z listy i wklej go w Merchant Center, Commerce Managerze Meta albo w panelu Ceneo. Żeby plik był zawsze aktualny, ustaw zadanie cron co 15–60 minut — najlepiej z wiersza poleceń: php /sciezka/do/sklepu/modules/ap_pricewars/bin/generate.php --shop=1. Jeśli hosting przyjmuje tylko adresy, użyj adresu crona spod listy feedów.

Wskazówka: nie zmieniaj identyfikatorów ofert w działającym feedzie. Platformy rozpoznają po nich produkty — po zmianie traktują je jak nowe i tracisz historię skuteczności reklam.
Najczęstsze błędy w feedach produktowych
- Plik odświeżany raz na dobę przy szybko zmieniających się stanach. Przy dużej rotacji ustaw cron częściej i pomijaj produkty niedostępne.
- Cena bez podatku w feedzie dla klientów detalicznych. Google i porównywarki oczekują ceny, którą klient zapłaci; sprawdź kraj i grupę klientów feedu.
- Jeden plik na wszystkie rynki. Różne języki i waluty to osobne feedy — inaczej platforma odrzuci oferty lub pokaże złą cenę.
- Brak mapowania kategorii. Produkt w złej kategorii trafia do złych wyników albo jest odrzucany.
- Brak kontroli po zmianach w katalogu. Po imporcie produktów zajrzyj do diagnostyki, zanim platforma zgłosi błędy.
Dobrze przygotowany feed pracuje sam: platformy pobierają aktualny plik, a Ty zajmujesz się ofertą, nie eksportami. Moduł PriceWars przenosi też feedy, ustawienia i mapowania kategorii z modułu SEIGI PriceWars II, jeśli z niego korzystasz.
Najczęściej zadawane pytania
Czym różni się feed XML od CSV?
To dwa formaty tego samego pliku z ofertami. Większość platform (Google, Ceneo, Heureka) przyjmuje XML, niektóre — np. idealo czy Awin — CSV. Format wybiera platforma, nie sklep; moduł generuje plik w formacie, którego dana platforma wymaga.
Jak często aktualizować feed produktowy?
Na tyle często, jak zmieniają się ceny i stany. Dla większości sklepów wystarczy cron co 15–60 minut, a platformy pobierają plik według własnego harmonogramu — w Merchant Center ustawisz go przy dodawaniu feedu.
Czy jeden moduł wystarczy dla Google, Ceneo i Facebooka?
Tak. W PriceWars każdy feed to osobny plik w formacie swojej platformy, z własnym mapowaniem kategorii, filtrami i cenami, a wszystkie zarządzasz z jednej listy w panelu PrestaShop.
Dlaczego Google odrzuca produkty z feedu?
Najczęściej przez niezgodną cenę lub dostępność, brak marki i kodu GTIN, złą kategorię albo zablokowane zdjęcie. Diagnostyka modułu sprawdza plik według reguł specyfikacji Google i wskazuje oferty z błędami, zanim zrobi to Merchant Center.
Czy feed produktowy obciąża serwer?
Generowanie dużego katalogu to jednorazowy wysiłek przy każdym odświeżeniu. Moduł wczytuje produkty porcjami, zapisuje gotowy plik i podaje go platformom z pamięci podręcznej, więc pobranie feedu nie przelicza katalogu za każdym razem.
Chcesz pokazać produkty w Google, na Facebooku i w porównywarkach bez ręcznych eksportów? Zobacz moduł PriceWars - generowanie feedów albo napisz do nas, jeśli masz pytanie o swój sklep.