Integracja wooCommerce z Baselinker

Dodawanie produktów, wprowadzanie danych, aktualizacja kart produktowych, synchronizacja stanów i cen pomiędzy sklepem internetowym wooCoommerce a integratorem Baselinker poprzez modyfikację i łączenie plików CSV metodą mapowania danych lub Rest API

Na wstępie pragnę zaznaczyć, że z zawodu jestem specjalistą ds. marketingu i zarządzania a z doświadczenia zawodowego copywriterem i webmasterem specjalizującym się wystawianiu aukcji, dodawaniu produktów do sklepów internetowych, konfiguracji kont na serwisach aukcyjnych, e-marketplaces i e-magazynów. Pracuję zdalnie pod egidą własnej firmy web3promagraco Michał Chechelski i wykonuję zlecenia na rzecz polskich i zagranicznych firm handlowych. Nie posiadam pełnej wiedzy z każdego zakresu, ale mam bogate doświadczenie i widzę z zakresu szeregu prac na takich sklepach internetowych, jak: wooCommerce, PrestaShop, Shoper i IdoSell (IAI) oraz serwisach aukcyjnych, takich jak: Allegro, eBay, Amazon, Arena, eMag, Ceneo i innych. Nie obce mi są również niuanse pracy z językami programowania, takimi jak: HTML/CSS, PHP, XML (Excel i CSV). Podkreślam ten fakt, aby nadać odpowiedni kontekst swoim wypowiedziom i pomóc obecnym oraz przyszłym klientom zrozumieć potencjalne korzyści i ograniczenia wynikające z ewentualnej współpracy ze mną. Jestem niezależnym specjalistą, który odgrywa rolę elastycznego pracownika dochodzącego.

Tematyka niniejszego artykułu oscyluje wokół problematyki pracy z plikami Excel i CSV na oprogramowaniach Baselinker i wooCommerce. Artykuł ten ma charakter marketingowo-informacyjny. Dzięki niemu będą mogli Państwo zapoznać się z moją uogólnioną wiedzą na ten temat oraz poszerzyć własną. W artykule tym jedynie naświetlam problematykę pracy z plikami CSV pomiędzy wyżej wymienionymi oprogramowaniami i dla lepszego zrozumienia tematu konieczne jest przestudiowanie jeszcze innych pism, w tym instrukcji procesowych oraz książek i materiałów wideo z zakresu szeroko pojętej pracy magazynowo-konfiguracyjnej w obrębie Baselinker, wooCommerce oraz Excel. Przydatna może być również ogólna wiedza webmasterka, podstawowa znajomość języków struktury (HTML/CSS) oraz Excel (C++). Do pełni satysfakcji potrzebna jest też duża motywacja, pragmatyzm, umiejętność pokonywania barier, wsparcie pomocy technicznej Baselinker oraz wsparcie środowiska współtworzącego WordPress. Przypominam, że wooCommerce jest wtyczką WordPress, a sam WordPress jest oprogramowaniem tworzonym w model otwartym (open source).

Zacznę może od ogólnego stwierdzenia, że idea jednego kliknięcia spełnia się dzięki pracy od podstaw, którą trzeba wykonać. Programiści tworzący fundamenty struktury informatycznej opracowują sieci połączeń pozwalające na integrację różnych oprogramowań i automatyczną lub na wpół-automatyczną synchronizację danych. To, w jaki sposób pracują sieci informatyczne zależy od kilku czynników, a w tym nade wszystko od wiedzy i zaangażowania programistów, sposobu porządkowania danych przez właścicieli struktur (w wolnym rozumieniu należy utrzymywać porządek danych magazynowych) oraz umiejętności osób pracujących w ich obrębie. Zespolenie wszystkich tych czynników w sposób doskonały jest zadaniem trudnym, a niekiedy wręcz niemożliwym, stąd nie należy dziwić się temu, że czegoś nie da się zrobić ani łatwo, ani szybko lub temu, że niekiedy nasza praca idzie w przysłowiowy las…

Globalizacja procesów gospodarczych na współ z rozwojem wiedzy programistycznej przyczynia się do kształtowania się gospodarki informatycznej, której rdzeń w sferze usługowo-handlowej stanowi idea podarków, integracji sieci, dywersyfikacji kanałów sprzedażowo-marketingowych oraz synchronizacji danych. Obecnie gro z ponowoczesnych oprogramowań komputerowych słusznie nazywanych aplikacjami posiada uporządkowane zbiory danych oraz moduły programistyczne pozwalające na pobieranie, przesyłanie, modfyfikowanie oraz wprowadzanie informacji do innych, względnie niezależnych aplikacji usługowo-handlowych. Oprogramowanie sklepowe woCoomerce oraz integrator Baselinker (zwłaszcza ten drugi) pozwalają na wykonywanie tego typu operacji nie tylko między sobą, ale i pomiędzy innymi oprogramowaniami o charakterze aplikacyjnym.

