Comarch ERP Optima: integracja ze sklepem i hurtownią B2B
Comarch ERP Optima to obok Subiekta GT najczęściej spotykany system handlowo-magazynowy w polskich firmach z segmentu MŚP. I podobnie jak Subiekt, Optima często żyje obok e-commerce zamiast razem z nim: stany przepisywane ręcznie, zamówienia wklepywane po godzinach, cennik w Excelu „do czasu”. Integracja ma z tego zrobić jeden obieg: towar, cena, kontrahent i dokument w jednym źródle prawdy. Poniżej jak to ugryźć w Optimie i czym ta droga różni się od innych ERP.
Co daje integracja Comarch Optima ze sklepem
Zakres jest w zasadzie zawsze ten sam, niezależnie od platformy sklepowej:
- Towary i kartoteki: indeksy, nazwy, jednostki, kody EAN zarządzane w Optimie, sklep je odczytuje. Opisy marketingowe i zdjęcia zwykle zostają po stronie sklepu.
- Stany magazynowe: sklep pokazuje rzeczywistą dostępność, a nie stan sprzed doby. Przy kilku magazynach w Optimie trzeba zdecydować, które z nich „widzi” sklep.
- Ceny: Optima prowadzi kilka poziomów cen i rabaty kontrahenta, co w hurtowni B2B jest fundamentem indywidualnych warunków handlowych.
- Kontrahenci: firmy z NIP-em, ich warunki, limity i historia. To najbardziej wrażliwy fragment integracji B2B.
- Dokumenty: zamówienie ze sklepu ląduje w Optimie jako dokument (rezerwacja odbiorcy / zamówienie), z którego powstaje WZ i faktura. Statusy i numery wracają do konta klienta w sklepie.
Drogi integracji Comarch ERP Optima
Nie ma jednej „oficjalnej” metody. W praktyce spotyka się cztery podejścia.
Comarch e-Sklep: droga natywna
Comarch ma własną platformę sklepową (e-Sklep) z wbudowaną synchronizacją z Optimą. Zaleta: wszystko od jednego dostawcy, wymiana danych działa bez pisania kodu. Wada: jesteś w ramach możliwości tej platformy. Przy nietypowej logice B2B (rozbudowane cenniki, procesy akceptacji zamówień, quick order po SKU) szybko widać sufit. To rozsądna droga dla detalu, rzadziej dla hurtowni z własnymi wymaganiami.
Interfejs programistyczny i baza SQL
Optima trzyma dane w bazie Microsoft SQL Server, a Comarch udostępnia interfejs programistyczny (technicznie oparty o COM), z którego korzystają integratorzy i firmy partnerskie. Na tej warstwie buduje się integracje „szyte”: konektor przy Optimie czyta kartoteki, stany i ceny, a zamówienia ze sklepu zapisuje jako dokumenty tak, jakby robił to operator.
Ważne rozróżnienie: odczyt bezpośrednio z bazy SQL jest powszechną i bezpieczną praktyką, natomiast zapis dokumentów powinien iść przez interfejs programistyczny, nie przez surowe wstawki do tabel. Baza Optimy ma swoją logikę (numeracje, powiązania dokumentów, rozliczenia) i obejście jej „od spodu” prędzej czy później kończy się niespójnymi danymi. Istnieją też gotowe nakładki firm trzecich, które wystawiają nad Optimą web API (REST). To wygodne, gdy sklep ma po prostu odpytywać HTTP zamiast utrzymywać własny konektor przy serwerze z ERP.
Integratory typu BaseLinker
Trzecia droga to pośrednik. BaseLinker zbiera zamówienia ze sklepu i marketplace’ów, a z Optimą łączy się przez zewnętrzny konektor. Sam BaseLinker nie tworzy własnych integratorów ERP, dostarczają je firmy trzecie. Szybki start i sprzedaż wielokanałowa bez programowania, ale złożona logika cenowa B2B bywa poza zasięgiem.
Wymiana plikowa
Najprostszy mechanizm: cykliczny eksport stanów i cennika do pliku, import zamówień w drugą stronę. Tani, odporny na chwilowe awarie, ale z natury opóźniony. Wystarcza tam, gdzie kilkanaście minut starości stanu nikogo nie boli.
| Droga | Kiedy wybrać | Ograniczenie |
|---|---|---|
| Comarch e-Sklep | Detal, standardowe procesy | Sufit przy nietypowym B2B |
| Interfejs + SQL / web API | Hurtownia, szyta logika, skala | Wymaga kompetencji i konektora |
| BaseLinker + konektor | Wielokanałowość, szybki start | Złożone cenniki B2B |
| Pliki | Prostota, mały ruch | Brak synchronizacji „na żywo” |
Comarch Optima: integracja z Allegro
Częsty punkt wyjścia całego tematu: firma sprzedaje na Allegro i chce, żeby zamówienia same trafiały do Optimy, a stany same się aktualizowały. Drogi są dwie:
- Przez Comarch e-Sklep: platforma ma integrację z Allegro w standardzie, a z Optimą synchronizuje się natywnie. Sensowne, jeśli i tak planujesz sklep na e-Sklepie.
- Przez BaseLinker: Allegro (i inne marketplace’y) obsługuje BaseLinker, a z Optimą spina go zewnętrzny konektor. Elastyczniejsze, gdy sklep stoi na innej platformie albo kanałów jest więcej.
W obu wariantach obowiązuje ta sama zasada co przy sklepie: jedno źródło prawdy o stanie. Jeśli ten sam towar sprzedaje sklep, Allegro i handlowiec wystawiający dokumenty w Optimie, ktoś musi rezerwować, a ktoś ustępować. Inaczej sprzedasz sztukę, której już nie ma.
Kierunki synchronizacji: kto jest właścicielem pola
Mapa kierunków wygląda tak samo jak w każdej integracji ERP:
- stany magazynowe: Optima → sklep,
- ceny, rabaty, kartoteki: Optima → sklep (opisy i zdjęcia po stronie sklepu),
- zamówienia: sklep → Optima,
- statusy, numery dokumentów, faktury: Optima → sklep.
Zasada nadrzędna: każde pole ma dokładnie jednego właściciela. Kontrahenci wymagają dodatkowej dyscypliny: dopasowanie po NIP-ie od pierwszego dnia, inaczej po kwartale ten sam klient istnieje w Optimie w kilku wersjach z rozjechanymi limitami i rabatami.
KSeF w Optimie a sklep internetowy
Od 2026 r. faktury ustrukturyzowane w KSeF obejmują praktycznie cały obrót B2B i Optima ten proces obsługuje: wystawia faktury do KSeF i odbiera numer nadany przez system. Dla integracji oznacza to dwie rzeczy. Po pierwsze, sklep nie łączy się z KSeF bezpośrednio: jego rolą jest oddać Optimie komplet poprawnych danych (NIP nabywcy na czele, bo literówka w NIP-ie to od teraz problem podatkowy, nie kosmetyczny). Po drugie, numer KSeF powinien wrócić do sklepu, żeby klient w swoim koncie widział fakturę z identyfikatorem, a nie „załącznik PDF”. Szerzej rozpisaliśmy to w tekście o KSeF w sklepie internetowym.
Czym to się różni od Subiekta GT
Jeśli porównujesz oba systemy pod kątem e-commerce, różnica nie leży w zakresie integracji (ten jest identyczny), tylko w narzędziach:
- Dostęp programistyczny. W Subiekcie GT to Sfera, płatny dodatek InsERT dostępny dla każdego posiadacza licencji. W Optimie interfejs Comarch jest skierowany głównie do integratorów i partnerów, a rynek uzupełniają nakładki web API firm trzecich.
- Ekosystem. Comarch ma własny e-commerce (e-Sklep) i drogę „wszystko od jednego dostawcy”. InsERT też ma własną platformę (vendero, prosty, hostowany sklep dla małych firm), ale funkcjonalnie to inna liga niż e-Sklep, zwłaszcza pod kątem B2B; przy poważniejszym e-commerce integracja z Subiektem i tak zwykle oznacza system zewnętrzny.
- Reszta jest wspólna. Oba systemy stoją na Microsoft SQL Server, oba wymagają konektora działającego przy instalacji ERP i w obu te same pułapki: jednostki miary, netto/brutto, duplikaty kontrahentów.
Szczegółowo rozkładamy to w osobnym wpisie o integracji Subiekta GT ze sklepem. Większość opisanych tam min dotyczy Optimy jeden do jednego.
Od czego zacząć
Kolejność, która sprawdza się we wdrożeniach:
- Spisz obiekty i kierunki: które pola płyną z Optimy, które ze sklepu, kto jest właścicielem każdego z nich.
- Ustal klucz kontrahenta (NIP dla firm) zanim pierwsze zamówienie trafi do ERP.
- Testuj na kopii bazy: tworzenie dokumentów i kontrahentów ćwicz na osobnej instancji, nie na produkcyjnej księgowości.
- Przejdź pełny cykl jednego zamówienia: od koszyka, przez dokument w Optimie i fakturę z numerem KSeF, po status wracający do konta klienta.
- Zaplanuj awarię: serwer z Optimą bywa niedostępny; zamówienia z tego okna mają się zbuforować i dojść później, a nie zniknąć.
Dokładnie ten zakres (od mapowania kartotek, przez kierunki synchronizacji, po obsługę błędów) robimy w ramach integracji systemów ERP, OMS i WMS, także dla sklepów i hurtowni B2B budowanych na Medusa.js, gdzie logika cenników i limitów z Optimy musi działać w sklepie jeden do jednego.