• Kierowca dostępny teraz
  • całą dobę, 7 dni w tygodniu
  • Dojazd do 1 h w promieniu 40 km
  • Diagnoza laptopa 0 zł
Ekran synchronizacji sklepu internetowego z magazynem — Integracja Subiekta GT ze sklepem internetowym

Integracja Subiekta GT ze sklepem internetowym

Ręczne przepisywanie zamówień ze sklepu internetowego do Subiekta GT to jedno z najczęstszych źródeł błędów i straconego czasu w firmach handlowych — integracja eliminuje ten problem.

Objaw

Zgłoszenia dotyczą firm, w których pracownik ręcznie przepisuje zamówienia ze sklepu do systemu magazynowego, co prowadzi do pomyłek, opóźnień i niezgodności stanów magazynowych między sklepem a rzeczywistością.

Możliwe przyczyny

Zamiast typowej usterki, ten punkt opisuje sytuacje prowadzące do potrzeby integracji: rosnąca liczba zamówień, przy której ręczne przepisywanie przestaje nadążać, powtarzające się błędy w stanach magazynowych widocznych w sklepie, oraz czas pracownika marnowany na czynności, które da się zautomatyzować.

Co robimy

Integracja obejmuje synchronizację stanów magazynowych, cen i opisów produktów między Subiektem a sklepem, automatyczne pobieranie zamówień ze sklepu do systemu oraz generowanie na ich podstawie dokumentów sprzedażowych — ZK, WZ, FS. Wymiana danych skonfigurowana jest jako dwukierunkowa: zmiana stanu magazynowego w Subiekcie po sprzedaży aktualizuje dostępność w sklepie, a nowe zamówienie w sklepie automatycznie trafia do systemu. Integracja obejmuje popularne platformy — Shoper, WooCommerce, PrestaShop, ShopGold i inne.

Ile to trwa

Wdrożenie integracji to zwykle kilka dni pracy, zależnie od liczby produktów, złożoności cennika i platformy sklepowej.

Co można zrobić samemu, zanim przyjedzie serwisant

Warto przygotować dostęp administracyjny do sklepu internetowego oraz określić, jakie dokumenty sprzedażowe mają być generowane automatycznie po złożeniu zamówienia.

Czego nie robić: nie warto uruchamiać integracji na środowisku produkcyjnym bez wcześniejszego testu na przykładowych zamówieniach — błąd w konfiguracji może wywołać niezgodność stanów magazynowych widoczną dla klientów sklepu.

Warunki

Wdrożenie integracji wyceniane jest indywidualnie, zależnie od zakresu i platformy sklepowej.

Etapy wdrażania integracji systemu sprzedażowego

Prawidłowe połączenie bazy danych programu Subiekt GT ze sklepem internetowym wymaga przeprowadzenia szeregu zaplanowanych działań technicznych. Konfiguracja realizowana jest bezpośrednio na serwerze lub komputerze głównym w siedzibie firmy, po wcześniejszym dojeździe na miejsce. Pierwszym krokiem jest wykonanie pełnej kopii zapasowej bazy danych (backupu SQL), co zabezpiecza zgromadzone informacje przed ewentualną utratą podczas pierwszych prób synchronizacji. Następnie przeprowadzana jest analiza struktury kartotek towarowych. Ustalane jest, które pola z programu magazynowego mają nadpisywać informacje w sklepie internetowym, a które pozostają niezależne. Często dotyczy to nazw produktów, opisów pełnych, opisów skróconych oraz zdjęć.

Kolejnym etapem jest instalacja aplikacji integrującej (tzw. integratora, czyli zewnętrznego oprogramowania pośredniczącego) oraz wprowadzenie kluczy API (ciągów znaków autoryzujących połączenie między dwoma systemami). Po nawiązaniu komunikacji następuje proces mapowania (powiązywania) stawek VAT, form płatności oraz sposobów dostawy. Każda metoda wysyłki zdefiniowana w sklepie musi mieć swój odpowiednik lub przypisaną akcję w systemie sprzedażowym. Podobnie wygląda kwestia płatności – system musi rozpoznawać, czy zamówienie opłacono z góry (np. przez operatora płatności), czy jest to przesyłka pobraniowa, wymagająca utworzenia odpowiedniego dokumentu końcowego.

Warianty synchronizacji danych

