Ręczne przepisywanie zamówień między sklepem, magazynem i ERP tworzy opóźnienia oraz rozbieżności, których nie rozwiąże samo uruchomienie endpointu. Zanim połączymy systemy, ustalamy, które zdarzenie rozpoczyna proces i który system ma prawo zmienić każdą wartość.
Krótka odpowiedź
Aby połączyć sprzedaż z operacjami przez API, najpierw narysuj proces zamówienia, wskaż system nadrzędny dla każdego pola i sprawdź dokumentację interfejsów. Potem zaprojektuj kierunek danych, identyfikatory, walidację, ponowienia i kolejkę błędów.
Uruchom integrację dopiero po przejściu testów obejmujących również timeout, duplikat zdarzenia, anulowanie i niedostępność ERP.
Usługi KC Mobile
Potrzebujesz pomocy w tym temacie?
Czytasz poradnik „Integracja API krok po kroku: jak połączyć sprzedaż z operacjami”. Napisz, co chcesz zrobić i na jakim etapie jesteś. Ustalimy, czy możemy pomóc i jaki zakres prac będzie potrzebny.
Które procesy sprzedaży warto połączyć?
Integruj proces, w którym te same dane są obecnie ręcznie przenoszone między sprzedażą a operacjami. API, czyli interfejs programistyczny aplikacji, pozwala systemom wymieniać żądania i odpowiedzi według uzgodnionego kontraktu; samo API nie określa, jak firma ma prowadzić zamówienie.
Rozrysuj jedną ścieżkę od produktu do obsługi posprzedażowej: publikacja oferty, przyjęcie zamówienia, płatność, rezerwacja, kompletacja, wysyłka, faktura i zwrot. Zaznacz ręczne przepisania, opóźnienia oraz miejsca, w których pracownik podejmuje decyzję. Najpierw automatyzuj przepływ o jasnym właścicielu i jednoznacznym warunku zakończenia.
Jeżeli kanał sprzedaży, magazyn i system obsługi zamówień mają wymieniać dane przez warstwę BaseLinker, poznaj zakres integracji z BaseLinkerem i sprawdź, które etapy procesu ta warstwa ma przejąć.
Czytasz poradnik „Integracja API krok po kroku: jak połączyć sprzedaż z operacjami”. Napisz, co chcesz zrobić i na jakim etapie jesteś. Ustalimy, czy możemy pomóc i jaki zakres prac będzie potrzebny. Omów temat tego poradnika
Jak ustalić źródło prawdy dla każdego pola?
Źródłem prawdy dla pola powinien być jeden wskazany system, który ma prawo je zmieniać. Systemy podrzędne mogą otrzymywać kopię wartości, ale nie powinny bez reguły zwrotnej aktualizować tej samej informacji.
Tabela poniżej wskazuje przykładowego właściciela danych dla każdego pola i regułę rozstrzygania konfliktu. Dopasuj przypisanie do procesu oraz konfiguracji konkretnych systemów.
| Pole | System nadrzędny | System odbierający | Reguła konfliktu |
|---|---|---|---|
| Cena katalogowa | ERP lub system cenowy | Sklep | Aktualizuje wyłącznie właściciel ceny |
| Stan dostępny | WMS lub ERP | Sklep i kanały sprzedaży | Nie sumuj wartości z różnych źródeł |
| Status zamówienia | OMS lub ERP | Sklep i obsługa klienta | Przesyłaj status według mapy stanów |
| Dane klienta | Sklep dla danych zamówienia | ERP lub CRM | Zachowaj identyfikator i cel użycia |
| Płatność | Operator płatności lub sklep | ERP lub OMS | Rozróżnij autoryzację od rozliczenia |
| Numer przesyłki | System przewoźnika lub WMS | Sklep i klient | Aktualizuj po potwierdzeniu nadania |
Tabela wyznacza właściciela, a nie konkretną konfigurację każdego produktu. Zapisz wyjątki, takie jak blokada ręcznej zmiany ceny lub korekta stanu po inwentaryzacji, zanim powstanie logika synchronizacji.
Jak przygotować wymagania API?
Przed projektowaniem przepływu sprawdź dokumentację producenta dla uwierzytelniania, operacji, limitów, wersji i środowiska testowego. Dla każdego systemu zanotuj adresy endpointów, wymagane zakresy dostępu, formaty żądań i odpowiedzi oraz warunki otrzymania błędów.
Lista kontroli dokumentacji:
- Metoda i endpoint dla odczytu, utworzenia, aktualizacji oraz anulowania danych.
- Sposób autoryzacji, ważność tokenów i zakres uprawnień.
- Limity zapytań, paginacja i sposób pobierania zmian od ostatniego odczytu.
- Dostępność webhooków, czyli powiadomień wysyłanych przez system po zdarzeniu.
- Identyfikatory zdarzeń i możliwość wykrywania duplikatów.
- Środowisko testowe, przykładowe odpowiedzi i różnice względem produkcji.
- Właściciel API i procedura zgłaszania zmian lub awarii.
Nie zakładaj, że wszystkie API mają webhooki albo środowisko testowe. Gdy system udostępnia tylko odczyt cykliczny, uwzględnij częstotliwość pobierania, okno zmian i sposób wykrywania rekordów usuniętych.
Jak zaprojektować przepływ danych?
Przepływ danych określa kierunek, moment, identyfikator i reguły przetwarzania każdej zmiany. Opisz go jako zdarzenie wejściowe, walidację, zapis w systemie docelowym, potwierdzenie wyniku i obsługę błędu.
Tabela poniżej porządkuje decyzje projektowe dla pojedynczego zamówienia. Każdy etap powinien mieć uzgodniony warunek powodzenia i dalsze działanie po błędzie.
| Etap | Decyzja projektowa | Przykład dla zamówienia |
|---|---|---|
| Zdarzenie | Co uruchamia wymianę? | Sklep zatwierdził zamówienie |
| Identyfikator | Jak rozpoznać ten sam rekord? | ID zamówienia sklepu |
| Walidacja | Jakie warunki muszą być spełnione? | SKU i adres dostawy są poprawne |
| Zapis | Który system przyjmuje zmianę? | OMS tworzy zamówienie operacyjne |
| Potwierdzenie | Co uznajemy za sukces? | Zwrócono ID OMS i status przyjęcia |
| Ponowienie | Kiedy wolno powtórzyć żądanie? | Po timeout zgodnie z idempotencją |
Idempotencja oznacza, że ponowienie identycznej operacji nie powinno powielić jej skutku. RFC 9110 określa metody HTTP PUT i DELETE jako idempotentne, a klientowi odradza automatyczne ponawianie żądania nieidempotentnego bez sposobu sprawdzenia, czy operacja została wykonana. Dla tworzenia zamówienia przez POST ustal unikalny klucz lub najpierw sprawdź, czy rekord już istnieje.

