MilestoneREST APIComarch Optima

Comarch Optima API: 100% modułów Comarch Optima przez REST API

Robert Mońka · · Zaktualizowano:
100% pokrycia modułów Comarch Optima przez REST API

976 endpointów. 201 serwisów COM. 131 grup Swagger. 100% pokrycia modułów Comarch Optima. Optima API od WebArm obsługuje każdy kluczowy moduł, dokument i operację biznesową potrzebną w integracji z Comarch ERP Optima — przez standardowe żądania HTTP/JSON.

Najważniejsze informacje

  • Comarch Optima API od WebArm daje jeden kontrakt REST dla modułów handlowych, magazynowych, finansowych, CRM oraz kadrowo-płacowych.
  • Odczyty i synchronizacja korzystają z szybkich endpointów SQL/read-only oraz cursor-based sync, a zapisy przechodzą przez COM z walidacją reguł biznesowych Optimy.
  • Swagger/OpenAPI jest dostępny po instalacji, więc integrator widzi endpointy, parametry, przykładowe odpowiedzi i zakres dokumentów bez dekompilacji DLL-ek.
  • VerSync wykorzystuje te endpointy do automatycznej wymiany danych ze sklepem, marketplace, panelem B2B, WMS lub hurtownią danych.

Co oznacza “100% pokrycia”

Comarch ERP Optima udostępnia swoje funkcje przez obiekty COM — binarny interfejs Windows wymagający .NET, zainstalowanej Optimy i znajomości nieudokumentowanych struktur (dlaczego Comarch nie oferuje publicznego REST API). Optima API od WebArm mapuje każdy z tych obiektów na endpoint REST:

ZakresLiczba
Endpointy REST976
Serwisy COM Comarch201
Grupy Swagger131

W praktyce oznacza to pełny zakres modułów używanych w integracjach biznesowych: kontrahenci, towary, cenniki, dokumenty handlowe, dokumenty magazynowe, faktury sprzedaży, kasa/bank, CRM, kadry i płace oraz synchronizacja danych z systemami zewnętrznymi. Dzięki temu jeden projekt integracji obejmuje całe oprogramowanie Comarch ERP Optima, a nie wybrany wycinek funkcjonalności.

Moduły Comarch ERP Optima, Web API i e-commerce

Każdy moduł Comarch ERP Optima jest dostępny przez REST. Dla zespołów e-commerce to praktyczna różnica względem klasycznego Web API: integracja może pobierać informacje, dodawać dokumenty i aktualizować dane bez budowania osobnego wrappera dla każdego modułu programu. Dodanie nowego towaru, pobranie listy kontrahentów, korekta faktury czy aktualizacja cennika to pojedyncze żądania HTTP zamiast kilkudniowego projektu.

  • Moduł Dostępowy / Kasa-Bank — raporty kasowe, przelewy, rozliczanie dokumentów handlowych, zapisy kasowo-bankowe, kontrola przepływów pieniężnych
  • Faktury — sprzedaż dla firm i osób z fiskalizacją, korekta dokumentów, faktury zakupu, kody kreskowe, cenniki sprzedaży, tworzenie dokumentów powiązanych (np. WZ z FS); pełna specyfikacja w dokumentacji encji faktury sprzedaży
  • Handel — pełna obsługa firm handlowych, dokumenty handlowe (FS, FZ, PA, WZ, PZ, RO, ZD), encja kontrahenci z danymi w polach NIP, nazwa, opis, numer obcy, pozycje dokumentu, encja towary i atrybutów, stanów magazynowych całkowitych oraz w partiach dostaw
  • Detal — sprzedaż detaliczna na stanowisku kasowym (POS), paragony i powiązane Faktury Sprzedaży
  • Księga Podatkowa — KPiR, ewidencja ryczałtu, ewidencja VAT, rejestry VAT
  • Księga Handlowa — pełna księgowość, dekretacja, plan kont, bilans, rozrachunki, walutowość
  • Środki Trwałe — karty środków trwałych, amortyzacja, inwentaryzacja
  • Kadry i Płace — pracownicy, umowy, listy płac, składki ZUS, portal pracownika
  • CRM — kontakty, zadania, notatki, historia komunikacji z danymi kontrahenta po stronie sprzedaży

