BEAM

Seedlight BEAM: nasz framework wdrażania, automatyzacji i rozwoju platform eCommerce →

← Wszystkie artykuły
AI EngineeringSzymon Żynda9 min czytania

Feed marketplace z Claude Code: od eksportu do walidacji

Ten sam katalog, a każdy kanał chce feedu po swojemu: inne nazwy pól, inne formaty, własna taksonomia i twarde reguły odrzuceń. Pokazujemy, jak Claude Code mapuje kolumny katalogu na pola kanału, uzupełnia braki, waliduje typy i wartości oraz wskazuje oferty, które zostaną odrzucone, zanim wgrasz plik. Na kopii danych i z przeglądem różnic.

Feed produktowy na Google Merchant albo marketplace przygotujesz Claude Code w kilku kontrolowanych przejściach: mapujesz kolumny katalogu na pola wymagane przez kanał, uzupełniasz braki tam, gdzie da się je wyprowadzić z danych, walidujesz typy i wartości (ceny, waluta, dostępność, adresy obrazów, jednostki), a na końcu wskazujesz oferty, które kanał odrzuci, zanim w ogóle wgrasz plik. Claude Code to asystent AI pracujący na Twoich plikach w terminalu, więc przekształca realny eksport, a nie tekst w oknie czatu, o czym szerzej piszemy w przewodniku po Claude Code w eCommerce. Warunek jest jeden i wraca w całym tekście: pracujesz na kopii eksportu i przeglądasz każdą różnicę, zanim cokolwiek zapiszesz. Poniżej cały proces i zasady zlecania.

CATALOG CSV · MESSY EXPORT TO CLEAN ROWSRAW EXPORTS,M,L in one cellEAN checksum?42cm / 0,42 mbroken encodingquotes, separatorsduplicates, gapsCLAUDE CODEsplit variantsvalidate GTINnormalize unitsfix encodinggenerate slugsflag dupes + gapsworks on the file, not a chatCLEAN CATALOGone row per variantvalid check digitsone unit formatclean UTF-8unique slugsflagged for reviewwork on a copy · review the diff before you save · no secrets in the file

Kluczowe wnioski

  • Feed to nie to samo co czysty katalog. Katalog jest źródłem, a feed to jego przekład na wymagania konkretnego kanału: inne nazwy pól, inne formaty i własna taksonomia. Claude Code wykonuje ten przekład na realnym pliku, według reguł, które opiszesz.
  • Automatyzacja feedów AI ma sens wtedy, gdy przesuwa błędy w lewo: walidujesz typy i wartości oraz wykrywasz oferty, które kanał odrzuci, zanim wgrasz plik, a nie po tym, jak Merchant Center pokaże listę dezaprobat.
  • Braki, których nie da się wyprowadzić z danych, jak GTIN czy kategoria kanału przy niejednoznacznym produkcie, Claude Code oznacza, a nie zmyśla. Poprawną wartość uzupełniasz z prawdziwego źródła.
  • Zasada bezpieczeństwa jest jedna: pracuj na kopii eksportu, trzymaj mapowanie pod kontrolą wersji, przeglądaj różnice przed zapisem i nie wrzucaj do plików sekretów ani danych osobowych.

Feed to nie jest ten sam problem co czysty katalog

Łatwo pomylić dwa zadania, które wyglądają podobnie, a rządzą się innymi regułami. Czyszczenie katalogu to porządkowanie źródła: rozbicie wariantów, walidacja kodów, ujednolicenie jednostek i kolorów, usunięcie duplikatów. Opisaliśmy je osobno w tekście o czyszczeniu katalogu CSV i to dobry punkt wyjścia, bo brudnego katalogu żaden feed nie uratuje. Przygotowanie feedu zaczyna się dokładnie tam, gdzie tamto się kończy: masz już czyste dane, ale musisz je przetłumaczyć na język konkretnego kanału. A każdy kanał mówi innym językiem.

Ten sam produkt Google Merchant chce widzieć jako identyfikator, tytuł, opis, link, adres obrazu, dostępność, cenę i GTIN, z kategorią z własnej taksonomii i atrybutami zależnymi od typu produktu. Inny marketplace nazwie te pola inaczej, oczekuje innego formatu ceny albo innej listy kategorii i odrzuci ofertę z powodu, którego Google w ogóle by nie zauważył. Dlatego jeden „uniwersalny” plik nie istnieje. Feed to zawsze przekład katalogu na wymagania jednego, nazwanego kanału, a przekład jest dokładnie tą powtarzalną, żmudną pracą, w której Claude Code jest użyteczny.

