Dropshipping

Pusty lub uszkodzony feed XML hurtowni: jak zatrzymać import, zanim wyzeruje cały sklep

Pustego lub uszkodzonego pliku XML hurtowni nie należy automatycznie traktować jak potwierdzenia, że wszystkie produkty zostały wycofane. Najpierw zatrzymaj import mogący masowo usuwać lub zmieniać oferty, zabezpiecz ostatnie poprawne dane i sprawdź pobranie pliku, jego strukturę oraz liczbę rozpoznanych produktów.

Trzeba równocześnie kontrolować sprzedaż na nieaktualnych stanach. Ochrona katalogu przed wyzerowaniem nie oznacza zgody na bezterminowe przyjmowanie zamówień z danych, których hurtownia nie potwierdza.

  • Błąd pobrania, pusty katalog i stan produktu równy zero to różne sytuacje.
  • Kod HTTP 200 nie potwierdza poprawnej zawartości pliku.
  • Brak pola nie powinien samoczynnie oznaczać jego wyczyszczenia.
  • Masowe usuwanie wymaga większej ostrożności niż zwykła aktualizacja jednej ceny.

Co naprawdę oznacza „feed ma zero produktów”?

Otrzymany wynik Możliwa interpretacja Reakcja
Nie udało się pobrać pliku Awaria sieci, autoryzacji lub serwera Nie uruchamiaj zmian na podstawie nieistniejącego pobrania
Zamiast XML jest strona HTML Logowanie, komunikat błędu lub blokada dostępu Odrzuć plik jako źródło produktów
XML jest poprawny, parser widzi zero rekordów Zmieniona struktura, filtr lub rzeczywiście pusty katalog Sprawdź przyczynę przed zmianą oferty
Produkt ma jednoznaczny stan 0 Brak zapasu tego konkretnego produktu Zastosuj ustalone zasady dostępności
Brakuje pola stanu Niepełna informacja albo zmiana formatu Nie zgaduj wartości; obsłuż brak zgodnie z kontraktem danych

Przykładowo komunikat serwera „trwa konserwacja” może zostać poprawnie pobrany jako dokument, ale nie jest feedem. Podobnie zapis <stock>0</stock> ma inne znaczenie niż brak elementu stock.

Co zrobić, zanim uruchomisz import ponownie?

  1. Wstrzymaj harmonogram konkretnej integracji i sprawdź trwające zadania.
  2. Zachowaj wadliwy plik oraz ostatni poprawny plik.
  3. Zapisz czas pobrania, rozmiar, wynik HTTP i błąd parsera.
  4. Sprawdź, czy import już zmienił produkty.
  5. Ustal, które kanały sprzedaży korzystają z tych samych stanów.
  6. Skontaktuj się z dostawcą z konkretnymi danymi, bez ujawniania tokenu dostępu.

Nie uruchamiaj kilku ręcznych prób równocześnie. Nakładające się zadania mogą zapisywać starsze dane po nowszych i utrudnić ustalenie, który import spowodował zmianę.

Jeśli katalog pozostaje widoczny na podstawie ostatniego poprawnego pliku, wprowadź granicę dopuszczalnego wieku danych. Po jej przekroczeniu ogranicz dostępność zagrożonych ofert według ustalonej procedury. Zwykły bufor stanów magazynowych nie zastępuje reakcji na długą awarię źródła.

Jak wykryć zmianę struktury XML?

Porównaj pliki na poziomie elementów, nie tylko liczby bajtów. Hurtownia mogła zmienić nazwę elementu produktu, dodać przestrzeń nazw, przenieść warianty głębiej albo wprowadzić stronicowanie. Parser szukający starej ścieżki może wtedy zwrócić zero rekordów mimo obecności produktów.

Sprawdź również, czy identyfikatory nadal mają ten sam format. Utrata zer na początku kodu albo użycie kodu modelu zamiast wariantu może spowodować, że istniejące produkty zostaną uznane za nowe lub brakujące.

Przy zmianie identyfikatorów wróć do mapowania SKU i wariantów między sklepem a hurtownią. Jeśli integracja używa kodów kreskowych, sprawdź także rolę EAN i GTIN w synchronizacji produktów.

