Przejdź do treści
GESEL.IO
StronyPozycjonowanieAplikacjePoradnik
Kreator↗EN←Strona główna
Strona główna/Poradnik/Integracje i automatyzacja

Integracje i automatyzacja

Jak połączyć dwa systemy bez API: pięć dróg od najlepszej do najgorszej

Aktualizacja: 2026-08-13·7 min czytania·Redakcja GESEL.IO

Część poradnika: Integracja systemów w firmie: co zrobić, gdy przestaje działać

W skrócie

Zanim uznasz, że system nie ma API, zapytaj dostawcę na piśmie — bywa, że interfejs istnieje w wyższym pakiecie albo za dopłatą. Jeżeli faktycznie go nie ma, zostają cztery drogi gorsze: pliki przez SFTP z harmonogramem, wejście do bazy danych, ręczny CSV i odczyt z panelu. Każda kolejna jest tańsza na starcie i droższa w utrzymaniu.

Na tej stronie

  1. Czym jest API i dlaczego „nie ma API” bywa nieprawdą
  2. Pytania do dostawcy, zanim uznasz, że API nie ma
  3. Droga pierwsza: oficjalne, wspierane API dostawcy
  4. Droga druga: pliki wymieniane przez SFTP według harmonogramu
  5. Droga trzecia: wejście wprost do bazy danych systemu
  6. Droga czwarta: ręczny import i eksport plików CSV
  7. Droga piąta: odczyt z panelu, czyli scraping — i dlaczego prawie nigdy
  8. Jak połączyć dwa systemy bez API: pięć dróg obok siebie
5 dróg

Tyle jest realnych sposobów połączenia dwóch systemów. Tylko pierwszy z nich — wspierane API dostawcy — ktoś poza Twoją firmą ma obowiązek utrzymywać. Każda kolejna droga przenosi ten obowiązek na Ciebie.

Jak połączyć dwa systemy bez API — to pytanie pada zwykle w chwili, w której ktoś w firmie po raz czwarty przepisuje te same dane z jednego okna do drugiego. Poniżej pięć dróg połączenia ułożonych od najlepszej do najgorszej, przy każdej uczciwa informacja, kiedy jest akceptowalna, a kiedy staje się długiem technicznym. Zacznij jednak od sprawdzenia, czy interfejs faktycznie nie istnieje — bywa, że jest, tylko w wyższym pakiecie albo za dopłatą.

Czym jest API i dlaczego „nie ma API” bywa nieprawdą

API to opisany przez dostawcę zestaw poleceń, dzięki którym jeden program odczytuje i zapisuje dane w drugim bez człowieka klikającego w oknie. Spotkasz kilka jego odmian: REST (dziś najczęstsza, dane przesyłane zwykle w formacie JSON), SOAP (starszy standard oparty na XML, wciąż obecny w systemach księgowych) i GraphQL (pozwala odpytać dokładnie o te pola, których potrzebujesz). Dostęp zabezpiecza się kluczem API, tokenem albo standardem OAuth 2.0, czyli mechanizmem, w którym system nadaje aplikacji ograniczone uprawnienia bez przekazywania jej Twojego hasła.

Dane płyną na dwa sposoby: webhookiem, czyli powiadomieniem wysyłanym przez system natychmiast po zdarzeniu, albo przez odpytywanie cykliczne, czyli sprawdzanie co kilka minut, czy coś się zmieniło. Różnicę między nimi rozkłada osobny tekst o integracji systemów w firmie. Część starszych systemów księgowo-magazynowych obecnych na polskim rynku nie ma publicznego, wspieranego interfejsu — to realna sytuacja, nie wymówka wykonawcy. Zakres dostępnych interfejsów różni się też między wersjami tego samego produktu, co dotyczy między innymi Comarch ERP Optima i Comarch ERP XL, enova365, Symfonii, Subiekta GT i Subiekta nexo, Streamsoft Prestiż, Microsoft Dynamics 365 Business Central oraz SAP.

Pytania do dostawcy, zanim uznasz, że API nie ma

