Przejdź do treści
Jak zaprojektować przenoszenie i aktualizację zamówień między ERP a sklepem

Jak zaprojektować przenoszenie i aktualizację zamówień między ERP a sklepem

Opublikowano: 18 października 2026| Zaktualizowano: 18 października 2026

Rozbieżności między zamówieniem w sklepie a dokumentem ERP często wynikają z nieuzgodnionych reguł edycji i aktualizacji statusów. Przed wdrożeniem ustalamy przepływ danych, moment utworzenia dokumentu oraz sposób obsługi przerw w komunikacji.

Krótka odpowiedź

Poprawna synchronizacja wymaga przypisania właściciela do każdego pola, trwałego powiązania zamówienia sklepowego z rekordem ERP i reguł bezpiecznego ponawiania operacji. Sklep zwykle przekazuje dane sprzedaży, a ERP odsyła numer dokumentu, status realizacji i informacje o wysyłce według uzgodnionego mapowania.

Test odbiorowy powinien potwierdzić zgodność wartości, brak duplikatów i odzyskanie procesu po awarii.

Usługi KC Mobile

Potrzebujesz pomocy w tym temacie?

Czytasz poradnik „Jak zaprojektować przenoszenie i aktualizację zamówień między ERP a sklepem”. Napisz, co chcesz zrobić i na jakim etapie jesteś. Ustalimy, czy możemy pomóc i jaki zakres prac będzie potrzebny.

Jakie dane zamówienia mają przepływać między systemami?

Do ERP powinny trafić identyfikatory, pozycje, kwoty, dane klienta i warunki realizacji potrzebne do odtworzenia sprzedaży. Sama suma zamówienia nie wystarcza, ponieważ nie określa podatków, kosztu dostawy ani sposobu płatności.

Zakres pól i kierunek przepływu zatwierdźcie przed konfiguracją. Poniższa tabela pokazuje przykładowy zakres, a warunki synchronizacji trzeba dopasować do sklepu, ERP i rodzaju tworzonego dokumentu.

przykładowe pola zamówienia, kierunki przepływu i warunki synchronizacji
Pole zamówieniaSystem źródłowySystem docelowyWarunek synchronizacji
ID zamówieniaSklepERPUnikalny klucz powiązania
SKU pozycjiSklepERPSKU wskazuje kartotekę towaru
Ilość pozycjiSklepERPJednostka miary jest zgodna
Cena jednostkowaSklepERPWaluta jest zgodna
Rabat pozycjiSklepERPReguła rabatowa jest odwzorowana
Stawka VATSklepERPStawka jest zmapowana do ERP
Metoda dostawySklepERPMetoda ma przypisaną usługę
Koszt dostawySklepERPKwota trafia do właściwej pozycji
Metoda płatnościSklepERPUstalono regułę księgowania
Kwota pobraniaSklepERPKwota jest przekazana osobno
Dane nabywcySklepERPDane fakturowe są kompletne
Dane odbiorcySklepERPDane wysyłkowe są oddzielone
Numer przesyłkiERPSklepPole docelowe przechowuje numer
Uwagi do zamówieniaSklepERPUstalono limit i sposób zapisu

Pola pozycji, dostawy, płatności i odbiorcy wymagają osobnych reguł, nawet jeśli sklep prezentuje je razem. Uzgodnijcie format waluty, sposób zaokrąglania, strefę czasową oraz to, czy ERP przyjmuje kwoty netto czy brutto.

WooCommerce udostępnia dane zamówień przez REST API, czyli interfejs do odczytu i zapisu danych, oraz może wysyłać webhooki po skonfigurowanych zdarzeniach. Webhook to komunikat o zdarzeniu wysyłany na wskazany adres URL; logi dostarczenia pokazują żądanie i odpowiedź. Dokumentację producenta sprawdziliśmy 18 października 2026 roku w dokumentacji WooCommerce REST API i dokumentacji webhooków. Szerszy opis sposobów wymiany danych zawiera przewodnik po integracji systemów przez API.