Dlaczego opcja „usuń brakujące produkty” jest tak wrażliwa?

Niektóre importery potrafią usuwać lub modyfikować rekordy nieobecne w kolejnym pliku. Dokumentacja WP All Import opisuje takie możliwości, a ich zakres zależy m.in. od rodzaju importu i konfiguracji.

Jeżeli importer uzna niepełny plik za kompletny katalog, brak rekordu może uruchomić usunięcie poprawnej oferty. Dlatego przed takim etapem trzeba potwierdzić kompletność pliku, zakończenie pobierania wszystkich stron i zgodność ze strukturą oczekiwaną przez import.

Funkcja pomijania pustych wartości rozwiązuje inny problem. Dokumentacja Base opisuje ją jako ochronę przed wyczyszczeniem istniejącego pola przez pustą wartość. Nie należy zakładać, że ta opcja chroni również przed każdym rodzajem usuwania nieobecnych rekordów.

Jakie warunki powinny zatrzymywać aktualizację?

  • Nieudane pobranie lub nieoczekiwany typ dokumentu.
  • Błąd składni albo brak wymaganej struktury.
  • Brak czasu utworzenia danych, jeśli jest wymagany w integracji.
  • Nieoczekiwany spadek liczby produktów lub wariantów.
  • Duża liczba brakujących albo powtarzających się identyfikatorów.
  • Plan masowych zmian przekraczający ustalony limit.

Próg alarmowy dobierz do historii hurtowni. Spadek z 12 000 do 180 produktów oznacza w przykładowym katalogu ubytek 98,5% i powinien wymagać wyjaśnienia. Nie oznacza to, że każda mniejsza zmiana jest poprawna albo że istnieje jeden właściwy próg dla wszystkich dostawców.

Najlepiej rozdzielić pobranie, walidację, przygotowanie listy zmian i zapis. Walidacja powinna zakończyć się przed zmianą produktów. Jeżeli używany system tego nie zapewnia, potrzebne jest zabezpieczenie w konfiguracji lub warstwie integracji.

Jak bezpiecznie wznowić synchronizację?

Najpierw sprawdź poprawiony plik bez zapisywania zmian, jeśli narzędzie udostępnia taki podgląd. Porównaj liczbę aktualizacji, nowych produktów, wyłączeń i usunięć. Zweryfikuj przykłady: zwykły produkt, wariant, brak zapasu i wycofany towar.

Po kontrolowanym uruchomieniu sprawdź sklep i kanały zewnętrzne. Upewnij się, że ceny, warianty i dostępność pochodzą z aktualnej partii danych.

Jeżeli błędny import już uszkodził katalog, odtwarzaj możliwie precyzyjnie zmienione dane. Przywrócenie całej bazy sklepu do wczorajszego stanu może również usunąć późniejsze zamówienia. Zakres odtworzenia wymaga uwzględnienia tego, co wydarzyło się po awarii.

Najczęstsze pytania

Czy HTTP 200 oznacza, że feed jest poprawny?

Nie. Potwierdza odpowiedź serwera, a nie poprawność danych produktowych. Trzeba sprawdzić zawartość i strukturę.

Czy pusty stan powinien być zamieniany na zero?

Tylko jeśli taką interpretację jednoznacznie ustalono dla danego źródła. W przeciwnym razie brak informacji nie jest potwierdzonym brakiem towaru.

Czy można przez kilka dni sprzedawać ze starego pliku?

Bez potwierdzenia dostępności rośnie ryzyko sprzedaży nieistniejącego zapasu. Ustal maksymalny wiek danych i sposób ograniczenia ofert podczas awarii.

Czy ponowne pobranie pliku wystarczy?

Może usunąć przejściowy problem, ale trzeba jeszcze potwierdzić poprawność danych i sprawdzić skutki wcześniejszego importu.

Informacja: publikacja może zawierać linki afiliacyjne. Zakup dokonany po przejściu przez taki link może przynieść autorowi prowizję, bez dodatkowego kosztu dla czytelnika. Nie wpływa to na treść ani ocenę opisywanych rozwiązań.

admin

Autor praktycznych materiałów o dropshippingu, e-commerce, automatyzacji i rozwijaniu sprzedaży internetowej.