Így szól az egyik kedvenc projektünk rövid összefoglalója. A hosszabb verzió tanulságosabb. Elsőre teljesen átlagos webshop projektnek tűnt. Aztán kiderült, hogy az igazi kihívás nem a WooCommerce, nem a fizetés és nem is a szállítás lesz. Hanem az emberi kreativitás.
Az első egyeztetés
A megkeresés tipikusnak indult. Egy vállalkozó vett egy butikot az egyik plázában árukészlettel együtt, és szeretett volna mellé egy webshopot is. Semmi szokatlan, gondolhatnánk.
De mi nem szoktunk azonnal fejest ugrani a fejlesztésbe.
A kérdések, amiket mindenki kihúzna a listáról
Minden projekt előtt részletes felmérést végzünk. Nem azért, mert bürokraták vagyunk, hanem mert annyi projektünk van a hátunk mögött, hogy tudjuk: a problémák fele nem a fejlesztés közben derül ki, hanem azután, hogy az oldal már él.
Webshopnál mindig megkérdezzük:
Ezen a pár könnyű kérdésen sokan elakadnak, mert egyáltalán nem gondolták végig a folyamatot.
Mi egy kicsit tovább mentünk. Megnéztük, hogyan adják el a termékeket a boltban.
Kiderült: van kassza, és van valami készletkezelés. Az utóbbi egy Excel-táblázat volt, amit akkor töltöttek, ha éppen eszükbe jutott.
– Ez így kevés lesz – jeleztük nekik.
Ha a bolti és a webshop készlet azonos, és itt ez volt a helyzet, akkor mindkét helyen ugyanaz a valós készlet kell, hogy szerepeljen. Különben előfordul, hogy a webshopban rendel valaki egy terméket, ami a boltban már elfogyott. Ez vásárlói panasz, visszaküldés, rosszkedv, mindenki oldalán.
Akkor vetettük fel: kell egy rendszer, amellyel a kassza és a webshop kommunikál egymással.
A rendszer keresése
Több megoldást is megnéztünk. A választást megkönnyítette, hogy egy másik ügyfelünknél korábban hasonló igény merült fel, és ott már dolgoztak egy készletkezelő rendszerrel, amelynek volt kész WooCommerce integrációja.
Azt választottuk.
Az első nagy meglepetés: az 1500 termék
A webshop fejlesztése közben az ügyfél elkezdte feltölteni a termékeket az új készletkezelőbe. Közben mi a webshop funkcióin dolgoztunk, fizetés, szállítás, design, integráció.
Amit nem tudtunk: az, aki a termékeket rögzítette, talált egy billentyűkombinációt, amivel gyorsan tudott egyedi kódot generálni, nem kellett pötyögni a vonalkódot. Praktikus megoldás, egy apró problémával: a generált kódot nem írta rá a termékre.
Ezen felül előfordult, hogy elírta a kódokat. Így például egy bugyi kódja egy férfi póló mellé került.
Kb. 1500 termék ment fel így a rendszerbe.
Aztán jött az első szinkronizáció. Majd jöttek a képek. Majd kiderült, hogy a képeket sem mindig a megfelelő termékhez párosították, szintén elgépelt kódok miatt.
Az eredmény: a webshopban női ruhák mellé férfi termékek képe jelent meg. Férfi pólónál női bugyi. Az árak sem stimmeltek.