Architektura dwuwarstwowa

Pełne pokrycie nie oznacza “wszystko przez COM”. Optima API od WebArm stosuje dwie ścieżki, a różnica między nimi przekłada się na wydajność, bezpieczeństwo i kompatybilność z kolejnymi wersjami Comarcha:

Odczyty (GET, batch read) trafiają bezpośrednio do bazy danych SQL w trybie read-only — maksymalna szybkość, zero obciążenia sesji COM. 25 endpointów batch (read i update) umożliwia operacje na wielu rekordach jednym żądaniem, a bufor zapytań chroni Optimę przed nagłymi pikami ruchu ze sklepu czy hurtowni danych.

Zapisy (POST, PUT, DELETE) przechodzą przez obiekty COM z pełną walidacją biznesową Comarch: VAT, split payment, numeracja, reguły cenowe. Dedykowany wątek STA z kolejką eliminuje konflikty współbieżności, a każda wersja Optima API jest testowana pod konkretną wersję Comarch ERP Optima, więc kompatybilność po upgrade Comarcha pozostaje przewidywalna.

# Odczyt — bezpośrednio z SQL, natychmiastowa odpowiedź
curl -X GET https://serwer/api/kontrahenci?pageSize=100 \
  -H "X-Api-Key: klucz" \
  -H "X-Optima-Firma: FIRMA-DB"

# Zapis — przez COM, pełna walidacja Comarch
curl -X POST https://serwer/api/dokumenty/faktury-sprzedazy \
  -H "X-Api-Key: klucz" \
  -H "X-Optima-Firma: FIRMA-DB" \
  -H "Content-Type: application/json" \
  -d @faktura-sprzedazy.json

Taki podział jest ważny dla bezpieczeństwa. Pobieranie list, stanów i cenników może być szybkie, ale dodawanie dokumentów handlowych, faktur sprzedaży lub dokumentów magazynowych nadal musi respektować numerację, stawki VAT, rejestry i powiązania tworzone przez Comarch ERP Optima.

Synchronizacja — 9 dedykowanych endpointów

Cursor-based sync endpoints pozwalają pobierać tylko zmiany od ostatniego zapytania — pobranie, dodanie i aktualizacja danych po stronie sklepu czy WMS sprowadza się do prostego cyklu „co się zmieniło od ostatniego razu”:

  • /api/sync/towary
  • /api/sync/kontrahenci
  • /api/sync/kontakty
  • /api/sync/osoby
  • /api/sync/atrybuty-towarow
  • /api/sync/dokumenty
  • /api/sync/partie-dostaw
  • /api/sync/zapisy-kb
  • /api/sync/zdarzenia-kb

Parametr modifiedSince eliminuje konieczność pełnego odczytu — idealne dla integracji e-commerce i hurtowni danych. W stanie spoczynku integracja nie pobiera nic, a w szczycie sprzedaży pobiera tylko szczegóły rekordów, które się zmieniły. Dostępne są też webhooki dla najważniejszych zdarzeń biznesowych. Praktyczny przykład wdrożenia opisaliśmy w artykule o synchronizacji stanów magazynowych z Comarch Optima.

Comarch ERP XL, Web API i e-commerce: gdzie pomaga pełny REST

Comarch ERP XL ma inne możliwości integracyjne niż Optima, a klasyczne Web API nie rozwiązuje wszystkich scenariuszy HTTP/JSON, których potrzebuje sklep internetowy, panel B2B albo aplikacja zewnętrzna. Pełne pokrycie Optima API od WebArm pomaga tam, gdzie proces przechodzi przez kilka modułów jednocześnie:

ProcesOdczyt przez APIZapis przez API
E-commercepobieranie informacji o towarach, cenach i stanachdodawanie zamówień, dokumentów handlowych i kontrahentów
Księgowośćrejestr VAT, data płatności, rozrachunkifaktury sprzedaży, korekty i dokumentów księgowych
Magazynstany, partie, jednostka miary, atrybutydokumentów magazynowych, przesunięcia i wydania
CRM i obsługa klientawyszukiwanie kontrahenta, historii i komunikatówaktualizacja danych kontaktowych oraz powiązane zadania