Integracja Subiekta GT z platformą e-commerce może przyjmować różne formy, w zależności od potrzeb firmy oraz możliwości technicznych danego silnika sklepowego. Najczęściej spotykane warianty obejmują różny stopień automatyzacji oraz zakres przesyłanych informacji.

Pierwszy podział dotyczy kierunku przesyłania danych. Synchronizacja jednostronna zakłada, że Subiekt GT jest głównym nadrzędnym źródłem informacji (tzw. systemem nadrzędnym). W tej konfiguracji oprogramowanie magazynowe wysyła informacje o stanach i cenach do sklepu, ale nie pobiera z niego żadnych zmian w kartotekach towarowych, a jedynie same wprowadzane zamówienia. Wymiana dwukierunkowa pozwala na aktualizowanie pewnych informacji z poziomu panelu sklepu internetowego i przesyłanie ich do Subiekta, co bywa przydatne przy redagowaniu dłuższych tekstów w przeglądarce, choć ze względów bezpieczeństwa spójności bazy danych model ten stosowany jest nieco rzadziej.

Drugi podział opiera się na częstotliwości wymiany danych. Synchronizacja harmonogramowa (wykonywana cyklicznie) uruchamia się automatycznie co określony czas, na przykład co 15 minut. Z kolei synchronizacja w czasie rzeczywistym (real-time) przesyła informację o zmianie stanu magazynowego natychmiast po wystawieniu paragonu lub faktury. Ten drugi mechanizm wymaga bardzo stabilnego połączenia sieciowego w biurze firmy i wyższej wydajności serwera bazy danych.

Osobny wariant dotyczy obsługi wielu magazynów. Subiekt GT umożliwia prowadzenie kilku oddzielnych magazynów w jednej bazie podmiotu. Program integrujący może zliczać stany ze wszystkich wybranych magazynów i wysyłać do sklepu łączną sumę dostępnych sztuk, bądź też przypisywać konkretny magazyn z Subiekta do określonego widoku w sklepie internetowym. Mechanizm ten wykorzystuje się przy zaawansowanych platformach posiadających obsługę multistore (wielu sklepów zarządzanych w jednym panelu administracyjnym).

Błędy przy samodzielnych próbach łączenia systemów

Samodzielna konfiguracja oprogramowania pośredniczącego bez znajomości struktury bazy Microsoft SQL Server często prowadzi do problemów operacyjnych, które zatrzymują sprzedaż na wiele dni. Najpoważniejszym błędem jest uruchomienie pełnej, dwukierunkowej synchronizacji na działającym sklepie, bez wcześniejszego środowiska testowego (odizolowanej kopii sklepu służącej wyłącznie do prób oprogramowania). Skutkuje to często przypadkowym nadpisaniem sformatowanych opisów HTML w sklepie przez surowy tekst pochodzący z Subiekta, lub całkowitym wykasowaniem zdjęć z galerii produktów.

Innym częstym problemem jest niewłaściwe przypisanie towarów z bazy programu do produktów widniejących już w sklepie internetowym. Systemy te łączą się zazwyczaj za pomocą kodu EAN (unikalnego kodu kreskowego przypisanego do towaru) lub wprowadzonego symbolu. Jeśli podczas ręcznego dodawania asortymentu w przeszłości pracownicy wprowadzali w te pola spacje, dodatkowe znaki lub omyłkowo powielali symbole, integrator stworzy zduplikowane kartoteki. Zamiast zaktualizować stan istniejącego produktu, algorytm wymusza powstanie nowej pozycji, co prowadzi do zabałaganienia oferty widocznej dla klientów odwiedzających stronę.

Kolejny błąd to nieodpowiednia konfiguracja statusów przyjmowanych zamówień. Moduł integrujący musi opierać się na regułach określających, kiedy zamówienie pobrane ze sklepu może zostać przekształcone w dokument końcowy. Zdefiniowanie błędnych warunków powoduje, że system automatycznie wystawia paragony dla koszyków, które nie zostały jeszcze opłacone w bramce płatności, co blokuje towar i generuje niepotrzebny obowiązek podatkowy. Korygowanie dziesiątek takich dokumentów z poziomu drukarki fiskalnej wymaga czasu i wpisywania dodatkowych wyjaśnień księgowych.

Wymagania licencyjne i moduły dodatkowe