Integrator Baselinker sam w sobie jest działającym w Sieci oprogramowaniem, którego celem jest macierzowa integracja danych z różnych marketplaces i sklepów internetowych. W szybkim skrócie Baselinker pozwala na synchronizację różnych danych, a w tym m.in.: stanów magazynowych, cen, zamówień i innych oraz ich zespolenie i prezentowanie w jednym miejscu. Dzięki temu oprogramowaniu sprzedawca może uprościć swoją pracę i zautomatyzować wiele procesów. Należy przy tym dodać, że praca w obrębie każdego oprogramowania wymaga zdobycia odpowiedniej wiedzy oraz umiejętności, i należy dostosowywać rozwiązania do własnych potrzeb i możliwości. Choć Baselinker ma bardzo przyjazny interfejs, a wsparcie techniczne (support) stoi na najwyższym poziomie, tak niewielu sprzedawców potrafi w pełni wykorzystać potencjał tego oprogramowania. Jest ono po prostu bardzo złożone i pozwala na kreację wielu integracji, synchronizacji oraz automatyzacji. Oprogramowanie to również rozwija się bardzo szybko i za część jego właściwości użytkowych odpowiadają nie tylko programiści z zespołu Baselinker, ale i firm dołączających swoje moduły (jak i my sami).

Co do wooCommerce, to jest to dobrze rozbudowany moduł sklepowy (plugin/wtyczka) WordPress, która również cieszy przyjaznym interfejsem. Jest to oprogramowanie rozwijane w podobny sposób co np. Linux w modelu otwartym (open source). wooCommerce rywalizuje o miejsce w świadomości sprzedawców z PrestaShop. Przyjęło się mówić, że wooCommerce w porównaniu z PrestaShop ma mniej walorów użytkowych i jest po prostu gorsze. W moim przekonaniu tak nie jest, a tempo i efekty prac środowiska programistycznego zaangażowanego w rozwój WordPress zdaje się temu dobitnie przeczyć. wooCommerce jest bardziej intuicyjnym, modalnym, łatwiejszym, prostszym i przyjemniejszym w obsłudze oprogramowaniem sklepowym, które potrafi dać więcej satysfakcji obsługującym go sprzedawcom aniżeli PrestaShop. Choć jest to oczywiście opinia subiektywna, tak potwierdzenie moich słów znają Państwo analizując obydwie platformy sprzedażowe pod kątem wdrażania rozwiązań z zakresu vsual creators, czyli obiektywnego programowania w makro (? wiem wiem) stron i kart produktowych za pomocą takich modułów (pluginów/wtyczek) jak WPBakery, Visual Composer, Divi czy Elementor. PrestaShop zostaje w tyle (wymaga więcej pracy, większej wiedzy i więcej czasu, jest też bardziej podatna na “rozsypanie się” lub załamanie projektów budowlanych).

Integrator Baselinker posiada moduł ułatwiający integrację sklepu internetowego postawionego na silniku WordPress z pluginem wooCommerce. Uzupełniając kilka informacji i odpowiednio oznaczając kilka opcji możemy w szybki sposób połączyć wooCommerce z Baselinker. Potrzebujemy do tego wykonać kilka podstawowych operacji po stronie wooCommerce, aby obydwa oprogramowania zaczęły się rozumieć i przesyłać między sobą dane. Choć moduł integracyjny nie uruchamia wszystkich procesów synchronizacyjnych, tak możliwe jest pogłębienie integracji poprzez modyfikację połączenia REST API lub wymianę danych między plikami magazynowymi Baselinker i wooCommerce.

Podstawowa integracja wooCommerce z Baselinker pozwala na:

  • wystawianie produktów ze sklepu na e-marketplaces
  • synchronizację stanów magazynowych i cen sklepowych ze stanami i cenami aukcyjnymi
  • pobieranie zamówień ze sklepu do Baselinker (lub odwrotnie)

Dzięki podstawowej integracji wooCommerce z Baselinker możemy wystawić na aukcje produkty znajdujące się na sklepie. Możemy też kontrolować ilości produktów dostępne na aukcjach. Jeśli więc sprzedamy jakiś produkt na sklepie lub na serwisie aukcyjnym, to zmniejszy się ich stan zarówno na sklepie, jak i na Allegro. Przy czym synchronizacja ta zadziała tylko wtedy, kiedy zachowane zostanie powiązanie pomiędzy produktami ze sklepu, a aukcjami. W rzeczy samej chodzi o to, aby aukcje wystawiać z magazynu sklepowego i nie wiązać ich przypadkiem z magazynem Baselinker lub innym sklepem (taką operację o charakterze zmiany powiązania aukcji też można wykonać). I ostatnią kwestią jest kontrola zamówień, którą możemy ustawić w taki sposób, aby zamówienia ze sklepu “spływały” do sklepu albo żeby zamówienia ze sklepu “spływały” do Baselinker.