W praktyce Comarch ERP Optima WebAPI i klasyczne mechanizmy udostępniane przez program nie wystarczają, gdy aplikacja zewnętrzna ma łatwo zintegrować własne rozwiązania z wieloma modułami handlowymi. Optima API od WebArm porządkuje format tworzenia komunikatów, obsługuje XML/SOAP tam, gdzie wymaga tego ekosystem, a na zewnątrz wystawia prosty REST dla e-commerce, magazynu, księgowości i procesów kadrowo płacowych.

Comarch Optima API, Web API i e-commerce w praktyce

Pełne pokrycie ma znaczenie wtedy, gdy integracja nie kończy się na jednym module. Program Comarch ERP Optima może obsługiwać sprzedaż, magazyn, księgowość i kadry, ale aplikacja zewnętrzna potrzebuje prostego kontraktu: pobieranie informacji, dodawanie dokumentów, modyfikację dokumentów, eksport dokumentów, faktury sprzedaży, rejestr VAT, datę wystawienia, datę płatności, datę kursu i komunikaty błędów w jednym formacie.

ObszarPrzykładowe daneCo robi API
E-commercetowary, ceny, stany, jednostka miarypobieranie i wyszukiwanie danych do sklepu
Dokumentydokumentów handlowych, dokumentów magazynowych i dokumentów księgowychdodawanie oraz aktualizacja przez walidację Optimy
Kadry i płacelimitach urlopowych pracownika i nieobecnościach pracownikakontrolowany odczyt danych kadrowo płacowych
Zarządzanie integracjąmechanizmów udostępnianych przez program, XML i Web APIjeden REST-owy interfejs zamiast osobnych integracji

Web API i e-commerce

Web API jest częścią ekosystemu Comarch, ale e-commerce wymaga często prostszego interfejsu: pobieranie produktów, pobieranie informacji o stanach, dodawanie dokumentów oraz aktualizacja danych w sklepie i magazynie. Pełny REST ogranicza liczbę punktów integracji i ułatwia automatyzację, a sklep nie musi znać szczegółów wewnętrznych Optimy.

Comarch Optima API a inne ułatwienia pracy

Comarch Optima API od WebArm działa jak warstwa porządkująca inne ułatwienia pracy: ukrywa lokalne mechanizmy COM, mapuje Web API lub XML tam, gdzie to konieczne, i wystawia aplikacjom zewnętrznym jeden kontrakt HTTP/JSON dla całego programu Comarch ERP Optima.

Podział endpointów

Metoda HTTPLiczbaZastosowanie
GET247Odczyt pojedynczych zasobów i list
POST384Tworzenie nowych rekordów i batch read
PUT177Aktualizacja istniejących rekordów
DELETE168Usuwanie rekordów

Dla jakich integracji to ma znaczenie

Pełny zakres REST API nie jest ważny tylko dla programistów. W praktyce skraca wdrożenia w kilku typowych scenariuszach:

ScenariuszCo pobiera APICo zapisuje API
Sklep internetowytowary, cenniki, stany magazynowezamówienia, kontrahenci, dokumenty ZK
Panel B2Bprodukty, ceny hurtowe, dostępnośćaktualizacje cenników i danych katalogowych
WMS lub magazyndokumenty magazynowe, partie, stanyprzyjęcia, wydania i przesunięcia magazynowe
CRM lub aplikacja handlowakontrahenci, płatności, rozrachunkikontakty, zadania CRM, dokumenty handlowe

Jeżeli firma pyta o „REST API Comarch Optima”, zwykle nie chodzi o jeden endpoint. Chodzi o stabilny sposób integracji wszystkich danych, które w realnym procesie sprzedaży przechodzą między Optimą, sklepem, magazynem i księgowością.

Co to zmienia

Do tej pory integracja z Comarch Optimą wymagała wyboru: albo ograniczony zakres przez COM, albo ryzykowne bezpośrednie operacje na SQL (szczegółowe porównanie metod). Teraz jest trzecia opcja — kompletne REST API od WebArm pokrywające każdy obiekt COM, z dokumentacją Swagger dostępną od pierwszej minuty po instalacji.

