Przejdź do treści
  • Specjalizujemy się w naprawach laptopów, z jakimi nie poradziły sobie inne serwisy
  • Naprawa laptopów po zalaniu
  • Naprawa laptopów po upadku
  • Specjalistyczne naprawy płyt głównych
Pomarańczowe regały magazynowe pod świetlikami dachowymi

Sprzedaż tego, czego nie ma

Sklep, który przyjmuje zamówienie na produkt niedostępny w magazynie, traci zaufanie klienta szybciej niż jakikolwiek inny błąd — bo problem ujawnia się dopiero po zapłacie. Integracja stanów magazynowych usuwa tę sytuację u źródła.

Jak to działa

Stan magazynowy z systemu firmowego trafia do sklepu, a zamówienie ze sklepu — do systemu. Obie strony pracują na tej samej liczbie, więc sprzedaż w sklepie zdejmuje towar tak samo jak sprzedaż przy ladzie.

Co ustalamy przy wdrożeniu

  • Który system jest źródłem prawdy dla stanów — zwykle magazynowy, nie sklep.
  • Co dokładnie synchronizujemy: stany, ceny, opisy, zdjęcia.
  • Jak często dane mają się odświeżać.
  • Co się dzieje przy stanie zerowym: ukrycie produktu, oznaczenie jako niedostępny czy przyjmowanie zamówień na zapowiedź.
  • Jak traktować towar zarezerwowany, ale jeszcze niewydany.

Rezerwacje

To najczęstsze źródło rozbieżności. Towar zarezerwowany zamówieniem, którego jeszcze nie wydano, bywa liczony po obu stronach inaczej — i wtedy sklep sprzedaje ostatnią sztukę dwa razy. Ustawiamy to jednoznacznie przy konfiguracji.

Kody towarów

Warunkiem działania jest to, żeby ten sam produkt miał ten sam identyfikator w obu systemach. Porządkowanie kodów jest zwykle najdłuższym etapem wdrożenia — i etapem, którego nie da się pominąć.

Kontrola po uruchomieniu

Przez pierwsze dni porównujemy stany w obu systemach. Rozbieżność wychwycona wtedy kosztuje godzinę; wychwycona po miesiącu — inwentaryzację.

Jeden stan magazynowy może oznaczać kilka różnych wartości

Liczba widoczna przy produkcie nie zawsze oznacza ilość, którą można natychmiast sprzedać. System magazynowy może osobno przechowywać stan fizyczny, stan dostępny, rezerwacje oraz ilość oczekiwaną w dostawie. Stan fizyczny opisuje towar zapisany jako znajdujący się w magazynie. Stan dostępny uwzględnia natomiast pozycje już zarezerwowane dla innych zamówień. Przed uruchomieniem integracji trzeba więc ustalić nie tylko kierunek przesyłania danych, lecz także właściwe pole źródłowe.

Znaczenie ma również obsługa zwrotów, anulowanych zamówień i dokumentów sprzedaży. Anulowanie zamówienia może zwolnić rezerwację, ale nie powinno automatycznie zwiększać dostępności produktu, jeżeli towar został już wydany. Zwrócony produkt może wymagać sprawdzenia przed ponownym wystawieniem. Reguły integracji muszą odzwierciedlać rzeczywisty obieg towaru, a nie jedynie kopiować liczby między tabelami.

Warianty integracji zależą od sposobu prowadzenia sprzedaży

Najprostszy wariant obejmuje jeden sklep i jeden magazyn. Zamówienie tworzy rezerwację w systemie firmowym, a dostępna ilość wraca do sklepu. Nawet w takim układzie trzeba ustalić sposób obsługi zamówień nieopłaconych, anulowanych oraz składanych równocześnie przez kilku klientów.

Bardziej rozbudowany wariant występuje wtedy, gdy firma prowadzi kilka magazynów albo sprzedaje także przez platformy handlowe. Agregacja stanów, czyli łączenie ilości z kilku lokalizacji w jedną wartość, nie zawsze jest właściwa. Produkt może znajdować się w oddziale, z którego nie jest wysyłany, albo być przeznaczony wyłącznie do sprzedaży lokalnej. W takim przypadku stosuje się reguły określające, które magazyny zasilają konkretny kanał sprzedaży.

Osobnym przypadkiem jest sprzedaż zestawów. Zestaw może nie istnieć jako gotowy produkt na półce, lecz składać się z kilku osobnych pozycji. Dostępność zestawu zależy wtedy od elementu, którego wystarczy na najmniejszą liczbę kompletów. Integracja musi przeliczać ten stan po każdej sprzedaży składnika, także wtedy, gdy został on kupiony oddzielnie.

Jeszcze inaczej działa sprzedaż wariantów, takich jak rozmiary, kolory lub pojemności. Produkt główny pełni wówczas funkcję grupującą, a każdy wariant ma własny identyfikator i stan. Przesłanie wspólnej liczby dla całej grupy prowadziłoby do oferowania odmiany, której faktycznie już nie ma.