Zapytaj dostawcę na piśmie, zanim uznasz, że interfejsu nie ma — brak wzmianki na stronie produktu nie jest dowodem. API bywa dostępne dopiero w wyższym pakiecie, jako osobny moduł za dopłatą, w nowszej wersji systemu albo wyłącznie dla partnerów wdrożeniowych. Pytanie wysłane mailem ma dodatkową wartość: odpowiedź zostaje na piśmie i można ją pokazać wykonawcy zamiast opowiadać, co powiedziano przez telefon.

Wzór — pytanie do dostawcy systemu

„Czy [nazwa systemu] w wersji, z której korzystamy, udostępnia wspierane API do odczytu i zapisu kartotek kontrahentów, produktów, stanów magazynowych oraz zamówień? Jeżeli tak, proszę o link do dokumentacji, informację, w którym pakiecie lub module jest dostępne i czy wiąże się z dopłatą, sposób uwierzytelniania (klucz API, token, OAuth 2.0), limity liczby zapytań, dostęp do środowiska testowego oraz zasady zapowiadania zmian i utrzymywania starszych wersji. Jeżeli nie, proszę o informację, czy dopuszczają Państwo cykliczny eksport plików na serwer SFTP oraz odczyt danych wprost z bazy i czy takie użycie jest objęte wsparciem."

Trzy fragmenty odpowiedzi decydują o koszcie na lata: czy zmiany w interfejsie są zapowiadane z wyprzedzeniem, jak długo utrzymywane są starsze wersje i czy istnieje środowisko testowe, na którym da się sprawdzić aktualizację przed wdrożeniem jej u siebie. Pytanie „jak połączyć dwa systemy bez API” ma sens dopiero wtedy, gdy masz pisemną odpowiedź, że interfejsu naprawdę nie ma.

Droga pierwsza: oficjalne, wspierane API dostawcy

Oficjalne API to jedyna droga, którą ktoś poza Twoją firmą ma obowiązek utrzymywać — i dlatego zawsze zaczyna się od sprawdzenia, czy jest dostępna. Dostawca opisuje interfejs, zapowiada zmiany i odpowiada, gdy coś przestaje działać zgodnie z dokumentacją. Po Twojej stronie zostaje utrzymanie własnego klienta: obsługa błędów, ponowienia i logi.

Długiem technicznym staje się tylko wtedy, gdy zbudujesz połączenie bez logów i bez kolejki nieudanych komunikatów, czyli miejsca, w którym lądują odrzucone zdarzenia. Wtedy pierwsza zmiana wersji interfejsu kończy się szukaniem po omacku. Osobno dopytaj o limity liczby zapytań — przy pierwszym imporcie kilkudziesięciu tysięcy rekordów potrafią one przesądzić o kształcie całego rozwiązania.

Droga druga: pliki wymieniane przez SFTP według harmonogramu

Wymiana plików jest najstarszym wciąż sensownym rozwiązaniem: jeden system odkłada o ustalonej porze plik z danymi, a drugi go pobiera i wczytuje. SFTP to szyfrowany sposób przesyłania plików na cudzy serwer i pobierania ich stamtąd; w środku pliku najczęściej jest CSV, XML albo JSON. Ta droga bywa rozwiązaniem docelowym, nie protezą, pod jednym warunkiem: proces może działać wsadowo, czyli nikt nie czeka na wynik przed ekranem.

Żeby wytrzymała lata, potrzebuje trzech rzeczy: spisanej umowy formatu (lista kolumn, kodowanie znaków, separator, format daty i kwoty), katalogu na rekordy odrzucone wraz z powodem odrzucenia oraz alertu, gdy plik nie pojawi się o umówionej godzinie. Przy aktualizacji dostawcy psuje się zwykle po cichu: dochodzi kolumna albo zmienia się kodowanie i import wczytuje śmieci, nie zgłaszając błędu. Awaria wygląda tu jak cisza, więc monitoruj brak plików tak samo uważnie jak błędy.

Droga trzecia: wejście wprost do bazy danych systemu

Integracja przez bazę danych to sięganie po dane z pominięciem samego programu — prosto do magazynu, w którym trzyma on swoje tabele. Działa i bywa jedyną opcją, ale jest długiem technicznym z odroczonym terminem płatności: dostawca nigdy nie obiecywał, że struktura tabel się nie zmieni, więc bywa łamana przy kolejnych aktualizacjach. Zapis do bazy jest znacznie ryzykowniejszy niż odczyt, bo omija reguły, które program wykonuje sam: numerację dokumentów, przeliczenia i wpisy w historii zmian.