Co Claude Code robi z feedem, a czego nie

Różnica między Claude Code a czatem sprowadza się do jednego: czat zwraca tekst, który sam kopiujesz, a Claude Code czyta Twój eksport, proponuje przekształcenia i po Twojej akceptacji zapisuje wynik do pliku. Powtarzalne operacje na tysiącach ofert wykonuje tak samo cierpliwie jak na dziesięciu, i to jest jego realna wartość przy feedach. Nie jest jednak wyrocznią: nie zna Twojego asortymentu lepiej niż Ty, nie wie, do której kategorii kanału należy niejednoznaczny produkt, i nie zgadnie GTIN-u, którego w danych nie ma. Granica jest ostra i warto ją trzymać: Claude Code oznacza i proponuje, a decyzję o wartości, której nie da się wyprowadzić z danych, zostawia Tobie. Poprawnego kodu GTIN ani właściwej kategorii przy wątpliwym produkcie nie wymyśli, i dobrze, bo zmyślona wartość w feedzie to albo dezaprobata, albo cichy błąd, który zobaczysz dopiero po spadku sprzedaży.

Zasada numer jeden: pracuj na kopii i wersjonuj mapowanie

Nigdy nie przekształcaj oryginalnego eksportu. Zrób kopię i pracuj na niej, a mapowanie pól katalogu na pola kanału trzymaj pod kontrolą wersji (choćby w prostym repozytorium), żeby każdą zmianę reguł dało się cofnąć i porównać. Do plików udostępnianych narzędziu nie wrzucaj sekretów: kluczy API do platformy sprzedażowej, tokenów ani danych osobowych. Feed produktowy to jedno, a plik z wrażliwymi danymi to zupełnie inna decyzja. Claude Code czyta dokładnie to, co mu dasz, więc to Ty decydujesz, co widzi.

Jak zlecać: wejście i oczekiwane wyjście

Jakość feedu zależy nie od tego, jak „inteligentne” jest narzędzie, tylko od tego, jak precyzyjnie opiszesz przekład. Nie zlecaj „przygotuj feed na Google”, bo dostaniesz cudzą interpretację specyfikacji. Zamiast tego opisz trzy rzeczy: co masz na wejściu (jakie kolumny katalogu, w jakim stanie), jak ma wyglądać wyjście (docelowe pola kanału, ich nazwy, format i separator) oraz reguły przekształcenia (które kolumna katalogu odpowiada któremu polu kanału, jak formatować cenę i walutę, jak mapować dostępność, jak zbudować adres obrazu). Najskuteczniej działa jeden przykład: bierzesz jeden realny wiersz katalogu i piszesz obok, jak ma wyglądać ten sam produkt jako pozycja feedu, pole po polu. Taki przykład mówi więcej niż akapit opisu specyfikacji.

Do tego dokładasz jedno zdanie, które warto powtarzać przy każdym zadaniu: „pokaż mi różnice i oznacz wszystko, czego nie jesteś pewien, zamiast zgadywać”. Ono zamienia ryzykowną automatyzację w kontrolowany proces. Nie prosisz Claude Code o gotowe komendy ani o to, żeby sam zdecydował, co jest wymagane. Prosisz o wykonanie jasno opisanych reguł i o rzetelne oznaczenie wszystkiego, co wymaga Twojej decyzji. Specyfikację pól kanału zawsze bierzesz z oficjalnej dokumentacji danego kanału i to Ty jesteś jej źródłem, bo wymagania i nazwy atrybutów bywają aktualizowane, a narzędzie nie ma powodu znać ich lepiej niż aktualny dokument dostawcy.

Proces krok po kroku

Poniższe kroki układają się w naturalnej kolejności: od mapowania struktury, przez uzupełnianie i walidację, po wykrywanie ofert skazanych na odrzucenie. Rób je przejściami i sprawdzaj różnice po każdym, zamiast puszczać wszystko naraz.

Mapowanie kolumn katalogu na pola kanału