Ekkor jött az ügyfél kérdése:
– Na és mikor indulunk?
– Ha újra leltároztok, mindent újra befotóztok és helyesen rögzítetek a rendszerbe – közöltük ügyfelünkkel a rossz hírt.
Egy hétig zárva volt a bolt. Nehéz volt ezt eladni, de nem volt más út.
Előre elmondtuk, mire figyeljenek. Ha úgy csinálják, akkor ezt az egészet megússzák. De sajnos az, hogy az ügyfél milyen képzettségű embereket vesz fel, és azok mennyire figyelnek oda, arra nincs ráhatásunk.
A második nagy meglepetés: a nagy piros hiba
Miután a leltár megvolt és a webshop élesedett, elkezdtek jönni a panaszok az eladó lányoktól:
– Nem jó a webshop, mert olyat is mutat, ami nincs már készleten.
Elkezdtük vizsgálni. A webshop rendben volt. Nem értettük, hogy mi lehet a gond, így kimentünk az üzletbe, hogy saját szemünkkel lássuk a folyamatot.
Ekkor szembesültünk vele: a kassza program minden egyes indításkor kiírt egy nagy piros hibaüzenetet.
Tényleg hatalmasat.
Nem olyat, amit nehéz észrevenni.
Nem olyat, ami elbújik valahol egy sarokban.
Hanem olyat, amit valószínűleg a szomszéd üzletből is látni lehetett.

Megkérdeztük:
– Ezt szoktátok látni?
– Igen.
– És ilyenkor mit csináltok?
– Rányomunk a Cancel gombra.
– Mióta?
– Hát… mindig!
Ekkor bizonyosodtunk meg róla teljesen, hogy nem a webshop lesz a hibás.
Kiderült, hogy a kassza szoftver valójában azt próbálta közölni, hogy nincs kapcsolat a másik számítógépen futó készletkezelő rendszerrel.
Amikor eladtak valamit, a kassza helyben le tudta kérdezni a termék adatait a vonalkód alapján, de az eladással járó készlet változását nem tudta rögzíteni a készletkezelőben, mert a kapcsolat nem állt fenn. A készlet tehát sosem frissült.
A webshop pedig azt mutatta, ami a készletkezelő rendszerben szerepelt, nem azt, ami ténylegesen a polcon volt.
A pillanat, amikor összeállt a kép
Felhívtuk együtt a készletkezelős céget, mert nem értettük, hogy miért nem látják egymást a gépek, és egyáltalán, miért van szükség két gépre?
– Mert így szoktuk – próbáltak meggyőzni, egy nem túl erős érvvel.
Majd a hálózatra fogták a problémát, hogy az nem is az ő dolguk, szóljunk rendszergazdának. (Addigra egyébként már többször járt kint rendszergazda is.)
Továbbra is próbáltak magyarázatot adni arra, miért kell a kassza és a készletkezelő szoftvernek két külön gépen futni.
De nem tudtak meggyőző választ adni.
Addig hadakoztunk velük a hívás során, míg megcsinálták a rendszert egy gépre.
Azóta minden rendben. A készlet mindig stimmel, a webshop mindig pontosan mutatja, mi van raktáron.
Annyi változott, hogy mivel minden egy gépen fut, beállítottunk egy folyamatos mentést egy külső meghajtóra, hogy ha a gép megadja magát, ne vesszen el semmi.

Amit ebből tanultunk
Azt, hogy bármennyire is felkészülünk, bármennyi tapasztalatunk van, mindig akad valami, amivel még nem találkoztunk.
Az ügyfél munkavállalóiért nem tudunk felelősséget vállalni. Azt, hogy valaki nem írja rá a kódot a termékre, vagy hogy egy nagy piros hibaüzenetet mindenki Cancel-lel zár be, azt nem lehet előre tudni.
De azt tudjuk, hogy ha gond van, és kiderül, hogy mi jól végeztük a dolgunkat, akkor is segítünk. Mert mi látjuk át az egész rendszert. Nem csak a webshopot.
Ez a különbség egy fejlesztő és egy rendszerben gondolkodó csapat között.
A projekt végeredménye
A kezdeti káosz után végül sikerült egy olyan rendszert kialakítani, amelyben a webshop, a kassza és a készletkezelés ugyanazokkal az adatokkal dolgozik.
A projekt során:
Ami talán még fontosabb: az ügyfél ma már nem Excel-táblákban próbálja követni a készletet, hanem egy olyan rendszerben, amelyet eredetileg is erre a feladatra terveztek.
Neked is van hasonló szituációd? Ha webshopot tervezel, és nem vagy biztos benne, hogy minden úgy működik, ahogy kell, kezdjük egy beszélgetéssel.

