Integracja systemów IT w firmie — jak połączyć to, co już masz

  • Integracje
  • Procesy
  • Systemy IT

Większość firm, z którymi pracuję, nie ma problemu z brakiem oprogramowania – ma problem z tym, że ma go za dużo i nic ze sobą nie rozmawia. ERP osobno, sklep osobno, system magazynowy osobno, CRM w arkuszu, a księgowość dostaje pliki mailem. Dane są, tylko trzeba je ręcznie przepisywać z jednego okna do drugiego. To nie jest awaria, którą widać. To codzienny podatek od chaosu – kilka godzin tygodniowo na osobę, których nikt nie liczy. W tym wpisie wyjaśniam, dlaczego systemy ze sobą nie gadają, jak technicznie się je łączy (po ludzku, bez żargonu) i – co najważniejsze – dlaczego prawie nigdy nie trzeba wymieniać całego środowiska, żeby to naprawić.

Dlaczego systemy IT ze sobą nie rozmawiają

Krótka odpowiedź: bo nikt ich do tego nie zaprojektował. Każdy program kupowałeś osobno, w innym roku, od innego dostawcy, żeby rozwiązać jeden konkretny problem. ERP miał ogarnąć fakturowanie, sklep miał sprzedawać, system magazynowy miał pilnować stanów. Każdy z nich robi swoje dobrze. Problem zaczyna się tam, gdzie te światy muszą się spotkać – bo zamówienie ze sklepu musi trafić do magazynu, a faktura do ERP.

Te punkty styku zwykle łata człowiek. Ktoś rano eksportuje plik ze sklepu, wgrywa do ERP, koryguje stany ręcznie w magazynie. Działa – do pierwszej pomyłki, urlopu albo skoku sprzedaży. Najczęstsze przyczyny, dla których systemy milczą:

  • Brak wspólnego „języka” – jeden system nazywa klienta numerem NIP, drugi wewnętrznym ID, trzeci adresem e-mail. Nikt nie wie, że to ten sam klient.
  • Zamknięte oprogramowanie – starszy system nie ma żadnego sposobu, żeby się z nim „dogadać” z zewnątrz. Wtedy zostają obejścia, o których piszę niżej.
  • Dane w różnych formatach – daty, kwoty, jednostki, kodowanie polskich znaków. Drobiazgi, które wywracają automatyczny transfer.
  • Decyzja, że „na razie wystarczy ręcznie” – i to „na razie” trwa trzy lata.

Ile naprawdę kosztuje brak integracji

Lubię liczby, więc policzmy. Załóżmy, że dwie osoby spędzają po godzinie dziennie na przeklejaniu danych między systemami. To 2 godziny dziennie, około 40 godzin miesięcznie. Przy stawce 60–80 zł za godzinę kosztu pracodawcy to 2400–3200 zł miesięcznie – samego czasu, bez liczenia błędów.

A błędy są droższe niż czas. Źle przepisany stan magazynowy to sprzedaż czegoś, czego nie ma. Pominięta faktura to problem z księgowością. Literówka w adresie to zwrot przesyłki. Te koszty są rozproszone, więc rzadko ktoś je sumuje – ale w skali roku to często kilkadziesiąt tysięcy złotych ukrytych w „tak się u nas pracuje”.

Do tego dochodzi koszt, którego w ogóle nie widać w tabelce: brak wiarygodnych danych do decyzji. Jeśli liczby w trzech systemach się nie zgadzają, to żadnemu z nich do końca nie ufasz. O tym, jak z połączonych danych zbudować sensowny obraz firmy, pisałem osobno przy okazji dashboardów analitycznych dla firm.

Jak technicznie łączy się systemy – cztery podejścia po ludzku

Integracja brzmi groźnie, ale w praktyce sprowadza się do czterech sposobów, w jakich jeden program może podać dane drugiemu. Tłumaczę każdy bez żargonu – bo decyzja, którego użyć, należy do mnie, ale warto żebyś rozumiał, za co płacisz.

API – system pyta, system odpowiada

API to po prostu „okienko”, przez które jeden program może zapytać drugi: „daj mi wszystkie zamówienia z dzisiaj” albo „dopisz tego klienta”. To najczystszy i najbardziej niezawodny sposób. Jeśli oba systemy mają API – a większość nowoczesnych ma – integracja jest przewidywalna i tania. Wadą jest to, że jeden system musi aktywnie zapytać drugi, więc dane są aktualne dopiero w momencie zapytania.

Webhooki – system sam daje znać

Webhook to odwrotność API: zamiast pytać co minutę „czy jest nowe zamówienie?”, system sam wysyła sygnał w sekundzie, w której coś się wydarzy. „Właśnie wpłynęła płatność” – i reszta procesu rusza natychmiast. To najlepsze rozwiązanie tam, gdzie liczy się czas reakcji. Wymaga jednak, żeby system źródłowy w ogóle umiał wysyłać takie sygnały.

Middleware – tłumacz pośrodku

Czasem dwa systemy mają API, ale mówią zupełnie różnymi „językami” i nie da się ich połączyć wprost. Wtedy stawiam pośrednika – warstwę, która odbiera dane z jednego, tłumaczy je na format zrozumiały dla drugiego i przekazuje dalej. Middleware pilnuje też kolejności, ponawia próby przy chwilowej awarii i loguje, co się przez niego przewinęło. To serce większości poważniejszych integracji.

ETL – przenoszenie danych hurtem

ETL (pobierz – przekształć – załaduj) to podejście do dużych paczek danych, zwykle raz na jakiś czas: w nocy przenieś wszystkie wczorajsze transakcje do hurtowni raportowej, po drodze je porządkując. Nie nadaje się do reakcji „na żywo”, ale jest niezastąpiony tam, gdzie chodzi o raportowanie i analizę większych zbiorów.