Niezależnie od modułu Optimy — handel, księgowość, kadry, CRM — Twój system komunikuje się z nim tym samym sposobem: HTTP request, JSON response.

Comarch Optima REST API — jeden kontrakt dla Twojego biznesu

W akronimie REST nie chodzi o modę, tylko o sposób, w jaki Twojego biznesu dotyczą codzienne dane: zamówienie ze sklepu, faktura dla klienta, korekta cenowa, aktualizacja stanu w magazynie. Comarch Optima REST API od WebArm porządkuje wszystkie funkcjonalności Optimy pod jedną dokumentację Swagger, jeden protokół HTTP/JSON i jeden zestaw zasad bezpieczeństwa.

Dzięki temu projekt integracji nie zaczyna się od dekompilacji DLL-ek ani od reverse-engineeringu bazy danych. Zaczyna się od dokumentacji, w której są opisane dostępne endpointy, możliwość filtrowania, sposobów paginacji i zasad współpracy z polami biznesowymi Optimy. Wdrożenie nowego sklepu, panelu B2B albo aplikacji raportowej staje się projektem na tygodnie, a nie na miesiące.

Rozwiązanie ma też wpływ na zwiększenie kompatybilności w czasie. Każda wersja Optima API jest powiązana z konkretną wersją Comarch ERP Optima i utrzymywana w aktualizacjach, więc upgrade po stronie Comarcha nie zmusza Cię do przepisywania integracji od zera.

Skąd się to wzięło — WebArm i Optima API

Optima API to autorski produkt firmy WebArm. Pełne pokrycie modułów Comarch ERP Optima zbudowaliśmy w odpowiedzi na realny problem swoich klientów — producentów, dystrybutorów i firm handlowych prowadzących sprzedaż omnichannel. Każdy z nich potrzebował integracji Optimy z innym narzędziem (sklep, marketplace, CRM, panel B2B, hurtownia danych), a żaden istniejący konektor nie obejmował pełnego zakresu encji.

WebArm utrzymuje Optima API z aktualizacjami pod każdą nową wersję Comarch ERP Optima — Twoja integracja nie ląduje w ślepej uliczce przy upgrade Comarcha. Razem z Optima API dostarczamy VerSync od WebArm — silnik synchronizacji konfigurowany w YAML, który odpytuje źródła i wypycha zmiany do celu w czasie rzeczywistym (retry, dead-letter queue, monitoring out-of-the-box).

Integracja z innymi aplikacjami — koniec ręcznego przepisywania

Najczęstszy powód, dla którego firmy szukają REST API do Optimy, jest prozaiczny: koniec ręcznego przepisywania danych między systemami. Sklep, marketplace, panel B2B, CRM, WMS i hurtownia danych żyją własnym życiem, a Optima pozostaje sercem rozliczeń i magazynu. Bez wspólnego protokołu integracja z innymi aplikacjami sprowadza się do plików CSV, makr w Excelu i wieczornego importu „na piechotę”.

Optima API od WebArm zamienia ten model na jeden zestaw endpointów do zarządzania danymi we wszystkich powiązanych systemach. Dane kontrahenta, pozycje zamówień, stany magazynowe całkowite, ceny i opisy towarów płyną w obie strony w przewidywalnym formacie, a bufor zapytań chroni Optimę przed sytuacją, w której kilka aplikacji jednocześnie zwiększa ruch w godzinach szczytu.

Sposobów na włączenie API w istniejący proces jest kilka: bezpośrednie wywołania HTTP z aplikacji, gotowy konektor VerSync od WebArm, kolejka komunikatów albo własny mikroserwis. Każdy z nich korzysta z tej samej dokumentacji i tych samych reguł walidacji, więc rozszerzenie współpracy o kolejny system nie wymaga zmian po stronie Optimy. Typowy scenariusz omawiamy w artykule integracja sklepu internetowego z Comarch Optima.

Dodatkowe koszty wdrożenia i licencjonowanie

Dodatkowe koszty integracji to drugie najczęstsze pytanie po pytaniu o zakres. Optima API od WebArm jest sprzedawane jako licencja jednorazowa na konkretną wersję Comarch ERP Optima, z opcjonalnym pakietem aktualizacji na kolejne miesiące. Dzięki temu wiesz, ile kosztuje samo oprogramowanie i ile wynosi roczne utrzymanie kompatybilności, zanim podpiszesz umowę.