Mapowanie danych przed pierwszą synchronizacją

Mapowanie oznacza przypisanie pól i rekordów z jednego systemu do odpowiadających im danych w drugim. Kod produktu może być zapisany jako symbol magazynowy, SKU, indeks albo kod zewnętrzny. Sama zgodność nazw handlowych nie wystarcza, ponieważ dwie pozycje mogą mieć podobną nazwę, a jeden produkt może występować pod nazwami skróconymi.

Przed połączeniem systemów sprawdzamy duplikaty, brakujące kody, nieaktywne kartoteki oraz różnice w jednostkach miary. Opakowanie zbiorcze nie może zostać potraktowane jak pojedyncza sztuka. Podobnie produkt sprzedawany na metry, kilogramy albo komplety wymaga zachowania tej samej jednostki po obu stronach. Niejednoznaczne rekordy są wyjaśniane przed automatyzacją, ponieważ błędne dopasowanie może zmieniać stan niewłaściwego towaru.

Istotne jest także ustalenie sposobu rozpoznawania nowych produktów. Można tworzyć je najpierw w systemie magazynowym i dopiero potem publikować w sklepie albo dopuścić zakładanie kartotek po stronie sklepu. Drugi wariant wymaga dokładnej walidacji, czyli sprawdzenia obowiązkowych danych przed wysłaniem rekordu do systemu firmowego.

Synchronizacja okresowa i aktualizacja po zdarzeniu

Dane mogą być wymieniane okresowo lub po wystąpieniu określonego zdarzenia. Synchronizacja okresowa uruchamia się według harmonogramu i zbiera zmiany wykonane od poprzedniego przebiegu. Aktualizacja po zdarzeniu rozpoczyna się na przykład po złożeniu zamówienia, zmianie statusu albo przyjęciu dostawy. Wybór zależy od możliwości obu systemów i od tego, jak szybko zmiana dostępności powinna pojawić się w sklepie.

Nie zawsze wystarczy częściej uruchamiać ten sam proces. Jeżeli pobranie pełnej bazy trwa zbyt długo, lepiej przesyłać tylko dane zmienione od ostatniej poprawnej operacji. Taka synchronizacja przyrostowa ogranicza zakres wymiany. Musi jednak poprawnie rozpoznawać przerwany przebieg, aby po awarii nie pominąć części aktualizacji.

Każda operacja powinna pozostawiać dziennik, czyli zapis jej przebiegu. Dziennik pozwala ustalić, które zamówienie zostało odebrane, jaki produkt zmienił stan i dlaczego dany rekord został odrzucony. Bez takiego zapisu objaw jest widoczny w sklepie, ale jego przyczyna pozostaje trudna do odtworzenia.

Błędy przy samodzielnym łączeniu systemów

Częstym błędem jest uruchomienie pełnej synchronizacji na danych produkcyjnych bez wcześniejszej próby na kopii lub ograniczonej grupie produktów. Jeżeli kierunek aktualizacji został ustawiony odwrotnie, stare dane ze sklepu mogą zastąpić poprawne stany magazynowe. Bezpieczne wdrożenie zaczyna się od niewielkiego zakresu i porównania wyniku z dokumentami w systemie firmowym.

Problemy powoduje również ręczne poprawianie stanów jednocześnie w sklepie i magazynie. Taka korekta może chwilowo ukryć różnicę, lecz następny przebieg integracji ponownie nadpisze jedną z wartości. Najpierw trzeba znaleźć źródło rozbieżności: nieobsłużoną rezerwację, błędne mapowanie produktu, pominięty dokument albo przerwaną wymianę danych.

Ryzykowne jest też uznanie komunikatu o wysłaniu danych za potwierdzenie ich zapisania. System odbiorczy może odrzucić rekord z powodu brakującego kodu, nieprawidłowej jednostki albo niedozwolonego statusu. Integracja powinna odróżniać samo przekazanie żądania od jego prawidłowego przetworzenia i zapisywać odpowiedź drugiej strony.

Nie należy także usuwać pozycji z kolejki błędów bez ustalenia przyczyny. Kolejka to lista operacji oczekujących na ponowne wykonanie. Jej wyczyszczenie może usunąć ślad po zamówieniu, które nie dotarło do systemu magazynowego, chociaż klient otrzymał potwierdzenie zakupu.

Kiedy rozbieżność nie wynika z uszkodzonej integracji

Inny stan w sklepie nie zawsze oznacza zerwane połączenie. Różnica może wynikać z celowego bufora bezpieczeństwa, czyli liczby sztuk niewystawianych do sprzedaży internetowej. Bufor chroni między innymi towar przeznaczony dla zamówień telefonicznych lub sprzedaży lokalnej. Jeżeli został skonfigurowany świadomie, sklep powinien pokazywać mniej sztuk niż system magazynowy.