Akceptowalny wariant jest wąski — odczyt do raportu, najlepiej z kopii bazy, po pisemnym potwierdzeniu, że dostawca się temu nie sprzeciwia. Utrzymuje to wyłącznie Twoja firma, bo takie użycie zwykle nie jest objęte wsparciem. Awaria bywa najbardziej kosztowna ze wszystkich pięciu dróg: dane rozjeżdżają się po cichu i wychodzi to przy inwentaryzacji albo zamknięciu miesiąca. Przed decyzją sprawdź umowę licencyjną systemu oraz to, jakie dane osobowe znajdą się w kopii bazy — ten materiał ma charakter informacyjny i nie jest poradą prawną.

Droga czwarta: ręczny import i eksport plików CSV

Ręczne przenoszenie plików nie jest integracją, tylko procedurą wykonywaną przez człowieka, i tak należy je planować. CSV to zwykły plik tekstowy z tabelą, w którym kolejne pola oddziela przecinek albo średnik. Rozwiązanie broni się przy jednym kierunku przepływu, małym wolumenie, jednej odpowiedzialnej osobie i spisanej procedurze — jako most na kilka tygodni, nie na kilka lat.

Długiem staje się w dniu, w którym eksport trzeba robić codziennie. Awaria nie ma tu komunikatu błędu: ktoś zachorował, pojechał na urlop albo wczytał ten sam plik dwa razy i w systemie pojawiły się duplikaty. Przy stanach magazynowych ta droga jest szczególnie zdradliwa, bo dane starzeją się w godzinach, co rozkłada tekst o synchronizacji stanów magazynowych. Jeżeli decydujesz się na CSV, ustal datę wygaszenia, zanim uruchomisz procedurę.

Droga piąta: odczyt z panelu, czyli scraping — i dlaczego prawie nigdy

Scraping to program, który loguje się do panelu jak człowiek i odczytuje dane z ekranu, bo żadne drzwi dla programów nie zostały udostępnione. Wchodzi w grę wyłącznie w wąskim przypadku: jednorazowe pobranie własnych danych przed migracją, tylko do odczytu, w ustalonym terminie i po pisemnym potwierdzeniu, że dostawca tego nie zabrania. Jako stałe połączenie dla procesu, na którym stoi sprzedaż, jest najgorszym możliwym wyborem.

Powody są trzy i żaden nie jest techniczną drobnostką. Po pierwsze, rozwiązanie psuje się przy dowolnej zmianie wyglądu panelu, a dostawca nie ma obowiązku jej zapowiadać. Po drugie, wymaga przechowywania danych logowania prawdziwego użytkownika, więc w historii systemu wszystkie operacje przypisane są tej osobie, a uwierzytelnianie dwuskładnikowe zwykle blokuje automat. Po trzecie, regulaminy części systemów wprost zakazują automatycznego dostępu — sprawdź to, zanim ktokolwiek zacznie pisać kod.

✗„Ten system nie ma API, więc wejdziemy do bazy i jakoś to pójdzie. Na razie działa, potem się zobaczy."
✓„Mamy pisemną odpowiedź dostawcy, wybraną drogę, właściciela po naszej stronie i termin, do którego rozwiązanie tymczasowe ma zniknąć."

Jak połączyć dwa systemy bez API: pięć dróg obok siebie

Wybór sprowadza się do trzech pytań: kto ma obowiązek utrzymać połączenie, co się z nim stanie przy najbliższej aktualizacji dostawcy i po czym poznasz, że przestało działać. Tabela poniżej odpowiada na nie dla każdej z pięciu dróg.