Czytasz poradnik „Jak zaprojektować przenoszenie i aktualizację zamówień między ERP a sklepem”. 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

Który system powinien być źródłem prawdy dla każdego pola?

Źródłem prawdy dla pola powinien być system, którego wartość ma pierwszeństwo po zmianach w obu miejscach. Właściciela danych ustalcie osobno dla każdego pola i etapu procesu, zamiast wyznaczać jeden system dla całego zamówienia.

przykładowy właściciel pola zamówienia i reguła ochronna
PoleŹródło prawdyRyzyko nadpisaniaReguła ochronna
Status płatnościBramka płatnościERP zmieni potwierdzenieERP nie edytuje statusu płatności
Numer dokumentuERPSklep zastąpi numer ERPNumer jest tylko do odczytu w sklepie
Dostępność towaruERPSklep odeśle nieaktualny stanSklep nie zmienia stanu ERP
Adres przed wysyłkąSklepERP przywróci poprzedni adresZmiana jest dozwolona przed wysyłką
Adres po nadaniuERPKorekta nie dotrze do przewoźnikaKorektę obsługuje operator
Status realizacjiERPRęczna zmiana cofnie kompletacjęPrzyjmuj dozwolone przejścia
Dane firmy przed dokumentemSklepERP zapisze nieaktualne daneWaliduj dane przed dokumentem
Dane firmy po dokumencieERPSklep zmieni istniejący dokumentKorektę obsłuż osobnym procesem

Jedno pole powinno mieć jednego właściciela na danym etapie, nawet jeśli oba systemy pozwalają je edytować. Macierz powinna określać, czy zmiana jest dopuszczalna, jak długo trwa okno edycji i co następuje po jego zamknięciu.

Z naszych wdrożeń wynika, że reguły zmiany adresu, częściowego zwrotu i korekty ilości przed wysyłką często pozostają nieopisane. Zalecamy zatwierdzić macierz z osobami odpowiedzialnymi za sprzedaż, magazyn i księgowość. Typowe problemy mapowania opisujemy w poradniku o diagnozowaniu problemów z integracjami sklepu.

Jak zaprojektować przebieg zamówienia od sklepu do ERP?

Przepływ powinien najpierw zweryfikować dane, następnie utworzyć rekord w ERP i zapisać jego identyfikator przy zamówieniu sklepowym. Trwałe powiązanie pozwala po przerwaniu komunikacji sprawdzić, czy ERP zapisał już dokument.

Przykładowa kolejność obsługi obejmuje:

1. Sklep zapisuje zamówienie z niezmiennym identyfikatorem.
2. Integracja odbiera zdarzenie albo pobiera zamówienie według harmonogramu.
3. Walidator sprawdza SKU, VAT, walutę, metodę dostawy i wymagane dane.
4. ERP tworzy uzgodniony dokument, na przykład zamówienie klienta.
5. Integracja zapisuje identyfikator ERP przy zamówieniu sklepowym.
6. System zapisuje wynik operacji i udostępnia numer dokumentu.

Zamówienie opłacone może po walidacji przejść do utworzenia dokumentu zgodnego z polityką firmy. Dla pobrania integracja przekazuje kwotę pobrania i właściwą metodę płatności. Zamówienie wymagające ręcznej weryfikacji trafia do kolejki wyjątków z przyczyną i osobą odpowiedzialną.

W WooCommerce webhooki konfiguruje się w WooCommerce > Ustawienia > Zaawansowane > Webhooki. Producent podaje, że sklep automatycznie wyłącza webhook po więcej niż pięciu kolejnych nieudanych dostarczeniach; za niepowodzenie uznaje odpowiedź inną niż HTTP 2xx, 301 lub 302. Logi webhooków pozwalają sprawdzić wysłane żądanie i odpowiedź. Informacje te sprawdziliśmy 18 października 2026 roku w oficjalnej dokumentacji webhooków WooCommerce.