Punkt wyjścia to tabela odwzorowania: która kolumna katalogu trafia do którego pola kanału i w jakiej formie. Podajesz to mapowanie, a Claude Code przepisuje dane do docelowej struktury, zmienia nazwy pól, składa wartości złożone (na przykład tytuł z marki, nazwy i wariantu według Twojej reguły) i pomija kolumny, których kanał nie używa. Sprawdzasz jedno: czy każde pole wymagane przez kanał ma źródło w katalogu, a jeśli nie ma, to jest to pierwsza lista braków do rozwiązania, zanim ruszysz dalej.

Uzupełnianie braków: GTIN, kategoria, atrybuty

Część braków da się wyprowadzić z danych, które już masz, i tu Claude Code pomaga: proponuje kategorię kanału na podstawie kategorii wewnętrznej według Twojego mapowania, uzupełnia atrybuty wyliczalne z innych pól, składa brakujący identyfikator według reguły. Części braków wyprowadzić się nie da i to jest granica, której nie wolno przekraczać. GTIN produktu, który go po prostu nie ma w źródle, albo kategoria przy produkcie niejednoznacznym to wartości do uzupełnienia z prawdziwego źródła, nie do zgadnięcia. Claude Code ma je zebrać w czytelną listę „do decyzji”, a nie wypełnić prawdopodobnie brzmiącą wartością. Zmyślony GTIN nie jest brakiem mniej, jest błędem więcej.

Walidacja typów i wartości

Gdy pola są już na miejscu, sprawdzasz, czy ich zawartość ma sens dla kanału. Cena musi być liczbą w oczekiwanym formacie i z walutą, dostępność jedną z dozwolonych wartości, adres obrazu poprawnym linkiem, a nie ścieżką lokalną, jednostki i wymiary w formacie, którego kanał oczekuje. Claude Code przechodzi feed i oznacza pola, które nie mieszczą się w typie albo dozwolonym zbiorze wartości: cenę zapisaną z przecinkiem tam, gdzie ma być kropka, pustą dostępność, link do obrazu bez protokołu, ujemny albo zerowy stan przy ofercie oznaczonej jako dostępna. To jest przesunięcie błędów w lewo: łapiesz je w pliku, a nie w panelu kanału.

Wykrywanie ofert, które zostaną odrzucone

Ostatnie przejście jest najcenniejsze, bo dotyka pieniędzy. Wiele odrzuceń ma powtarzalne, przewidywalne przyczyny: brak pola wymaganego dla danego typu produktu, konflikt między polami (na przykład dostępność „w magazynie” przy zerowym stanie), tytuł albo opis łamiący limit długości kanału, brak GTIN tam, gdzie kanał go wymaga i nie akceptuje kombinacji marki z numerem producenta. Claude Code, mając opisane reguły kanału, oznacza oferty, które z tych powodów najpewniej dostaną dezaprobatę, i grupuje je według przyczyny. Nie zastępuje to walidacji po stronie kanału, ale pozwala naprawić najczęstsze odrzucenia, zanim plik w ogóle trafi do Merchant Center czy panelu marketplace.

Ściąga: problem w feedzie, działanie, kontrola

Cały proces zbiera się w jednej tabeli. Kolumna po prawej jest najważniejsza, bo to ona pilnuje, żeby automatyzacja feedów nie zamieniła jednego problemu w drugi.

Problem w feedzieCo robi Claude CodeCo sprawdzić po jego stronie
Kolumny katalogu nie pasują do pól kanałuPrzepisuje dane według Twojego mapowania, zmienia nazwy pól, składa wartości złożoneCzy każde pole wymagane przez kanał ma źródło w katalogu
Braki wyprowadzalne (kategoria, atrybut)Proponuje wartość z danych, które już masz, według reguły mapowaniaCzy propozycja kategorii i atrybutów jest trafna dla niejednoznacznych produktów
Braki niewyprowadzalne (GTIN, kategoria wątpliwa)Oznacza jako „do decyzji”, nie wypełniaŻe oznacza, a nie zmyśla; uzupełnij z prawdziwego źródła
Złe typy i wartości (cena, dostępność, obraz)Oznacza pola poza typem lub dozwolonym zbiorem wartościŻe reguły typów zgadzają się z aktualną specyfikacją kanału
Oferty skazane na odrzucenieGrupuje oferty według przewidywalnej przyczyny dezaprobatyŻe reguły odrzuceń są z oficjalnej dokumentacji kanału, nie z domysłu
Konflikty między polamiWskazuje sprzeczności (np. dostępność kontra stan)Które pole jest prawdą; popraw źródło, nie tylko feed