PodejścieKiedy ma sensAktualność danych
APIoba systemy nowoczesne, dane na żądaniena zapytanie
Webhookiliczy się reakcja w czasie rzeczywistymnatychmiast
Middlewaresystemy mówią różnymi formatami, złożona logikazależnie od konfiguracji
ETLraportowanie, duże paczki danychpartiami (np. co noc)

Integracja ERP z aplikacjami webowymi

To najczęstszy scenariusz, z jakim do mnie przychodzą. ERP jest sercem firmy – trzyma kontrahentów, towary, faktury, stany – ale jest niewygodny dla ludzi, którzy nie księgują na co dzień. Handlowiec nie będzie klikał w ERP, żeby sprawdzić status zamówienia. Klient tym bardziej.

Rozwiązaniem zwykle nie jest wymiana ERP, tylko nałożenie na niego wygodnej aplikacji webowej – lekkiego panelu, do którego logują się handlowcy albo klienci, a który pod spodem czyta i zapisuje dane wprost do ERP. ERP zostaje tym, czym jest, ale ludzie pracują w interfejsie zrobionym pod nich, nie pod księgowość. Typowe połączenia, które stawiam:

  • Sklep / aplikacja → ERP – zamówienie z sieci ląduje od razu jako dokument w ERP, bez przepisywania.
  • ERP → aplikacja – stany magazynowe i ceny widoczne na bieżąco tam, gdzie sprzedajesz.
  • ERP → panel klienta – klient sam sprawdza status zamówienia i pobiera faktury, zamiast dzwonić do biura.

Automatyczna wymiana danych w praktyce

Integracja to dopiero rura – prawdziwa wartość pojawia się, kiedy popłyną przez nią całe procesy bez udziału człowieka. Połączenie systemów i automatyzacja procesów to dwie strony tej samej monety: najpierw dane muszą móc się przemieszczać, potem można na nich oprzeć automatyczny przepływ pracy. Przykładowy łańcuch, który da się złożyć z gotowych klocków:

  • klient składa zamówienie w aplikacji,
  • webhook natychmiast tworzy dokument w ERP,
  • magazyn dostaje powiadomienie do realizacji,
  • po wysyłce klient automatycznie dostaje numer przesyłki,
  • dane sprzedażowe lądują w hurtowni do raportu.

Nikt niczego nie przepisuje, a każdy krok zostawia ślad. Jeśli chcesz wejść głębiej w samo projektowanie takich przepływów, rozwijam ten temat przy okazji workflow automation – narzędzi i strategii.

Najpierw gotowe konektory, custom dopiero gdy trzeba

Tu jest mój uczciwy kompromis, bo nie chcę sprzedawać Ci więcej, niż potrzebujesz. Sporo połączeń między popularnymi systemami – znane ERP, znane sklepy, znane platformy – ma już gotowe konektory. Jeśli taki istnieje i robi to, czego potrzebujesz, to go używam. Jest tańszy, szybszy do wdrożenia i ktoś go utrzymuje za mnie.

Po dedykowaną integrację sięgam dopiero wtedy, gdy gotowiec nie istnieje albo nie obejmuje Twojej logiki – bo masz nietypowy proces, starszy system bez API albo reguły, których żaden uniwersalny konektor nie zna. Wtedy custom ma sens, bo robi dokładnie to, co Twoja firma, a nie „średnią dla wszystkich”. Kolejność jest zawsze ta sama: najpierw sprawdzam, czy da się gotowcem, dopiero potem proponuję pisanie od zera.

Kiedy integrować, a kiedy wymienić system

Najważniejsza wiadomość całego wpisu: w większości przypadków nie musisz wymieniać niczego – wystarczy połączyć to, co już masz. Wymiana środowiska to projekt na miesiące, ryzyko paraliżu firmy i koszt liczony w dziesiątkach tysięcy. Integracja jest tańsza, szybsza i mniej ryzykowna, bo ludzie pracują dalej w narzędziach, które znają.

Są jednak granice, gdzie uczciwie powiem „tu integracja nie wystarczy”:

  • Integruj, gdy systemy robią swoją robotę dobrze, a problemem jest tylko brak połączenia między nimi.
  • Integruj, gdy system jest stary, ale stabilny – często da się go „otoczyć” nowoczesną warstwą bez ruszania środka.
  • Wymieniaj, gdy system nie nadąża za firmą, dostawca przestał go rozwijać albo utrzymanie kosztuje więcej niż nowe rozwiązanie.
  • Wymieniaj, gdy braki funkcjonalne są tak duże, że żadna nakładka ich nie załata.

W praktyce najczęściej kończy się na drodze pośredniej: zostawiamy sprawdzone systemy, łączymy je integracją, a wymieniamy tylko ten jeden element, który realnie blokuje rozwój. Bez rewolucji, za to z efektem widocznym w tygodniach, nie w kwartałach.

Od czego zacząć

Nie zaczynam od technologii, tylko od mapy: które dane są przepisywane ręcznie, ile to kosztuje czasu i gdzie najczęściej pojawiają się błędy. Z tej mapy zwykle od razu widać dwa, trzy połączenia, które dają największy zwrot przy najmniejszym nakładzie – i od nich startujemy, zamiast od razu „integrować wszystko ze wszystkim”.

Jeśli masz kilka systemów, które ze sobą nie rozmawiają, i czujesz, że Twój zespół traci czas na przeklejanie danych – napisz do mnie. Spojrzę na to, co już masz, powiem wprost, co da się połączyć gotowcem, a gdzie potrzebna jest dedykowana integracja – i ile to realnie kosztuje, zanim cokolwiek zaczniemy.