Ekspertyza · Sklepy internetowe
Sklep, w którym katalog jest odczytywany w czasie rzeczywistym, a nie raz skopiowany i zapomniany.
Budujemy sklepy i, ponad nimi, warstwę, której zwykle brakuje: agent odpowiadający klientowi odczytuje cenę i stan magazynowy bezpośrednio ze sklepu, w momencie pytania, i odmawia wymyślania nieopublikowanej ceny.
Już zbudowaneMożna to sprawdzić z zewnątrz już teraz, bez pytania nas. Nasz punkt katalogu dostarczony dystrybutorowi odpowiada 200 i mówi „154 wyniki”; publiczny interfejs jego sklepu, zapytany bezpośrednio, zwraca nagłówek `x-wp-total: 154`. Ta sama liczba, dwa niezależne źródła, sprawdzone 06.09.2026. Druga implementacja jest zintegrowana z platformą asystentów: usługa `storeCatalog.service.js` plus trzy narzędzia, które agent może wywołać. Zastrzeżenie, które trzeba powiedzieć: ta druga ścieżka stoi na gałęzi rozwojowej (`feat/store-catalog-global`, `481cfa0`) i nie jest jeszcze scalona z pniem — więc jest dostarczona dla klientów, których podłączyliśmy, a nie uruchomiona domyślnie dla wszystkich.
Większość „integracji katalogu” to tak naprawdę eksport. Ktoś pobiera produkty raz, wkleja je do pliku, a od tego momentu agent rozmawiający z klientem czyta stare zdjęcie sklepu. Działa to bez zarzutu aż do pierwszej zmiany ceny albo pierwszego wyczerpanego produktu — a wtedy myli się z przekonaniem, co jest gorsze niż milczenie.
My czytamy sklep w momencie pytania. Dla sklepów na WooCommerce istnieje publiczny interfejs — Store API — który zwraca produkty, ceny i dostępność bez kluczy, bez konta, bez zainstalowanego pluginu. Adres to `/wp-json/wc/store/v1/products`, prosimy o 100 produktów na stronę, z maksymalnym czasem oczekiwania 20 sekund, i z nagłówka odpowiedzi dowiadujemy się, ile jest stron, zamiast zgadywać. Pierwszą stronę pobieramy samodzielnie, resztę równolegle.
Część, która oddziela poprawną integrację od takiej, która tylko wygląda na poprawną, to tłumaczenie ceny. Store API nie zwraca „129,90”; zwraca ciąg cyfr w jednostkach mniejszych oraz osobno liczbę miejsc dziesiętnych waluty. Kto z przyzwyczajenia dzieli przez 100, popełnia cichy błąd dla każdej waluty, która nie ma dwóch miejsc dziesiętnych. I jeszcze ważniejsze: cena zero nie znaczy za darmo, tylko nieopublikowana. U nas zero staje się „cena na zapytanie — do potwierdzenia przez współpracownika”, a agent dostaje wyraźną instrukcję, by niczego nie wymyślać. Widać to już teraz w publicznej odpowiedzi punktu katalogowego.
Na katalog nakładają się pozostałe elementy, każdy ze swoim rzeczywistym stanem: koszyk i wysyłka zamówienia do systemu zarządzania restauracji lub sklepu, płatność przez interfejs MAIB dla handlowców lub przez Stripe, odzyskiwanie porzuconych koszyków, śledzenie stanu zamówienia z synchronizacją co 15 minut. Tam, gdzie nie mamy działającej integracji — a są takie przypadki — poniżej napisz dokładnie, które.