Samo posiadanie podstawowej licencji na program Subiekt GT nie zawsze wystarcza do przeprowadzenia w pełni zautomatyzowanej integracji. Producent oprogramowania oferuje dodatki funkcjonalne (płatne rozszerzenia licencji), które udostępniają zewnętrznym aplikacjom możliwość bezpośredniego modyfikowania dokumentów i kartotek asortymentu.

Podstawowym wymogiem dla większości uznanych programów integrujących jest dodatek o nazwie Sfera dla Subiekta GT. Jest to otwarty interfejs programistyczny (zbiór reguł i funkcji dostarczanych przez producenta), który pozwala zewnętrznemu systemowi na dodawanie, edycję i usuwanie obiektów w bazie danych w sposób zgodny z wewnętrzną logiką Subiekta. Bez wykorzystania Sfery, rozwiązania integrujące muszą zapisywać dane bezpośrednio w tabelach bazy SQL. Praktyka taka bywa niebezpieczna i grozi uszkodzeniem integralności bazy danych w przypadku zmiany wersji programu. Sfera pilnuje, aby każde dodane automatycznie zamówienie spełniało wymogi formalne, podlegając takim samym restrykcjom, jak te wprowadzane ręcznie przez operatora.

W przypadku obsługi specyficznych cech towarów, takich jak warianty (np. te same buty różniące się wyłącznie rozmiarem), dodatkowe kody dostaw czy daty ważności, konfiguracja połączenia może wymagać posiadania dodatków z rodziny Plus (niebieskiego, zielonego lub czerwonego). Umożliwiają one przypisywanie flag własnych i rozszerzonych pól własnych (dodatkowych okienek w kartotece), co pozwala na precyzyjne mapowanie bardzo szczegółowych parametrów przesyłanych ze sklepu do systemu.

Różnice technologiczne między platformami e-commerce

Sposób integracji oraz stabilność przesyłanych informacji zależy również od wykorzystanego silnika, na którym oparty jest sklep internetowy. Oprogramowanie typu SaaS (Software as a Service - model oprogramowania dostarczanego w formie usługi chmurowej) charakteryzuje się zamkniętym i gotowym środowiskiem. Konfiguracja połączenia z Subiektem opiera się na udostępnionym API i polega na przypisaniu gotowych pół informacyjnych. Stabilność wymiany danych w takich rozwiązaniach jest wysoka, jednak możliwości swobodnej modyfikacji procedur są często zablokowane odgórnie przez dostawcę usługi.

Platformy Open Source (systemy o otwartym kodzie źródłowym, takie jak WooCommerce oraz PrestaShop) dają niemal nieograniczoną swobodę w modyfikowaniu parametrów asortymentu. Wymiana informacji z Subiektem GT wymaga tutaj zwykle wgrania odpowiedniego pluginu (wtyczki instalowanej w zapleczu sklepu), który odbiera i procesuje komunikaty przychodzące z biura. W środowisku WooCommerce często konieczna jest także edycja restrykcji w konfiguracji serwera www, aby reguły bezpieczeństwa (firewall hostingu) nie uznawały zapytań z integratora za próby ataku sieciowego.

Prawdziwym wyzwaniem pozostają sklepy napisane od zera na autorskich rozwiązaniach agencji reklamowych. Połączenie ich z programem magazynowym wymaga napisania dedykowanego endpointu (wyodrębnionego adresu w strukturze sklepu odpowiedzialnego wyłącznie za przyjmowanie danych). Dojazdy techniczne w celu konfiguracji oprogramowania przy takich wdrożeniach wiążą się z reguły ze ścisłą współpracą analityczną pomiędzy konfiguratorem Subiekta a zespołem deweloperskim utrzymującym kod sklepu.

Kiedy usterka synchronizacji nie leży po stronie oprogramowania

Użytkownicy często zgłaszają awarię integracji, zauważając, że nowe zamówienia przestały spływać z serwera e-commerce do systemu sprzedażowego. Podstawowa weryfikacja na komputerze w biurze wykazuje nierzadko, że program synchronizujący sam w sobie działa prawidłowo i zachował wszystkie ustawienia. Przyczyną utraty połączenia bywa najczęściej wprowadzona niedawno zmiana konfiguracji sieci w firmie. Zastąpienie dotychczasowego routera brzegowego (urządzenia dostarczającego sygnał internetowy do biura) lub aktualizacja zapory sieciowej (firewalla systemowego) zamyka porty komunikacyjne wykorzystywane przez integratora. Zablokowanie nieznanego ruchu wychodzącego przez zaktualizowany program antywirusowy wywołuje podobny efekt natychmiastowego przerwania komunikacji.