Podobny objaw powstaje przy opóźnieniu w zatwierdzaniu dokumentów. Towar może fizycznie znajdować się już w magazynie, ale pozostawać niedostępny, dopóki przyjęcie nie zostanie zapisane w systemie. Z kolei zamówienie może blokować produkt mimo braku płatności, jeżeli reguła rezerwacji obowiązuje od chwili złożenia koszyka. Weryfikacja obejmuje więc status dokumentu i zamówienia, a nie tylko ostatni czas działania mechanizmu synchronizacji.

Źródłem różnicy bywa także pamięć podręczna, czyli tymczasowo zachowana wersja danych używana do szybszego wyświetlania strony. System magazynowy może mieć już poprawny stan, podczas gdy karta produktu pokazuje wcześniejszą wartość. W takiej sytuacji naprawy wymaga sposób odświeżania danych w sklepie, a nie połączenie z magazynem.

Jak testujemy nietypowe sytuacje

Test nie powinien ograniczać się do sprzedaży jednej dostępnej sztuki. Sprawdzamy także równoczesne zamówienia, anulowanie płatności, zwrot produktu, częściową realizację, zmianę wariantu oraz ponowne uruchomienie wymiany po przerwie. Ważny jest wynik w obu systemach: stan produktu, rezerwacja, status zamówienia i informacja o ewentualnym błędzie.

Przy wielu magazynach weryfikujemy, czy sprzedaż zmniejsza ilość we właściwej lokalizacji. Przy zestawach sprawdzamy wszystkie składniki. Jeśli system pozwala na sprzedaż poniżej zera, ustalamy, czy ma to być świadoma reguła dla wybranych produktów, czy sytuacja blokowana. Wyniki testów tworzą punkt odniesienia przy późniejszej diagnostyce.

Dodatkowe pytania klientów

Czy integracja może przesyłać tylko stany magazynowe?

Tak. Zakres można ograniczyć do dostępności produktów, pozostawiając ceny, opisy i zdjęcia pod kontrolą sklepu. Trzeba wtedy jasno wskazać pola, których system magazynowy nie może nadpisywać. Ograniczony zakres bywa właściwy, gdy opisy sprzedażowe są znacznie bardziej rozbudowane niż kartoteki firmowe.

Co dzieje się z zamówieniem, gdy system magazynowy jest chwilowo niedostępny?

Zamówienie powinno pozostać zapisane w sklepie i oczekiwać na ponowną próbę przekazania. Mechanizm nie może tworzyć kolejnych kopii tego samego zamówienia po każdym wznowieniu. Służy temu identyfikator operacji, czyli wartość pozwalająca rozpoznać, że dany dokument był już przetwarzany.

Czy można połączyć sklep z kilkoma magazynami?

Tak, jeżeli systemy udostępniają dane potrzebne do rozróżnienia lokalizacji. Przed wdrożeniem ustala się, czy sklep pokazuje sumę wybranych magazynów, osobną dostępność dla każdego z nich, czy wynik obliczony według reguł wysyłki. Nie każdy zapas powinien automatycznie trafiać do sprzedaży internetowej.

Czy zmiana kodów produktów po wdrożeniu jest bezpieczna?

Może przerwać powiązanie kartotek, jeżeli kod pełni funkcję głównego identyfikatora. Zmianę należy przeprowadzić jednocześnie w mapowaniu i sprawdzić przed kolejną synchronizacją. Samo poprawienie symbolu tylko w sklepie albo tylko w magazynie może utworzyć duplikat lub zatrzymać aktualizację produktu.

Jak rozpoznać, że potrzebna jest korekta reguł, a nie jednorazowa naprawa?

Wskazaniem jest powtarzalny problem związany z konkretnym zdarzeniem, na przykład anulowaniem zamówienia, sprzedażą zestawu albo przesunięciem między magazynami. Jednorazowy błąd transmisji zwykle dotyczy pojedynczej operacji. Jeśli ten sam scenariusz ponownie tworzy rozbieżność, trzeba zmienić logikę obsługi zdarzenia i ponownie ją przetestować.

Spójny magazyn zaczyna się od jednoznacznych reguł

Dobra integracja nie polega wyłącznie na cyklicznym kopiowaniu liczby z jednego miejsca do drugiego. Musi uwzględniać rezerwacje, zwroty, warianty, zestawy, wiele magazynów oraz sytuacje, w których jeden z systemów jest chwilowo niedostępny. Dopiero po ustaleniu znaczenia danych, ich źródła i sposobu obsługi błędów sklep może bezpiecznie prezentować rzeczywistą dostępność produktów.

Nie wiesz, od czego zacząć? Opisz objaw przez telefon

Zadzwoń, umów wizytę serwisanta — dotrze do Ciebie w ciągu godziny.

22 378 48 90