Najczęstsze pułapki integracji ERP z platformą B2B to duplikaty kontrahentów, niezgodne jednostki miary, rabaty liczone inaczej niż w ERP, stany magazynowe bez uwzględnienia rezerwacji oraz brak planu na chwilę, w której ERP przestaje odpowiadać. Żadna z nich nie wynika z „trudnego API”. Wszystkie biorą się z założeń, których nikt nie spisał przed startem. Poniżej zebraliśmy katalog takich pułapek – każdą z opisem, jak się objawia i jak jej zapobiec – niezależnie od tego, jaki system ERP stoi w Twojej firmie.
Dlaczego pułapki wychodzą dopiero na produkcji
Na etapie testów integracja zwykle działa: kilka produktów, kilku klientów testowych, proste ceny. Problemy pojawiają się, gdy do portalu wchodzą prawdziwi klienci z historią, wyjątkami i nawykami. ERP przez lata obrósł ustawieniami, o których wie jedna osoba w dziale handlowym, a portal ma je odtworzyć bez błędu. Dlatego najlepszą ochroną jest przegląd pułapek przed pisaniem kodu, a nie po pierwszej reklamacji.
Pułapka 1: duplikaty kontrahentów
Jak się objawia: ten sam klient istnieje w ERP dwa lub trzy razy (inna pisownia nazwy, osobna kartoteka dla oddziału, stary rekord po zmianie formy prawnej). Portal łączy konto z jednym z nich, a faktury i ceny indywidualne są przypisane do innego.
Jak zapobiec:
- przed startem zrób raport duplikatów po NIP i porządki w kartotece,
- ustal jednoznaczny klucz powiązania konta w portalu z kontrahentem w ERP (identyfikator z ERP, a nie nazwa),
- zdecyduj, jak odwzorować strukturę firma – oddziały – adresy dostaw,
- nowe firmy rejestrujące się w portalu zakładaj w ERP dopiero po akceptacji i sprawdzeniu, czy już nie istnieją.
Pułapka 2: jednostki miary i opakowania
Jak się objawia: w ERP towar jest w sztukach, klient zamawia w kartonach, a do ERP trafia liczba kartonów jako liczba sztuk. Albo odwrotnie – cena za metr pokazana jako cena za rolkę.
Jak zapobiec:
- jawnie zmapuj jednostkę podstawową i jednostki sprzedażowe z przelicznikami,
- pilnuj minimalnych ilości i wielokrotności opakowań zarówno w portalu, jak i przy przyjmowaniu zamówienia do ERP,
- pokazuj klientowi zawsze jednostkę obok ceny i ilości.
Pułapka 3: rabaty i ceny indywidualne
Jak się objawia: klient widzi w koszyku jedną kwotę, a na fakturze inną. Źródłem jest zwykle kombinacja poziomów cen, rabatów kontrahenta, rabatów na grupy towarów i promocji, którą portal odtwarza nieco inaczej niż ERP.
Jak zapobiec:
- zdecyduj, gdzie liczona jest cena: w ERP (i przesyłana jako gotowy cennik per klient) czy w portalu (według przeniesionych reguł),
- przygotuj próbkę klientów i towarów z oczekiwanymi cenami i porównaj wynik przed otwarciem portalu,
- zapisuj w zamówieniu cenę, jaką widział klient, żeby rozbieżność dało się wykazać i wyjaśnić.
Pułapka 4: stany bez rezerwacji
Jak się objawia: portal pokazuje stan fizyczny, a część towaru jest już zarezerwowana pod inne zamówienia. Dwóch klientów kupuje ten sam ostatni towar.
Jak zapobiec:
- przesyłaj do portalu stan dostępny, a nie fizyczny,
- ustal z magazynem, czy zamówienie z portalu ma rezerwować towar w ERP i od kiedy,
- rezerwuj ilość lokalnie w portalu do czasu potwierdzenia przez ERP,
- zdecyduj, co pokazujesz, gdy stanu brakuje: brak możliwości zakupu, termin dostawy czy zamówienie z brakiem.
Pułapka 5: awaria lub przerwa w ERP
Jak się objawia: serwer ERP jest wyłączony na czas aktualizacji albo przeciążony przy zamknięciu miesiąca. Portal próbuje wysłać zamówienie, dostaje błąd i… zamówienie znika albo klient widzi komunikat, którego nie rozumie.
Jak zapobiec:
- portal nie powinien zależeć od ERP w czasie rzeczywistym przy każdym kliknięciu – dane do przeglądania trzymaj w portalu, a zamówienia przekazuj przez kolejkę,
- zamówienie ma status „przyjęte, oczekuje na przekazanie”, a klient dostaje potwierdzenie przyjęcia,
- ustal, jak długa przerwa jest akceptowalna, zanim ktoś dostanie alert,
- zaplanuj okna serwisowe ERP i komunikat w portalu na ten czas.
Pułapka 6: statusy zamówień nie znaczą tego samego
Jak się objawia: w ERP zamówienie ma kilkanaście stanów wewnętrznych, a klient widzi „w realizacji” przez tydzień albo status, który nic mu nie mówi.
Jak zapobiec: zmapuj statusy ERP na kilka zrozumiałych dla klienta (przyjęte, w realizacji, wysłane, zrealizowane częściowo, zrealizowane, anulowane) i zdecyduj, które zdarzenia wysyłają powiadomienie.
Pułapka 7: edycja tych samych danych w dwóch miejscach
Jak się objawia: klient zmienia adres dostawy w portalu, handlowiec w tym samym czasie w ERP. Następna synchronizacja nadpisuje jedną ze zmian.
Jak zapobiec: dla każdego pola ustal jedno źródło prawdy. Tam, gdzie klient może coś zmienić, niech portal zgłasza propozycję zmiany, którą zatwierdza ERP albo osoba w dziale obsługi.
Pułapka 8: stawki VAT, waluty i dokumenty
Jak się objawia: zamówienie od kontrahenta z UE z ważnym numerem VAT, sprzedaż w euro, towar z nietypową stawką – i dokument w ERP powstaje z błędnymi parametrami.
Jak zapobiec: przejdź każdy taki przypadek na testowym zamówieniu przed startem i dopisz go do stałego zestawu testów po każdej zmianie w integracji.
Pułapka 9: brak widoczności tego, co się dzieje
Jak się objawia: „zamówienie nie doszło” i nikt nie wie, na którym etapie zniknęło.
Jak zapobiec: każda operacja integracji powinna mieć zapis z czasem, statusem, treścią błędu i możliwością ponowienia z panelu. Jak technicznie zbudować kolejki, ponowienia i monitoring, opisujemy w artykule o integracjach API w Laravel z ERP i B2B.
Pułapka 10: zmiany w ERP po uruchomieniu
Jak się objawia: po kilku miesiącach ktoś dodaje w ERP nowy magazyn, nową grupę cenową albo zmienia sposób numeracji dokumentów. Integracja nic o tym nie wie i zaczyna przesyłać niepełne dane.
Jak zapobiec: wpisz do procedur działu IT i handlowego zasadę, że zmiany w konfiguracji ERP dotyczące cen, magazynów, statusów i kontrahentów są zgłaszane zespołowi odpowiedzialnemu za integrację przed wdrożeniem, a nie po pierwszym błędzie.
Checklista przed startem
- Raport duplikatów kontrahentów wykonany, kartoteka uporządkowana.
- Klucz powiązania konta z kontrahentem ustalony.
- Jednostki i przeliczniki zmapowane dla wszystkich sprzedawanych towarów.
- Ceny porównane na próbce klientów i towarów.
- Zasady rezerwacji uzgodnione z magazynem.
- Zachowanie portalu przy niedostępności ERP przetestowane.
- Statusy zamówień zmapowane i opisane dla klienta.
- Źródło prawdy ustalone dla każdego edytowalnego pola.
- Przypadki VAT i walut przetestowane.
- Logi, alerty i ponowienia działają, a wiadomo, kto na nie reaguje.
Szerszy obraz tego, które dane płyną między systemami i w którą stronę, znajdziesz w tekście o mapie przepływów danych w B2B.
Od czego zacząć
Przejdź powyższą checklistę z osobą z działu handlowego i magazynu – zwykle już po godzinie widać, które punkty są ryzykowne w Twojej firmie. Jeśli planujesz połączenie portalu z ERP albo masz integrację, która sprawia problemy, zobacz, jak podchodzimy do integracji portali B2B z ERP, i napisz do nas – zaczniemy od przeglądu Twoich danych i obecnego przepływu zamówień.
Najczęstsze pytania
Dlaczego klient widzi w portalu inną cenę niż na fakturze?
Zwykle portal odtwarza kombinację poziomów cen, rabatów i promocji nieco inaczej niż ERP. Trzeba zdecydować, gdzie liczona jest cena, i przed startem porównać wyniki na próbce klientów i towarów.
Czy portal B2B powinien działać, gdy ERP jest niedostępny?
Tak. Dane do przeglądania powinny być przechowywane w portalu, a zamówienia przekazywane przez kolejkę. Klient dostaje potwierdzenie przyjęcia, a zamówienie trafia do ERP, gdy system wróci.
Jak uniknąć sprzedaży tego samego ostatniego towaru dwóm klientom?
Przesyłaj do portalu stan dostępny po rezerwacjach, uzgodnij z magazynem zasady rezerwacji zamówień z portalu i rezerwuj ilość lokalnie do czasu potwierdzenia przez ERP.
Jak przełożyć ten temat na projekt
W JiraSoft patrzymy na takie zagadnienia przez pryzmat realnego systemu: danych, backendu, integracji API, procesów B2B, widoczności w Google oraz przygotowania treści pod odpowiedzi AI. Dlatego artykuł jest punktem wyjścia do rozmowy o konkretnym workflow, a nie tylko ogólną notatką technologiczną.
