Przejdź do treści

Integracja / Symfony + Magento 2

Comarch XL i Magento 2: wymiana danych bez blokad bazy ERP

Firma modowa trzyma dane o magazynie, zamówieniach i dostawach w Comarch XL, a sprzedaje przez sklep na Magento 2. Między te systemy wstawiliśmy osobną szynę danych, która wymienia zamówienia, statusy, faktury, ceny i stany w obie strony. Sklep nie odpytuje ERP bezpośrednio, więc ruch klientów nie blokuje bazy Comarch XL.

Budowa szyny danych

Zero blokad
na bazie ERP
sklep nigdy nie odpytuje Comarch XL bezpośrednio

Punkt wyjścia

Odpytywanie ERP prosto ze sklepu było zbyt ryzykowne

Źródłem danych o magazynie, zamówieniach i dostawach jest Comarch XL, system o bardzo rozbudowanej strukturze tabel. Sklep na Magento 2 potrzebuje tych danych na bieżąco, ale połączenie go wprost z bazą ERP niosło dwa problemy. Kod sklepu musiałby znać wnętrze Comarch XL i zmieniać się razem z nim. Ruch klientów przekładałby się natomiast bezpośrednio na zapytania do bazy ERP, obciążałby ją i blokował na niej tabele, z których korzysta cała firma. Potrzebne było rozwiązanie, które połączy oba systemy i jednocześnie odgrodzi bazę ERP od sklepu.

Co zrobiliśmy

Osobna szyna danych, która bierze na siebie złożoność ERP

Zbudowaliśmy na Symfony szynę danych, przez którą przechodzi cała wymiana między sklepem a ERP. Tylko ona zna strukturę Comarch XL.

  1. 1

    Warstwa pośrednia między sklepem a ERP

    Szyna stoi pomiędzy Magento 2 a Comarch XL i bierze na siebie całą złożoność tabel ERP. Sklep rozmawia z nią przez REST API i nie musi wiedzieć, jak dane są zapisane w Comarch XL. Szyna odciąża też bazę ERP, bo ruch klientów sklepu nigdy nie trafia do niej bezpośrednio.

  2. 2

    Zamówienia ze sklepu do ERP

    Zamówienia złożone w Magento 2 płyną przez szynę do Comarch XL. Sklep nie zapisuje niczego w bazie ERP samodzielnie, przekazuje zamówienie szynie, a ta wie, jak zapisać je w strukturze Comarch XL. Kod sklepu pozostaje przez to niezależny od tego, jak zbudowane są tabele ERP.

  3. 3

    Statusy, wysyłki i faktury z powrotem do sklepu

    W drugą stronę szyna przesyła do Magento 2 statusy zamówień, dane wysyłek i faktury. Z faktur generujemy PDF-y, które trafiają do klientów. Klient widzi w sklepie aktualny stan swojego zamówienia, choć źródłem tych informacji pozostaje Comarch XL, a sklep dostaje je gotowe od szyny.

  4. 4

    Katalog z cenami i stanami tą samą drogą

    Tą samą szyną do sklepu trafia katalog z cenami i stanami magazynowymi. Dzięki temu cała wymiana danych między sklepem a ERP ma jedną drogę. Sklep pokazuje ceny i dostępność z Comarch XL, ale nie odpytuje go za każdym razem, gdy klient otwiera stronę produktu.

Efekt

Sklep ma dane z ERP, a baza ERP nie odczuwa ruchu

Magento 2 i Comarch XL wymieniają dane w obie strony: zamówienia płyną do ERP, a statusy, wysyłki, faktury, ceny i stany wracają do sklepu. Cała ta wymiana idzie przez szynę danych, więc sklep nigdy nie odpytuje Comarch XL bezpośrednio, a ruch klientów nie obciąża bazy ERP i nie blokuje jej tabel. Kod sklepu nie zależy od wnętrza ERP, bo strukturę Comarch XL zna tylko szyna.

  • Dwustronna wymiana zamówień, statusów i faktur
  • Faktury w PDF generowane dla klientów
  • Zero blokad na bazie Comarch XL

Połączymy twój sklep z ERP bez obciążania bazy

Integrujemy Magento 2 z Comarch XL i innymi systemami ERP przez warstwę, która chroni bazę przed ruchem ze sklepu. Opisz, jakie dane mają przepływać między systemami.