Zasada wspólna dla całej tabeli: Claude Code oznacza i proponuje, decyzję o wartości i o zapisie zostawia Tobie.

Zanim wgrasz plik: przeglądaj różnice, nie efekt

Wgrywaj dopiero po przejrzeniu różnicy. Zanim wyślesz feed do kanału, obejrzyj różnicę między eksportem a gotowym plikiem (diff): które pola się zmieniły, ile ofert zostało oznaczonych do decyzji, ile skazano na odrzucenie i dlaczego. Nie patrz tylko na końcowy plik, bo wygląda porządnie nawet wtedy, gdy cicho wypadła połowa oferty albo cena poszła w złym formacie. Wgrywaj, gdy różnica wygląda dokładnie tak, jak zakładałeś, a lista „do decyzji” jest pusta albo świadomie zaakceptowana. To kilka minut, które ratuje przed falą dezaprobat i wstrzymanym kontem produktowym.

Od jednorazowego eksportu do stałej automatyzacji feedów

Jednorazowe przygotowanie feedu to dobry początek, ale katalog zmienia się codziennie: ceny, stany, nowe produkty, wycofania. Jeśli za każdym razem ręcznie powtarzasz to samo mapowanie i tę samą walidację, marnujesz czas na pracę, która jest z definicji powtarzalna. Te same reguły (mapowanie pól, uzupełnianie wyprowadzalnych braków, walidacja typów, wykrywanie odrzuceń) da się zamknąć w powtarzalny workflow, który przetwarza kolejne eksporty według raz ustalonych zasad, z tym samym przeglądem różnic przed wysyłką i osobnym feedem na każdy kanał z jednego źródła. To dokładnie praca, którą w Seedlight bierzemy na etapie AI Automation, a szerzej opisujemy w ofercie automatyzacji AI w commerce: zamieniamy jednorazowe przygotowanie feedu w proces, który działa sam i zostawia człowiekowi decyzje, a nie mrówczą robotę.

Dobry feed nie jest celem samym w sobie, tylko warunkiem, żeby produkty w ogóle dało się wystawić i znaleźć w każdym kanale bez fali odrzuceń. Claude Code skraca drogę od surowego eksportu do zwalidowanego pliku z godzin ręcznego dopasowywania do kilku kontrolowanych przejść. Cała sztuka jest w dyscyplinie: pracuj na kopii, opisuj mapowanie i reguły zamiast liczyć na domysły narzędzia, waliduj typy i wartości u siebie i przeglądaj różnice, zanim wgrasz plik. Reszta to już tylko powtarzalność, którą warto zautomatyzować.

FAQ

Czym różni się przygotowanie feedu od czyszczenia katalogu?

Czyszczenie katalogu porządkuje źródło: warianty, kody, jednostki, duplikaty. Feed to przekład czystego katalogu na wymagania jednego kanału: jego nazwy pól, formaty i taksonomię. To dwa etapy: najpierw czysty katalog, potem osobny feed na każdy kanał.

Czy Claude Code sam uzupełni brakujące GTIN-y?

Nie i o to chodzi. Poprawny GTIN to konkretna wartość od GS1 albo producenta, nie liczba do zgadnięcia. Claude Code oznaczy oferty bez GTIN i te, w których kanał go wymaga, ale nie wpisze zmyślonej wartości. Braki uzupełniasz z prawdziwego źródła.

Jak wykryć oferty, które kanał odrzuci, przed wgraniem pliku?

Opisujesz Claude Code reguły odrzuceń z oficjalnej dokumentacji kanału (pola wymagane, limity długości, konflikty między polami), a on oznacza oferty najpewniej skazane na dezaprobatę i grupuje je według przyczyny. To nie zastępuje walidacji kanału, ale łapie najczęstsze błędy wcześniej.

Czy to bezpieczne dla moich danych?

Tak, jeśli trzymasz się zasad: pracuj na kopii eksportu, trzymaj mapowanie pod kontrolą wersji, przeglądaj różnice przed wysyłką i nie wrzucaj do plików sekretów ani danych osobowych. Narzędzie czyta dokładnie to, co mu udostępnisz.

Dziennik

Szymon Żynda

Współzałożyciel Seedlight · platformy eCommerce, AI, SEO i GEO

Więcej od tego autora

Newsletter

Dziennik prosto na skrzynkę

Nowe wpisy i wnioski z realnych wdrożeń, co jakiś czas. Zero spamu, wypisujesz się jednym kliknięciem.