Jak połączyć zamówienie ze stanem magazynowym?
Zamówienie powinno zmniejszać dostępność dopiero zgodnie z uzgodnioną regułą rezerwacji w systemie magazynowym lub OMS. Rezerwacja przed potwierdzeniem płatności, po autoryzacji albo dopiero po opłaceniu to decyzja biznesowa, którą trzeba zapisać jako warunek procesu.
Przykładowy przepływ wygląda następująco: sklep wysyła zamówienie z trwałym ID, integrator sprawdza duplikat i kompletność SKU, OMS tworzy zamówienie, a WMS rezerwuje dostępny zapas. Po potwierdzeniu płatności proces przechodzi do kompletacji; anulowanie zwalnia rezerwację zgodnie z regułą magazynową, a zwrot przechodzi osobną ścieżkę oceny i przyjęcia towaru.
Podwójna rezerwacja może wystąpić, gdy system ponowi niejednoznaczne żądanie po timeout albo dwa kanały niemal równocześnie zamówią ostatnią sztukę. Użyj identyfikatora zamówienia jako klucza deduplikacji, a rezerwację wykonuj w systemie, który kontroluje wspólny stan. Przy timeout nie twórz drugiego zamówienia bez sprawdzenia rezultatu pierwszej próby.
Jak testować integrację przed uruchomieniem?
Testy powinny potwierdzić poprawny przebieg zamówienia i bezpieczne zachowanie po błędach komunikacji. Sprawdź logikę na danych testowych obu dostawców, a każdy scenariusz wiąż z identyfikatorem korelacyjnym, który pozwala znaleźć zdarzenie w logach wszystkich systemów.
Tabela poniżej obejmuje scenariusze poprawne i błędne, które warto sprawdzić przed uruchomieniem. Wynik każdego testu powinien potwierdzić stan zamówienia oraz rezerwacji w systemach źródłowym i docelowym.
| Scenariusz | Oczekiwane zachowanie | Wynik do sprawdzenia |
|---|---|---|
| Poprawne zamówienie | Powstaje jedna rezerwacja i jeden rekord OMS | ID zamówienia w obu systemach |
| Brak stanu | Zamówienie otrzymuje uzgodniony status wyjątku | Brak fałszywego potwierdzenia wysyłki |
| Powtórzone zdarzenie | Integracja rozpoznaje duplikat | Brak drugiego zamówienia |
| Timeout po zapisie | System sprawdza wynik przed ponowieniem | Jeden rekord operacyjny |
| Anulowanie | Status i rezerwacja są spójne | Zwolniony zapas według reguły |
| Błąd płatności | Proces nie przechodzi do wysyłki | Zachowany status płatności |
| Niedostępność ERP | Zdarzenie czeka na ponowienie lub obsługę | Brak utraty zamówienia |
Po teście end-to-end sprawdź także aktualizację stanu z powrotem do sklepu. Sam kod HTTP 200 nie dowodzi, że wartość została prawidłowo zapisana w docelowym procesie.