Gdy zamówienia napływają z wielu kanałów, integracja zamówień z BaseLinkerem może uporządkować przepływ między kanałami a systemem operacyjnym firmy. Zakres należy dopasować do źródeł zamówień i zasad ich przekazywania. W przypadku sprzedaży na marketplace warto też poznać integrację Allegro z WooCommerce.

Jak aktualizować statusy i zmiany z ERP w sklepie?

ERP powinien aktualizować status sklepu po zdarzeniu, które faktycznie zmienia etap realizacji. Sama zgodność nazw nie wystarcza, ponieważ dwa systemy mogą przypisywać tę samą etykietę do różnych etapów procesu.

przykładowe mapowanie zdarzeń ERP na statusy sklepu
Zdarzenie w ERPStatus sklepuWarunek aktualizacji
Rezerwacja przyjętaW realizacjiZamówienie przyjęto do obsługi
Kompletacja rozpoczętaW realizacjiNie wysyłaj ponownego powiadomienia
Przesyłka nadanaWysłaneNumer przesyłki jest dostępny
Zamówienie anulowaneAnulowaneWysyłka nie została rozpoczęta
Zwrot częściowy przyjętyBez zmiany statusu całościZapisano zwrócone pozycje i kwotę
Zwrot pełny przyjętyZwróconeZwrot obejmuje całe zamówienie
Brak towaruOczekuje na decyzjęWymagana decyzja operatora

Zwrot częściowy obejmuje wybrane pozycje albo część kwoty, więc nie oznacza zakończenia obsługi pozostałych pozycji. Zwrot pełny dotyczy całego zamówienia. Jeśli systemy na to pozwalają, przechowujcie status zwrotu oddzielnie od statusu realizacji.

Zablokujcie przejścia cofające proces, takie jak zmiana statusu z "Wysłane" na "W realizacji" po nadaniu przesyłki. Dozwolone może być przejście z "W realizacji" do "Wysłane", gdy ERP potwierdzi nadanie i przekaże numer przesyłki. Anulowanie można dopuścić przed rozpoczęciem kompletacji, a po jej rozpoczęciu skierować do ręcznej decyzji.

Wyjątek powinien trafić do kolejki obsługi zamiast nadpisywać bieżący status. Operator sprawdza przyczynę, uzgadnia faktyczny etap z magazynem lub przewoźnikiem i zatwierdza korektę z zapisem poprzedniej oraz nowej wartości. Integracja nie powinna ponownie wysyłać powiadomienia klientowi, jeśli status sklepu się nie zmienił.

Jak często synchronizować zamówienia?

Częstotliwość synchronizacji dobierzcie do oczekiwanego czasu obsługi, limitów API i dostępności ERP. Częstsze wywołania zmniejszają opóźnienie, ale zwiększają obciążenie oraz liczbę punktów wymagających monitorowania.

sposoby synchronizacji zamówień i warunki wyboru
SposóbTypowe opóźnienieWarunek technicznyGłówne ryzyko
API synchroniczneCzas odpowiedzi żądaniaERP przyjmuje żądania onlinePrzestój blokuje proces
Kolejka zdarzeńCzas przetwarzania kolejkiDostępna kolejka zadańRosnąca kolejka opóźnia wynik
Synchronizacja cyklicznaInterwał harmonogramuDostęp do API lub eksportuDane są czasowo nieaktualne

API synchroniczne wybierzcie, gdy sklep potrzebuje natychmiastowej odpowiedzi, a ERP zapewnia stabilny czas odpowiedzi. Kolejkę zdarzeń rozważcie, gdy awaria ERP nie powinna blokować przyjmowania zamówień. Synchronizacja cykliczna może wystarczyć, gdy opóźnienie jest akceptowalne, a systemy nie udostępniają zdarzeń.