To, czego nie możemy uzyskać za sprawą podstawowej integracji, to pobieranie produktów z magazynu Baselinker i synchronizacja stanów oraz cen pomiędzy magazynem Baselinker a magazynem sklepu internetowego wooCommerce. Ilekroć poruszymy ten aspekt z pomocą techniczną Baselinker, jako pierwszą uzyskamy odpowiedź typu: “Niestety nasz system nie umożliwia synchronizowanie magazynów między sobą”.

Zgadza się, moduł integracji Baselinker nie pozwala na synchronizację magazynu Baselinker z innym magazynem, ale…. No właśnie, ale istnieje możliwość takiej synchronizacji, a raczej są 2 takie możliwości. Możliwości te nazwijmy fachowo: ręczna i automatyczna. Ręczna synchronizacja magazynu Baselinker z magazynem wooCommerce możliwa jest dzięki opcji eksportu magazynu Baselinker do pliku CSV lub XML. Dzięki temu, że podobny eksport możemy wykonać po stronie wooCommerce, uzyskamy dwa pliki z danymi magazynowymi, które będziemy mogli porównać i odpowiednio zmodyfikować plik magazynowy wooCommerce. W praktyce więc codziennie rano możemy pobierać plik CSV/XML z magazynu Baselinker, porównywać go z plikiem magazynowym wooCommerce, aktualizować plik magazynowy wooCommerce i tym samym aktualizować dane na sklepie. Jedyną rzeczą, której potrzebujemy, to umiejętność wykonywania takiej operacji przy użyciu oprogramowania Excel i modułu importu wooCoomerce (wbudowany).

Zanim przejdę do stwierdzenia, że nie każdy jednak potrafi lub ma ochotę codziennie aktualizować magazyn poprzez łączenie plików CSV, dodam że operacja taka może być wykonywana nawet na bardzo dużych magazynach dzięki zastosowaniu odpowiednich funkcji w oprogramowaniu Excel. Cały proces można streścić w kilku punktach:

  • Baselinker Magazyn Baselinker ->> Eksport magazynu produktów ->> RAPORT domyślny CSV
  • WordPress ->> Kokpit ->> wooCommerce Produkty ->> Eksport ->> Generuj CSV
  • Porównanie danych, aktualizacja danych wooCommerce np. w programie Excel
  • Przydatna funkcja: =(JEŻELI.BŁĄD()WYSZUKAJ.PIONOWO(A4;($A$1:$A$2;2;0);B2)
  • WordPress ->> Kokpit ->> wooCommerce Produkty ->> Import ->> Prześlij plik

Oczywiście proces ten jest nieco bardziej złożony i należy uzbroić go m.in. w zabezpieczenie danych przed utratą, ale posiadając odpowiednią wiedzę można szybko go opanować i wykonywać z powodzeniem każdego dnia. Umiejętność operowania na plikach magazynowych CSV w oprogramowaniu Excel jest też przydatna w trakcie innych operacji. W ten sposób łatwiej masowo edytować tytuły, opisy lub dodawać zdjęcia.

Baselinker pozwala na zautomatyzowanie tego procesu za pomocą poszerzenie synchronizacji REST API, ale zanim wdrożymy to rozwiązanie warto poćwiczyć z manualną aktualizację danych w pliku CSV, przynajmniej do czasu zorientowania się co do tego, w jaki sposób pracuje magazyn wooCommerce, jakie błędy występują na obydwu magazynach i w jaki sposób uporządkowane są dane na tych magazynach. Jeśli mamy bałagan na magazynie Baselinker i wooCommerce, to automatyzacja procesów synchronizacji danych pomiędzy nimi skończy się większym lub mniejszym niepowodzeniem.

Happy End jest taki, że pomiędzy sklepem wooCommerce a oprogramowaniem Baselinker można dokonać rzeczywiście pełnej integracji, czyli zsynchronizować wszystkie dane magazynowe, które występują na jednym lub drugim magazynie. Choć moduł integracji Baselinker nie pozwala na tego typu synchronizację, to możemy ją pogłębić za sprawą codzienne synchronizacji manualnej opartej o pliki CSV lub codziennej aktualizacji automatycznej opartej o REST API. Dzięki temu możemy podpiąć nowy sklep do Baselinker i szybko zapełnić go produktami, których stany magazynowe i ceny będą zgodne ze stanami i cenami na magazynie BL, a tym samym z aukcjami i innymi sklepami.