Jak uruchomić monitoring i obsługę wyjątków?
Monitoring powinien pokazywać, które zdarzenie nie przeszło, w jakim systemie wystąpił błąd i kto ma je wznowić. Rejestruj identyfikator zamówienia, identyfikator korelacyjny, czas, endpoint, wynik walidacji i skróconą treść błędu; nie zapisuj w logach haseł, tokenów ani zbędnych danych osobowych.
Ustal kolejkę błędów z kategoriami: błąd danych, brak uprawnień, przekroczony limit, timeout i niedostępność systemu. Dla każdego typu określ, czy integrator może ponowić zdarzenie automatycznie, czy potrzebna jest korekta danych albo decyzja operatora. Microsoft zaleca, by przy ponawianiu metod nieidempotentnych sprawdzić dokumentację API lub zastosować mechanizm, który chroni przed powtórnym skutkiem.
Alert powinien wskazywać nazwę procesu i instrukcję wznowienia, a nie tylko komunikat "błąd API". Osoba dyżurna musi móc sprawdzić, czy system docelowy wykonał operację przed wznowieniem. Po naprawie zapisz przyczynę i rezultat, aby odróżnić awarię chwilową od błędu mapowania.
Jak mierzyć efekt połączenia sprzedaży z operacjami?
Efekt integracji mierzy się zmianą czasu i jakości obsługi procesu, a nie samą liczbą poprawnych odpowiedzi API. Zbierz wartości bazowe przed uruchomieniem i porównuj je po wdrożeniu przy tej samej definicji zamówienia oraz okresie pomiaru.
Tabela poniżej grupuje mierniki operacyjne, ich zakres i sposób interpretacji. Porównuj je z wartościami bazowymi zebranymi przed wdrożeniem.
| Miernik | Co obejmuje | Jak interpretować zmianę |
|---|---|---|
| Czas obsługi zamówienia | Od przyjęcia do przekazania do realizacji | Spadek oznacza krótszą obsługę administracyjną |
| Ręczne korekty | Zmiany danych wykonane przez pracownika | Wzrost może wskazywać błąd mapowania |
| Rozjazdy stanów | Różnice między sklepem a systemem magazynowym | Wzrost wymaga sprawdzenia źródeł i opóźnień |
| Błędy synchronizacji | Zdarzenia niewykonane zgodnie z kontraktem | Podział według przyczyny pokazuje priorytet napraw |
| Czas przywrócenia | Od wykrycia błędu do poprawnego wznowienia | Krótszy czas wskazuje sprawniejszą obsługę wyjątków |
Jeśli nie chcesz samodzielnie projektować mapowania i procesu, zleć połączenie systemów obsługiwanych przez BaseLinker po wcześniejszym uzgodnieniu zakresu systemów i testów. Przy API niewspieranym przez gotowy konektor potrzebny może być odrębny projekt integracyjny.
Więcej poradników w tym temacie
Wspomniane narzędzia
Najczęściej zadawane pytania
Czy API synchronizuje zamówienia i stany magazynowe w czasie rzeczywistym?
Co zrobić, gdy ERP nie udostępnia webhooków?
Jak sprawdzić, czy integracja API działa poprawnie?
Czy można ponawiać każde żądanie API po timeout?
Czy integracja API zastępuje system OMS lub WMS?
Potrzebujesz pomocy w tym temacie?
Czytasz poradnik „Integracja API krok po kroku: jak połączyć sprzedaż z operacjami”. Napisz, co chcesz zrobić i na jakim etapie jesteś. Ustalimy, czy możemy pomóc i jaki zakres prac będzie potrzebny.