Ustalcie, co dzieje się z zamówieniem podczas niedostępności ERP. Sklep może przyjąć zamówienie i oznaczyć je jako oczekujące na przekazanie albo wstrzymać sprzedaż, jeśli brak rezerwacji stanu tworzy niedopuszczalne ryzyko. Wybór powinien wynikać z zasad sprzedaży i magazynu.

Co powinno się wydarzyć, gdy synchronizacja się nie powiedzie?

Nieudana synchronizacja powinna zachować dane, zapisać przyczynę błędu i umożliwić bezpieczne wznowienie procesu. Ponowienie nie może utworzyć kolejnego dokumentu, jeśli ERP zapisał już pierwszą próbę.

Rozdzielcie błędy według sposobu obsługi:

  • Błąd walidacji, taki jak brak SKU lub nieznana stawka VAT, wymaga poprawy danych przed ponowieniem.
  • Błąd chwilowy, taki jak timeout lub niedostępność ERP, może uruchomić ponowienie po przerwie.
  • Konflikt, taki jak istniejący rekord dla tego samego klucza, wymaga odczytu powiązania i uzgodnienia stanu.

Każdy log powinien zawierać identyfikator zamówienia sklepowego, identyfikator ERP, czas, etap i wynik operacji. Alert powinien odróżniać pojedynczy błąd walidacji od rosnącej liczby zamówień oczekujących. Nie zapisujcie pełnych danych osobowych, jeśli do diagnozy wystarczą identyfikator i kod błędu.

Stosujcie klucz idempotencji, czyli identyfikator pozwalający rozpoznać ponowione żądanie jako tę samą operację. Jeśli ERP go nie obsługuje, integracja powinna przed utworzeniem dokumentu sprawdzić, czy istnieje rekord z identyfikatorem zamówienia. Po wznowieniu porównajcie statusy obu systemów i przekażcie rozbieżność do ręcznej obsługi.

Jak przetestować integrację przed uruchomieniem?

Test odbiorowy powinien potwierdzić zgodność danych, brak duplikatów i przewidywalne zachowanie po błędach. Ustalcie przypadki testowe na danych zbliżonych do produkcyjnych, bez wykonywania rzeczywistych płatności ani wysyłek.

Lista testów powinna obejmować:

  • nowe zamówienie opłacone i zamówienie pobraniowe;
  • produkt z wariantem, rabatem, różną stawką VAT i kosztem dostawy;
  • brak kartoteki SKU, błędne dane firmy i nieobsługiwaną metodę dostawy;
  • zmianę statusu, dodanie numeru przesyłki i częściowy zwrot;
  • anulowanie przed kompletacją oraz próbę anulowania po nadaniu;
  • timeout ERP, ponowienie komunikatu i ponowne dostarczenie tego samego zdarzenia.

Kryteria akceptacji powinny określać wynik dla danych i procesu. Przykładowo ERP zawiera te same pozycje i sumy co sklep, zamówienie ma jeden powiązany rekord, błędne SKU trafia do kolejki wyjątków, a ponowienie nie tworzy duplikatu. Firma powinna określić własny dopuszczalny czas synchronizacji i maksymalny czas reakcji operatora.

Przed startem porównajcie kontrolną próbkę zamówień w obu systemach. Protokół odbioru powinien wskazywać zaliczone przypadki, błędy, właściciela poprawki i wynik ponownego testu.

Jak monitorować działanie po wdrożeniu?

Monitoring powinien pokazywać liczbę zamówień oczekujących, błędy według typu i czas od złożenia zamówienia do zapisu w ERP. Progi alarmowe ustalcie z zespołami sprzedaży i magazynu, uwzględniając dopuszczalne opóźnienie oraz godziny pracy.

W panelu operacyjnym lub dashboardzie śledźcie liczbę zamówień oczekujących, błędów walidacji, błędów chwilowych i rekordów bez powiązanego identyfikatora. Mierzcie także czas synchronizacji i liczbę spraw wymagających ręcznej obsługi.