Droga Kiedy jest akceptowalna Co się psuje przy aktualizacji Kto utrzymuje Jak wygląda awaria
Wspierane API Zawsze, gdy jest dostępne Wersja interfejsu, ale ze zapowiedzią Dostawca po swojej stronie, Ty po swojej Czytelny błąd i komunikat w kolejce
Pliki przez SFTP Procesy wsadowe, bez oczekiwania na wynik Układ kolumn, kodowanie, format daty Obie strony, według umowy formatu Cisza: plik nie przyszedł albo wczytał się błędnie
Baza danych Odczyt do raportu, za zgodą dostawcy Struktura tabel, bez zapowiedzi Wyłącznie Twoja firma Ciche rozjechanie danych, widoczne po tygodniach
Ręczny CSV Most na kilka tygodni, jeden kierunek Nic technicznie, wszystko organizacyjnie Konkretna osoba w firmie Brak eksportu albo duplikaty po dwukrotnym wczytaniu
Odczyt z panelu Jednorazowa migracja własnych danych Dowolna zmiana wyglądu panelu Wyłącznie Twoja firma Niepełne dane pobrane bez zgłoszenia błędu

Niezależnie od wybranej drogi zamów ten sam zestaw minimum: logi z treścią komunikatu, alert na ciszę, kolejkę nieudanych komunikatów, procedurę ponowienia i jednego właściciela po stronie firmy — to lista wspólna dla każdej integracji systemów w firmie. To, czy przepływ zbudujesz w gotowym narzędziu, czy własnym kodem, jest osobną decyzją, którą porządkuje porównanie Make, n8n i własnej integracji. Koszt rządzi się natomiast tą samą logiką co wycena aplikacji mobilnej: płacisz za przypadki brzegowe i uzgodnienia, nie za liczbę przepisywanych pól.

Jeżeli nie wiesz, którą drogą pójść, opisz oba systemy w kreatorze briefu — sześć kroków wystarczy, żeby rozmowa zaczęła się od tego, jakie dane mają przechodzić między systemami i jak często, a nie od nazwy narzędzia.

Baza wiedzy

Twój system nie ma API i nie wiesz, co dalej?

Opisz oba systemy w kreatorze briefu — wrócimy z propozycją drogi połączenia i listą rzeczy do ustalenia z dostawcą.

Otwórz kreator briefu↗

Checklista

  • ✓

    Wyślij dostawcy pisemne pytanie o API i poproś o link do dokumentacji oraz informację, w którym pakiecie interfejs jest dostępny.

  • ✓

    Sprawdź w umowie i regulaminie systemu, czy wolno sięgać wprost do bazy danych i logować się do panelu automatycznie.

  • ✓

    Ustal, czy proces może działać wsadowo w nocy, czy ktoś czeka na wynik przed ekranem — to rozstrzyga połowę wyboru.

  • ✓

    Wskaż jedną osobę po swojej stronie, która odpowiada za połączenie i ma kontakt do dostawców obu systemów.

  • ✓

    Zamów alert na ciszę: powiadomienie, gdy plik nie pojawi się o umówionej godzinie albo gdy przez kilka godzin nie przyjdzie żadne zdarzenie.

  • ✓

    Zapisz w umowie z wykonawcą, co się dzieje po aktualizacji systemu dostawcy i kto pokrywa koszt naprawy połączenia.

  • ✓

    Ustal datę wygaszenia rozwiązania tymczasowego i wpisz ją do kalendarza, zanim je uruchomisz.

Najczęstsze pytania