Po stronie WebArm dochodzi wdrożenie u klienta: instalacja, konfiguracja Swaggera, podpięcie do bazy danych Optimy, ustawienie polityk bezpieczeństwa, opcjonalne podpięcie VerSync i szkolenie zespołu IT. Koszt wdrożenia zależy od liczby firm w Optimie, liczby integrowanych aplikacji i tego, czy klient ma już własny zespół deweloperski. Prawa do kodu po stronie integracji klienckiej pozostają u klienta — Optima API od WebArm wystawia interfejs, ale nie blokuje dostępu do danych biznesowych. Aktualne widełki dla licencji, wdrożenia i utrzymania znajdziesz w cenniku Optima API od WebArm.

FAQ

Czy to jest oficjalne API Comarch? Nie. Comarch ERP Optima nadal nie ma publicznego REST API. Optima API od WebArm to warstwa instalowana przy Optimie, która wystawia stabilny interfejs HTTP/JSON dla integracji zewnętrznych.

Czy zapisy idą bezpośrednio do SQL? Nie. Odczyty mogą korzystać z bazy danych w trybie read-only, ale zapisy dokumentów i kontrahentów przechodzą przez mechanizmy Optimy, żeby zachować walidację biznesową.

Czy API obejmuje tylko handel? Nie. Zakres obejmuje moduły handlowe, magazynowe, finansowe, CRM oraz kadrowo-płacowe, dlatego nadaje się do integracji sklepu, B2B, WMS, CRM i narzędzi analitycznych.

Jak wygląda kompatybilność z nowymi wersjami Comarcha? Każda wersja Optima API od WebArm jest powiązana z konkretną wersją Comarch ERP Optima i utrzymywana w aktualizacjach, więc upgrade Optimy nie psuje istniejących integracji — wystarczy aktualizacja po stronie API.

Czy mogę zacząć od jednej integracji i rozbudowywać projekt? Tak. Licencja jednorazowa daje od razu dostęp do wszystkich endpointów Optima API od WebArm, więc kolejne aplikacje dopinasz bez dodatkowej licencji — płacisz tylko za wdrożenie nowej integracji.

Jak długo trwa wdrożenie integracji przez Optima API od WebArm? Sama instalacja API u klienta zajmuje 1-2 dni robocze. Pełna integracja (np. sklep + magazyn + księgowość) trwa zwykle 2-6 tygodni — zależnie od liczby modułów, ilości danych do migracji i tego, czy po stronie aplikacji zewnętrznej jest już gotowy klient HTTP. Pierwsze działające endpointy w Swaggerze są dostępne tego samego dnia, w którym kończymy instalację.

Jakie są limity Optima API od WebArm? Endpointy batch przyjmują do 100 rekordów na zapis i do 500 na odczyt jednym żądaniem. Wielofirmowość obsługujemy nagłówkiem X-Optima-Firma — jeden klucz API może pracować na wielu bazach. Rate limiting jest konfigurowalny per środowisko, a kolejka STA gwarantuje, że zapisy nie wpadają w konflikty współbieżności po stronie Optimy.

Czy mogę przetestować Optima API od WebArm przed zakupem? Tak. Uruchamiamy demo w ciągu jednego dnia roboczego — dostajesz dostęp do Swaggera ze zmapowanymi modułami Twojej Optimy i kluczem testowym. Demo wystarcza, żeby zespół IT zweryfikował zakres, format danych i kompatybilność z planowaną aplikacją zewnętrzną, zanim podpiszesz umowę.


Chcesz zobaczyć pełną dokumentację Swagger? Skontaktuj się z WebArm — uruchamiamy demo w ciągu jednego dnia roboczego.


Robert Mońka, WebArm

Robert Mońka

Programista, właściciel firmy produkcyjno-handlowej, lider zespołu WebArm. Wraz z zespołem rozwija Optima API i VerSync: REST API oraz synchronizatory do Comarch ERP Optima używane też w jego własnych firmach.

LinkedIn →

Masz pytania o integrację z Comarch Optima?