Jak automatycznie importować produkty z hurtowni do sklepu?
Sprawdź, jak zautomatyzować import produktów z hurtowni przez XML, CSV lub API oraz bezpiecznie aktualizować ceny, stany i warianty w sklepie.
Autor: softwero

Ręczne dodawanie produktów ma sens przy kilku pozycjach. Gdy hurtownia udostępnia setki lub tysiące artykułów, kopiowanie nazw, zdjęć, wariantów, cen i stanów magazynowych szybko staje się pracą na pełen etat. Co gorsza, samo jednorazowe wprowadzenie katalogu nie rozwiązuje problemu. Dane zmieniają się codziennie, a sklep powinien nadążać za dostępnością i cenami dostawcy.
Automatyczny import produktów z hurtowni pozwala pobierać katalog z XML, CSV, Excela lub API, dopasować go do struktury sklepu i cyklicznie aktualizować wybrane pola. Dobrze zaprojektowana integracja nie polega jednak na bezrefleksyjnym kopiowaniu wszystkiego. Powinna rozpoznawać produkty, chronić ręczne zmiany, odrzucać błędne rekordy i informować o problemach.
Na czym polega automatyczny import produktów z hurtowni?
Integracja łączy źródło danych dostawcy ze sklepem internetowym. W ustalonych odstępach pobiera katalog, sprawdza jego zawartość, przekształca dane i tworzy albo aktualizuje produkty w systemie sprzedażowym.
Typowy przepływ obejmuje sześć kroków:
- Pobranie aktualnego pliku lub danych z API hurtowni.
- Walidację wymaganych pól, formatów i identyfikatorów.
- Mapowanie kategorii, wariantów, jednostek, cen oraz statusów dostępności.
- Porównanie danych z produktami, które już znajdują się w sklepie.
- Dodanie nowych pozycji i aktualizację tylko tych pól, które mają pochodzić od dostawcy.
- Zapisanie raportu oraz wysłanie alertu, jeśli część danych nie mogła zostać przetworzona.
Pierwszy import buduje katalog. Kolejne uruchomienia służą przede wszystkim synchronizacji. To ważne rozróżnienie, ponieważ przy aktualizacji nie zawsze należy ponownie nadpisywać nazwę, opis, zdjęcia czy przypisanie do kategorii.
XML, CSV czy API: jak hurtownia może udostępniać produkty?
Najpierw trzeba sprawdzić, jakie źródło oferuje dostawca. Format wpływa na stabilność połączenia, częstotliwość aktualizacji i sposób obsługi błędów.
| Źródło | Kiedy się sprawdza | Na co uważać |
|---|---|---|
| API | Gdy ceny i stany mają zmieniać się często, a hurtownia udostępnia dokumentację | Limity zapytań, autoryzacja, niepełna dokumentacja i przerwy w działaniu |
| XML lub JSON | Gdy dostawca publikuje kompletny, regularnie aktualizowany feed | Duże pliki, zmiany struktury i brak niektórych pól |
| CSV lub Excel | Przy prostszym katalogu albo imporcie wykonywanym kilka razy dziennie | Kodowanie znaków, format liczb, kolejność kolumn i ręcznie zmieniane pliki |
| FTP lub SFTP | Gdy plik jest odkładany na serwerze hurtowni | Dostępność pliku, bezpieczne dane logowania i rozpoznanie, czy pojawiła się nowa wersja |
| Scraping | Tylko gdy nie ma stabilnego API ani feedu i sposób użycia danych na to pozwala | Zmiany strony, większa awaryjność oraz prawa do pobierania i publikowania treści |
Jeżeli dostępne jest poprawnie opisane API, zwykle daje największą kontrolę. Można pobierać zmiany częściej, czasem również wysyłać zamówienia lub sprawdzać dostępność konkretnego SKU. Feed XML albo CSV bywa prostszy i całkowicie wystarczający, jeśli hurtownia aktualizuje go regularnie.
Scraping strony powinien być ostatnią opcją. Widok przeznaczony dla człowieka zmienia się częściej niż interfejs integracyjny, a możliwość technicznego pobrania danych nie oznacza automatycznie prawa do ich dalszego użycia. Przed publikacją opisów i zdjęć należy sprawdzić warunki współpracy oraz posiadane licencje.
Jakie dane produktowe trzeba zmapować?
Dwa katalogi rzadko mają identyczną strukturę. Hurtownia może używać własnych nazw kolumn, kategorii i statusów, podczas gdy sklep oczekuje zupełnie innego formatu. Mapowanie określa, gdzie trafi każda wartość i jak zostanie przekształcona.
Identyfikatory: SKU, EAN i identyfikator hurtowni
Każdy produkt powinien mieć stabilny klucz, po którym integracja rozpozna go podczas kolejnego uruchomienia. Najczęściej jest to SKU dostawcy, EAN albo niezmienny identyfikator z API.
Sama nazwa produktu nie jest dobrym kluczem. Hurtownia może poprawić pisownię lub dodać pojemność do nazwy, a system uzna wtedy ten sam produkt za nowy. Efektem będą duplikaty. Warto też zapisać, z której hurtowni pochodzi identyfikator, zwłaszcza gdy sklep korzysta z kilku dostawców.
Kategorie i atrybuty
Kategoria „Dom / Kuchnia / Małe AGD” u dostawcy może odpowiadać kategorii „Wyposażenie kuchni” w sklepie. Potrzebna jest tabela przypisań, a nie proste kopiowanie nazwy.
Podobnie wygląda praca z atrybutami. Kolor „grafit”, „graphite” i kod producenta mogą oznaczać tę samą wartość. Ujednolicenie atrybutów wpływa na filtry, warianty i jakość wyszukiwarki w sklepie.
Warianty
Rozmiary, kolory i pojemności mogą być zapisane jako osobne produkty albo jako warianty produktu nadrzędnego. Przed integracją trzeba ustalić, jak sklep ma je prezentować oraz który identyfikator należy do produktu, a który do konkretnego wariantu.
Błąd na tym etapie może utworzyć kilkanaście oddzielnych kart zamiast jednej karty z wyborem rozmiaru. Może też doprowadzić do aktualizacji stanu niewłaściwego wariantu.
Ceny, podatki i marża
Feed może zawierać cenę netto, brutto, sugerowaną cenę detaliczną, walutę lub kilka progów cenowych. Integracja powinna jednoznacznie określać:
- która cena jest podstawą obliczeń,
- czy trzeba doliczyć podatek,
- według jakiej reguły ustalana jest marża,
- jak działa zaokrąglanie,
- co zrobić, gdy cena źródłowa jest pusta albo gwałtownie się zmieni,
- czy promocje w sklepie mogą zostać nadpisane.
Reguła cenowa powinna być konfigurowalna. Dzięki temu zmiana marży nie wymaga przebudowy całej integracji.
Stany magazynowe i dostępność
Jedna hurtownia podaje dokładną liczbę sztuk, inna używa statusów „dużo”, „mało” i „brak”, a jeszcze inna pokazuje wyłącznie informację o dostępności. Te wartości trzeba przełożyć na zasady sklepu.
Warto zachować bufor bezpieczeństwa. Jeżeli dostawca pokazuje ostatnią sztukę, sklep może ustawić stan zero, aby ograniczyć ryzyko sprzedaży produktu, którego hurtownia nie zdąży już zarezerwować. Przy kilku dostawcach potrzebna jest dodatkowo zasada wyboru źródła i łączenia dostępności.
Opisy i zdjęcia
Opis oraz zdjęcie często wymagają pobrania z osobnego adresu. System powinien kontrolować typ i rozmiar pliku, unikać duplikatów oraz reagować na niedostępny link.
Nie zawsze warto aktualizować te pola cyklicznie. Jeżeli zespół przygotowuje własne opisy SEO i fotografie, integracja może wprowadzić je tylko przy tworzeniu produktu, a podczas kolejnych synchronizacji pozostawić bez zmian.
Pierwszy import i późniejsza synchronizacja to dwa różne zadania
Podczas pierwszego uruchomienia zwykle trzeba utworzyć produkty, kategorie, atrybuty i media. Jest to operacja cięższa i bardziej podatna na błędy, dlatego dobrze wykonać ją partiami na środowisku testowym.
Późniejsza synchronizacja powinna pobierać tylko zmiany lub porównywać aktualne wartości z poprzednim stanem. Najczęściej regularnie aktualizuje się:
- cenę zakupu i cenę sprzedaży,
- stan magazynowy,
- status dostępności,
- czas wysyłki,
- aktywność produktu w ofercie.
Nazwy, opisy, adresy URL, zdjęcia i przypisania do kategorii mogą pozostać pod kontrolą sklepu. Granicę odpowiedzialności trzeba ustalić dla każdego pola: hurtownia, sklep albo ręczna decyzja pracownika.
Jak bezpiecznie aktualizować ceny i stany?
Najgroźniejszy scenariusz nie polega na zatrzymaniu importu. Większym problemem może być poprawnie wykonana aktualizacja na podstawie błędnych danych, na przykład wyzerowanie całego magazynu albo ustawienie ceny bez podatku jako ceny detalicznej.
Dlatego integracja powinna mieć zabezpieczenia:
- odrzucenie rekordu bez identyfikatora, ceny lub innego wymaganego pola,
- zatrzymanie aktualizacji, gdy liczba zmian przekracza ustalony próg,
- blokadę ceny poniżej kosztu lub poza zaakceptowanym zakresem,
- podgląd zmian przed pierwszym importem,
- przetwarzanie katalogu partiami,
- możliwość ponowienia tylko błędnych rekordów,
- zapis poprzedniej wartości i historii uruchomień.
Dobrym rozwiązaniem jest tryb próbny. System przygotowuje raport: ile produktów utworzy, ile zmieni, ile wyłączy i które odrzuci. Dopiero po zaakceptowaniu reguł wykonuje zapis w sklepie.
Co zrobić z produktami usuniętymi z feedu?
Brak produktu w najnowszym pliku nie musi oznaczać, że hurtownia wycofała go na stałe. Plik mógł zostać wygenerowany częściowo albo pobieranie mogło zakończyć się przed czasem.
Bezpieczniej jest zastosować okres ochronny. Produkt może najpierw otrzymać stan zero, potem status nieaktywny, a dopiero po określonej liczbie poprawnych synchronizacji bez tego rekordu zostać ukryty. Automatyczne trwałe usuwanie produktów utrudnia zachowanie adresów URL, historii zamówień i danych analitycznych.
Jak monitorować import po wdrożeniu?
Integracja działa w tle, ale nie powinna być niewidoczna. Osoba odpowiedzialna za sklep musi wiedzieć, czy ostatnia synchronizacja się udała i jak stare są dane.
Przydatny raport pokazuje:
- czas rozpoczęcia i zakończenia importu,
- wersję lub datę pliku źródłowego,
- liczbę nowych, zaktualizowanych, pominiętych i błędnych produktów,
- przykłady błędów wraz z identyfikatorem produktu,
- czas ostatniej poprawnej aktualizacji cen i stanów.
Ważne błędy powinny wywołać alert e-mail lub wiadomość do używanego przez zespół komunikatora. Chwilowy brak API można obsłużyć ponowieniem próby, ale wielokrotne niepowodzenie wymaga informacji dla człowieka. Błędny produkt warto odłożyć do osobnej kolejki, aby jeden rekord nie zatrzymywał całego katalogu.
Import z jednej czy z kilku hurtowni?
Przy jednej hurtowni źródło produktu jest oczywiste. Przy kilku trzeba rozwiązać dodatkowe problemy: rozpoznać te same produkty, wybrać dostawcę, porównać ceny zakupu i ustalić sposób liczenia dostępności.
EAN może pomóc połączyć oferty, ale nie zawsze jest obecny lub poprawny. Czasem potrzebne jest dopasowanie po kodzie producenta, marce i wariancie. System powinien zachować osobną ofertę każdego dostawcy, a dopiero na jej podstawie obliczać wynik widoczny w sklepie. Dzięki temu zmiana domyślnej hurtowni nie wymaga przebudowy produktu.
Jeżeli najpierw trzeba uporządkować kilka źródeł w jednej bazie, pomocny będzie poradnik jak połączyć dane z kilku stron w jednej bazie lub panelu.
Jak przygotować się do integracji hurtowni ze sklepem?
Przed rozpoczęciem prac warto zebrać konkretne materiały:
- Przykładowy plik XML, CSV lub dokumentację API.
- Dane dostępowe do wersji testowej, jeśli źródło wymaga logowania.
- Listę pól, które mają być tworzone i później aktualizowane.
- Przykłady produktów prostych oraz produktów z wariantami.
- Reguły cen, podatku, marży i zaokrągleń.
- Zasady dla brakującego stanu, ceny, zdjęcia lub kategorii.
- Informację, które opisy i zdjęcia można zgodnie z umową publikować.
- Dostęp do testowej kopii sklepu albo możliwość wykonania bezpiecznego importu próbnego.
Nie trzeba od razu opisywać każdego wyjątku. Najlepszy obraz daje próbka rzeczywistych danych i lista kilku problematycznych produktów. Na tej podstawie można przygotować mapowanie oraz sprawdzić, gdzie potrzebna jest decyzja biznesowa.
Jak wygląda wdrożenie automatycznego importu?
Najpierw analizujemy źródło i strukturę katalogu sklepu. Następnie przygotowujemy model danych, reguły mapowania oraz plan obsługi błędów. Import próbny uruchamiamy na ograniczonej liczbie produktów i porównujemy wynik ze źródłem.
Po akceptacji mechanizm może przetworzyć cały katalog, a potem przejść w tryb cyklicznej synchronizacji. Częstotliwość dobiera się do sposobu sprzedaży i możliwości hurtowni. Stany mogą wymagać częstszych aktualizacji niż opisy czy zdjęcia.
Na koniec pozostają monitoring, alerty i dokumentacja reguł. Dzięki nim wiadomo, które dane kontroluje dostawca, które sklep, oraz jak zareagować, gdy hurtownia zmieni format pliku.
Czy gotowa wtyczka wystarczy?
Czasem tak. Jeżeli hurtownia i platforma sklepu korzystają ze zgodnego, dobrze obsługiwanego formatu, gotowy moduł może rozwiązać podstawowy import.
Indywidualna integracja jest potrzebna częściej wtedy, gdy:
- feed wymaga czyszczenia lub łączenia danych,
- sklep ma własną strukturę kategorii i wariantów,
- ceny zależą od kilku reguł,
- produkty pochodzą z więcej niż jednej hurtowni,
- ręczne opisy nie mogą być nadpisywane,
- potrzebne są alerty, historia i akceptacja zmian,
- gotowy moduł nie obsługuje błędów w bezpieczny sposób.
Warto oceniać nie tylko to, czy moduł potrafi utworzyć produkt. Kluczowe pytanie brzmi: co stanie się przy następnym imporcie, błędnym pliku i zmianie struktury danych?
Chcesz połączyć hurtownię ze sklepem?
Podeślij przykładowy feed, dokumentację API oraz informację o platformie sklepu. W ramach integracji systemów i danych możemy sprawdzić strukturę katalogu, zaproponować bezpieczne reguły aktualizacji i przygotować import dopasowany do Twojego procesu.
Jeżeli nie masz jeszcze kompletnej specyfikacji, opisz w formularzu kontaktowym hurtownię, sklep, liczbę produktów i pola, które zmieniają się najczęściej. To wystarczy, aby ustalić sensowny pierwszy etap.