Jak połączyć sklep z programem magazynowym, jeśli program nie ma API?
Najpierw potwierdź pisemnie u dostawcy, że interfejsu faktycznie nie ma w Twojej wersji i pakiecie. Jeżeli nie ma, najbezpieczniejszą drogą jest cykliczna wymiana plików: program eksportuje stany i kartoteki o ustalonej porze na serwer SFTP, a sklep je pobiera i wczytuje. Wymaga to spisanej umowy formatu pliku, katalogu na rekordy odrzucone i alertu, gdy plik nie pojawi się o czasie. Rozwiązanie działa tylko dla procesów wsadowych — jeżeli klient ma widzieć aktualny stan w czasie rzeczywistym, trzeba wrócić do rozmowy o interfejsie po stronie programu magazynowego.
Czy integracja przez bazę danych systemu jest bezpieczna?
Odczyt z bazy do raportu, najlepiej z kopii, bywa akceptowalny. Zapis wprost do bazy jest ryzykowny, bo omija reguły, które program wykonuje przy zapisie: numerację dokumentów, przeliczenia i wpisy w historii zmian. Taka integracja zwykle nie jest objęta wsparciem dostawcy, a struktura tabel może się zmienić przy każdej aktualizacji. Przed decyzją sprawdź, co na ten temat mówi umowa licencyjna systemu. Ten opis ma charakter informacyjny i nie jest poradą prawną.
Co się stanie z integracją przy aktualizacji systemu dostawcy?
To zależy od tego, przez co się połączyłeś. Wspierane API ma wersje i zapowiadane zmiany, więc masz czas na reakcję. Wymiana plików psuje się, gdy zmieni się układ kolumn, kodowanie znaków albo format daty — najczęściej po cichu, bez komunikatu błędu. Integracja przez bazę danych i odczyt z panelu mogą przestać działać z dnia na dzień, bo dostawca nie zobowiązywał się do utrzymania ani struktury tabel, ani wyglądu ekranów. Zapisz w umowie z wykonawcą, kto reaguje na taką awarię i na czyj koszt.
Czy scraping panelu to dobre rozwiązanie?
Prawie nigdy. Scraping, czyli automatyczny odczyt danych z ekranu panelu, psuje się przy każdej zmianie interfejsu, wymaga przechowywania danych logowania prawdziwego użytkownika i sprawia, że w historii systemu wszystkie operacje przypisane są tej osobie. Uwierzytelnianie dwuskładnikowe zwykle go blokuje, a regulaminy części systemów wprost zakazują automatycznego dostępu. Da się go obronić wyłącznie jako jednorazowe pobranie własnych danych przed migracją, w ustalonym terminie i po pisemnym potwierdzeniu, że dostawca tego nie zabrania.
Jak sprawdzić, czy mój system naprawdę nie ma API?
Zapytaj dostawcę mailem i poproś o odpowiedź na piśmie — brak wzmianki na stronie produktu nie jest dowodem. W pytaniu podaj wersję systemu i pakiet, z którego korzystasz, oraz wymień dane, które chcesz odczytywać i zapisywać: kontrahentów, produkty, stany magazynowe, zamówienia. Poproś o link do dokumentacji, informację o sposobie uwierzytelniania, limitach liczby zapytań i dostępie do środowiska testowego. Interfejs bywa dostępny dopiero w wyższym pakiecie, jako moduł za dopłatą albo w nowszej wersji systemu.
Ile trwa integracja dwóch systemów bez API?
Nie da się podać jednej liczby, bo termin wyznacza nie kod, tylko odpowiedzi drugiej strony. Największy wpływ mają: czas oczekiwania na stanowisko dostawcy, dostęp do środowiska testowego, liczba pól do uzgodnienia między systemami oraz to, czy dane po obu stronach da się jednoznacznie sparować. Uczciwy wykonawca poda widełki dopiero po przejrzeniu przykładowych danych i dokumentacji, a nie po samym opisie problemu.

Źródła i metodologia

Linki prowadzą do źródeł pierwotnych oraz zasad, według których przygotowujemy i aktualizujemy materiały.

  • Zasady redakcyjne GESEL.IO↗

Czytaj także

  • Integracja systemów w firmie: co zrobić, gdy przestaje działać

    Integracja systemów w firmie bez zgadywanki: macierz encji, jedno źródło prawdy, webhooki, kolejki i plan na dzień, w którym druga strona przestaje odpowiadać.

  • Synchronizacja stanów magazynowych: cztery stany i jedno źródło prawdy

    Synchronizacja stanów magazynowych bez nadsprzedaży: cztery różne definicje stanu, wybór źródła prawdy, webhook czy odpytywanie cykliczne i co robić przy konflikcie.

  • Make czy n8n, a może własna integracja: pięć progów przełączenia

    Make czy n8n, czy jednak własna integracja? Pięć progów, po których przekroczeniu scenariusz no-code przestaje się opłacać, i realny koszt self-hostingu.

GESEL.IO
Strony internetowePozycjonowanieAplikacjeStrona dla nowej firmyPoradnik
Zasady redakcyjnePolityka prywatnościRegulamin serwisuWsparcie

GESEL.IO sp. z o.o., ul. Jagiellońska 5/22, 58-100 Świdnica, Polska

Sąd Rejonowy dla Wrocławia-Fabrycznej we Wrocławiu, IX Wydział Gospodarczy KRS, KRS 0001258062, NIP 8842841661, REGON 545371616, kapitał zakładowy: 5 000,00 zł.

© 2026 GESEL.IO sp. z o.o.