Uzgadniajcie okresowo identyfikatory, sumy i statusy za wybrany przedział czasu. Różnice zapisujcie w raporcie wyjątków, który wskazuje, czy operator ma wznowić komunikat, skorygować dane czy uzgodnić dokument z księgowością.

Jeśli zamówienia trafiają do ERP przez kilka kanałów i potrzebujecie wykonawcy, wdrożenie integracji z BaseLinkerem może objąć konfigurację przepływu zamówień i reguł obsługi wyjątków. Zakres prac warto uzgodnić na podstawie źródeł zamówień, mapowania statusów i procedury ponowień. Dodatkowe podejście do integracji sklepu z ERP opisuje przewodnik po połączeniu WooCommerce z ERP.

Więcej poradników w tym temacie

Wspomniane narzędzia

WooCommerceWooCommerce REST APIERPBaseLinker

Najczęściej zadawane pytania

Jak działa synchronizacja zamówień między sklepem a ERP?
Sklep przekazuje dane zamówienia przez API, webhook, kolejkę lub proces cykliczny, a ERP tworzy uzgodniony rekord. ERP może następnie odesłać numer dokumentu, etap realizacji i informacje o wysyłce.
Czy status zamówienia w ERP może automatycznie aktualizować sklep?
Tak, jeśli integracja mapuje zdarzenia ERP na dozwolone statusy sklepu. Reguły powinny blokować cofnięcie procesu i zapobiegać powtórnym powiadomieniom.
Co zrobić, gdy zamówienie nie przeszło z WooCommerce do ERP?
Sprawdź log webhooka w WooCommerce > Status > Logi lub log procesu integracyjnego, a następnie odczytaj odpowiedź odbiornika. Popraw błąd walidacji albo ponów komunikat po potwierdzeniu, że ERP nie utworzył już dokumentu.
Jak uniknąć duplikatów zamówień podczas ponawiania synchronizacji?
Użyj niezmiennego identyfikatora zamówienia jako klucza idempotencji albo sprawdź, czy ERP ma już rekord z tym kluczem przed utworzeniem kolejnego. Zapisz identyfikator ERP przy zamówieniu sklepowym.
Czy integracja ERP ze sklepem powinna działać w czasie rzeczywistym?
Tylko jeśli proces wymaga natychmiastowej odpowiedzi, na przykład potwierdzenia dostępności lub rezerwacji. Przy tolerowanym opóźnieniu kolejka albo synchronizacja cykliczna może ograniczyć zależność sklepu od dostępności ERP.
Jak obsłużyć częściowy zwrot zamówienia w synchronizacji?
Przekazuj zwrócone pozycje, ilości i kwoty jako osobne dane zwrotu. Nie zmieniaj całego zamówienia na zwrócone, jeśli pozostałe pozycje nadal są realizowane.
#synchronizacja zamówień#ERP#integracja sklepu z ERP#WooCommerce#status zamówienia#API#webhook#obsługa błędów#integracje e-commerce
Zdjęcie autora: Krzysztof Czapnik
O autorze

Krzysztof Czapnik

Founder & Technical Lead, KC Mobile

Projektuję i rozwijam strony WordPress, sklepy WooCommerce oraz aplikacje internetowe. Łączę projektowanie z programowaniem, integracjami i technicznym SEO. Projekty KC Mobile prowadzę osobiście.

Potrzebujesz pomocy z tym tematem? Napisz - odpowiem osobiście w 24h.

Potrzebujesz pomocy w tym temacie?

Czytasz poradnik „Jak zaprojektować przenoszenie i aktualizację zamówień między ERP a sklepem”. Napisz, co chcesz zrobić i na jakim etapie jesteś. Ustalimy, czy możemy pomóc i jaki zakres prac będzie potrzebny.