Innym zjawiskiem blokującym przesył danych jest wyczerpanie dostępnej przestrzeni dyskowej przypisanej do serwera SQL. Ma to miejsce szczególnie przy stosowaniu darmowej licencji Microsoft SQL Server Express, posiadającej twardy limit wielkości pojedynczej bazy danych zablokowany na wartości 10 gigabajtów. Gdy baza programu magazynowego osiągnie ten limit, Subiekt przestaje przyjmować nowe wpisy i blokuje tworzenie dokumentów. Konieczne jest wówczas przeprowadzenie archiwizacji, wykonanie procedury shrink (technicznej konserwacji i zmniejszenia fizycznego pliku bazy) lub migracja do wyższej wersji silnika SQL.

Dodatkowe pytania związane z wymianą danych

Czy stany w sklepie będą się aktualizować po wyłączeniu komputera biurowego?

Program odpowiedzialny za synchronizację (integrator) musi pozostawać uruchomiony, by przesyłać informacje o zmianach. Instaluje się go na komputerze pełniącym rolę głównego serwera w biurze. Jeżeli sprzęt ten zostanie wyłączony, platforma internetowa nadal funkcjonuje i gromadzi zamówienia, ale proces aktualizowania dostępności produktów oraz pobierania dokumentów do bazy lokalnej zostaje wstrzymany aż do ponownego uruchomienia jednostki i zalogowania do systemu Windows.

Jak rozwiązywany jest problem jednoczesnego zakupu w sieci i w siedzibie firmy?

Sytuacja ta bywa nazywana konfliktem współbieżności. Aby unikać sytuacji, w której klient fizyczny przy kasie stacjonarnej oraz klient internetowy kupują tę samą, ostatnią sztukę produktu, wykorzystuje się system rezerwacji. Moduł integracyjny w czasie zbliżonym do rzeczywistego pobiera informację ze sklepu i generuje w Subiekcie "Zamówienie od Klienta" (ZK) z przypisanym statusem rezerwacji stanu. Zabieg ten powoduje natychmiastowe zablokowanie możliwości wydania tego egzemplarza na paragonie przy ladzie, chroniąc przed sprzedażą towaru, którego fizycznie nie ma na półce.

Czy można ukryć wybrane grupy asortymentowe, aby nie trafiały na stronę?

Tak. Wykluczanie wybranych towarów z mechanizmu synchronizacji realizowane jest za pomocą filtrów sprzężonych z systemem magazynowym. Najpopularniejszą metodą jest nadanie w kartotece Subiekta wybranej cechy (na przykład "wykluczony ze sklepu internetowego") lub zdefiniowanej flagi własnej. Produkty spełniające ten warunek są ignorowane podczas każdej kolejnej pętli synchronizacyjnej. Mechanizm ten jest niezbędny w przypadku oferowania przez firmę usług specjalistycznych, wyprzedaży towaru uszkodzonego czy sprzedaży materiałów dostępnych wyłącznie przy odbiorze osobistym.

Czy biuro musi posiadać stały adres IP?

W zdecydowanej większości wdrożeń z użyciem komercyjnych aplikacji pośredniczących, stały i publiczny adres IP (unikalny identyfikator przydzielany przez dostawcę internetu) w siedzibie firmy nie jest wymagany. Dzieje się tak, ponieważ to komputer lokalny inicjuje bezpieczne połączenie wychodzące z serwerem platformy e-commerce. Dopiero w ściśle określonych, autorskich konfiguracjach, w których serwer zewnętrzny ma odpytywać bazę w biurze z własnej inicjatywy, konieczne staje się posiadanie stałej adresacji na łączu internetowym firmy.

Podsumowanie konfiguracji środowiska wymiany danych

Uruchomienie automatycznej komunikacji pomiędzy Subiektem GT a sklepem e-commerce znacząco obniża ryzyko ludzkich błędów wynikających z przepisywania cyfr i danych adresowych. Skonfigurowanie niezawodnego mapowania form dostawy i przypisanie prawidłowych stawek podatkowych decyduje o stabilności operacji magazynowych i płynnej pracy zespołu przy przetwarzaniu dużej liczby wysyłek.

Powiązane teksty