Magento 2 to jedna z najpopularniejszych platform eCommerce na rynku międzynarodowym. Pozwala ona m.in. tworzyć różne wersje językowe jednego sklepu z uwzględnieniem odrębnych konfiguracji. Intuicyjny panel administracyjny ułatwia zarządzanie poszczególnymi domenami i pomaga dostosować waluty, metody płatności oraz dostawy do wariantów językowych.
Aby pobrać wtyczkę z Marketplace, kliknij tutaj.
Spis treści
- Podstawowe informacje
- Zakres Integracji
- Instalacja
- Konfiguracja
a) Logowanie
b) Ustawienia konta
c) Ustawienia Magento 2
d) Eksport danych - Opis techniczny
a) Baza danych
b) Hooki
c) Kod monitorujący
1. Podstawowe informacje
W tym artykule znajdziesz szczegółowe informacje na temat integracji systemu SALESmanago z Magento 2. Wtyczka jest stale udoskonalana i dostępna za darmo dla naszych klientów.
Integracja umożliwi ci przesyłanie pomiędzy platformami istotnych danych o kontaktach oraz transakcjach. Informacje te możesz wykorzystać do zautomatyzowania działań marketingowych i tym samym zwiększenia sprzedaży w swoim sklepie.
2. Zakres integracji
Podstawowy zakres integracji obejmuje:
- przesyłanie zdarzeń zewnętrznych CART i PURCHASE zarówno dla kontaktów zalogowanych, jak i niezalogowanych, ale posiadających utworzone wcześniej ciasteczko smclient,
- eksport danych archiwalnych dotyczących klientów i zamówień,
- automatyczne dodawanie Kodu Monitorującego na stronę,
- możliwość ustawienia tagów, jakie mają być przypisywane kontaktom przesyłanym do systemu przy rejestracji, logowaniu, zapisie na newsletter oraz po dokonaniu zakupu,
- możliwość automatycznego dodawania podstawowych funkcjonalności, takich jak Live Chat, Pop-up Basic, Web Push,
- dodawanie parametru monitorującego do kontaktów zapisujących się przez formularz,
- przesyłanie kontaktów wraz z ich danymi oraz tagami przypisanymi w sklepie,
- aktualizację statusu opt-in w SALESmanago i opcjonalnie z SALESmanago.
2. Instalacja
Podobnie jak w przypadku innych modułów dostępnych dla Magento 2, instalacja wtyczki SALESmanago wymaga wiedzy technicznej, dlatego powinna zostać przeprowadzona przez dewelopera. Wynika to ze specyfiki tej platformy.
Jeśli masz zainstalowany moduł, przejdź do sekcji „Konfiguracja”.
Przed rozpoczęciem dodaj moduł do swojego konta w Marketplace Magento >>
[1] Edition – wybierz edycję zgodną z wersją twojego sklepu Magento. Do wyboru masz:
- Open Source (CE),
- Commerce on-premise (EE),
- Commerce on Cloud (ECE).
[2] Your store version – wybierz wersję twojego sklepu: 2.3 lub 2.4.
[3] Add to Cart – dodaj do koszyka i sfinalizuj zamówienie.
Aby przeprowadzić integrację, włącz konsolę i z poziomu katalogu głównego Magento 2 zainstaluj moduł, wpisując jedno z poniższych poleceń:
-
composer require salesmanago/integration:x.x.x
– dla środowiska deweloperskiego,
-
composer require salesmanago/integration:x.x.x --no-dev
– dla środowiska produkcyjnego.
WAŻNE: W miejscu „x.x.x” wpisz wersję wtyczki, której chcesz użyć.
Sprawdź najnowszą wersję wtyczki >>
Następnie dodaj moduł do platformy, wpisując odpowiednio:
php bin/magento setup:upgrade; php bin/magento setup:di:compile; php bin/magento setup:static-content:deploy; php bin/magento cache:flush;
Instalacja modułu dla Magento w wersji poniżej 2.3
Jeżeli posiadasz wersję sklepu starszą niż Magento 2.3, możesz skorzystać z alternatywnego sposobu instalacji wtyczki dzięki repozytorium modułów Packagist.
Odwiedź stronę wtyczki SALESmanago w serwisie Packagist >>
Aby przeprowadzić integrację, włącz konsolę i z poziomu katalogu głównego Magento 2 zainstaluj moduł, wpisując jedno z poniższych poleceń:
-
composer require benhauer/salesmanago-integration:x.x.x
– dla środowiska deweloperskiego,
-
composer require benhauer/salesmanago-integration:x.x.x --no-dev
– dla środowiska produkcyjnego.
WAŻNE: W miejscu „x.x.x” wpisz wersję wtyczki, której chcesz użyć.
Sprawdź najnowszą wersję wtyczki >>
Następnie dodaj moduł do platformy, wpisując odpowiednio:
php bin/magento setup:upgrade;
php bin/magento setup:di:compile;
php bin/magento setup:static-content:deploy;
php bin/magento cache:flush;
4. Konfiguracja
A. Logowanie
Po zainstalowaniu wtyczki i przejściu do panelu administracyjnego Magento 2 zobaczysz ekran logowania. W odpowiednich polach [1] podaj dane, z których korzystasz podczas logowania do SALESmanago. Jeżeli twoje konto SALESmanago znajduje się na innym (customowym) endpoincie, możesz go zmienić, klikając przycisk Use custom endpoint [2], a następnie wpisując odpowiedni adres w dodatkowym polu tekstowym.
Czasami podczas logowania mogą wystąpić drobne trudności. Możliwe przyczyny to:
- niepoprawne dane logowania – aby rozwiązać ten problem, sprawdź poprawność danych, logując się nimi do panelu administracyjnego SALESmanago;
- dwustopniowa weryfikacja (2FA) – jeśli korzystasz z tej metody logowania, skontaktuj się z działem Customer Success, aby uzyskać więcej informacji;
- niepoprawny endpoint – jeśli twoje konto SALESmanago znajduje się na innym (customowym) endpoincie, skorzystaj z opcji Zmień endpoint.
[3] Scope – na rozwijanej liście znajdziesz widoki strony, którymi możesz zarządzać w obrębie panelu administracyjnego Magento 2. Wtyczka SALESmanago pozwala zmieniać ustawienia dla wszystkich sklepów jednocześnie lub tylko dla wybranych.
[A] All Store Views – wybierz, jeśli chcesz przejść do widoku wszystkich sklepów jednocześnie.
[B] Main Website Store – wybierz, jeśli chcesz przejść do widoku wybranego sklepu. Ich nazwy będą się różnić w zależności od języka witryny lub jej domeny, np. „example.com” i „example.net”.
[4] Korzystając z ikony SALESmanago na dole bocznego menu, przejdziesz do panelu konfiguracyjnego wtyczki.
[A] W tym miejscu znajdziesz informacje na temat wersji wtyczki, z której korzystasz, Client ID oraz adresu URL endpointu przypisanego do zalogowanego konta SALESmanago.
[B] Logout – kliknij, aby wylogować się z używanego konta SALESmanago. Po wylogowaniu dojdzie do wyłączenia Kodu Monitorującego i zatrzymania automatycznego transferu kontaktów oraz zdarzeń.
[C] Plugin configuration – kliknij, aby przejść do konfiguracji wtyczki.
Przełącznik Scope na ekranie konfiguracji odpowiada za przejście pomiędzy konfiguracjami poszczególnych widoków strony. Default Config to konfiguracja wszystkich sklepów.
WAŻNE: Jeśli chcesz zmienić ustawienia tylko jednego sklepu, zaloguj się na wtyczkę, wybierając widok wszystkich sklepów [A]. Następnie z rozwijanej listy wybierz sklep, który ma mieć inną konfigurację, i zaloguj się ponownie.
B. Ustawienia konta
[1] Client ID – to identyfikator twojego konta SALESmanago. Po zalogowaniu do systemu znajdziesz go w Menu → Integracje → Centrum Integracji → API → zakładka API v2. Ta wartość jest dodawana automatycznie, więc nie musisz jej edytować.
[2] Endpoint – wskazuje lokalizację twojego konta SALESmanago. Ta wartość jest dodawana automatycznie, więc nie musisz jej edytować.
[3] Contact owner email – na rozwijanej liście znajdziesz dostępne w SALESmanago adresy e-mail, które mają nadaną rolę ownera, czyli właściciela kontaktów. Wybierz adres e-mail, do którego będą przypisywane nowe kontakty przesyłane z twojego sklepu.
[4] Click here to update owners list – jeśli na liście rozwijanej nie ma adresu e-mail, którego szukasz, kliknij przycisk odświeżenia. Spowoduje to pobranie aktualnej listy właścicieli kontaktów z SALESmanago.
[5] Synchronize contact statuses – wybierz „Yes”, jeśli chcesz aktywować synchronizację wsteczną. Dzięki temu system będzie sprawdzał, czy kontakt rejestrujący się w sklepie znajduje się już w twojej bazie SALESmanago. Ponadto kontakty ze statusem opt-in w systemie SALESmanago zostaną dodane do grupy subskrybentów w Magento 2.
[6] Double Opt-in – wybierz „Yes”, jeśli chcesz włączyć Double Opt-in. To mechanizm, który pozwoli ci uzyskać potwierdzenie subskrypcji od twoich kontaktów. W takim przypadku użytkownik musi potwierdzić zgodę na otrzymywanie treści marketingowych, klikając w link wysłany w osobnej wiadomości po zapisaniu się na newsletter. Działanie to jest zgodne z najlepszymi praktykami marketingu opartego na zgodzie, a przy okazji poprawia wskaźniki dostarczalności, otwieralności i konwersji przy wysyłce wiadomości e-mail.
Domyślnie e-mail potwierdzający zapis do newslettera zostanie wysłany w wersji językowej dostosowanej do przeglądarki odbiorcy. W przypadku skonfigurowanej wysyłki e-maili z potwierdzeniem subskrypcji w SALESmanago powyższe pola możesz pozostawić puste, aby dane pobrały się bezpośrednio z systemu. Jeśli chcesz wybrać konkretny szablon, uzupełnij wszystkie 3 pola [A, B. C].
[A] Template ID – do wysyłki potwierdzenia wykorzystaj szablon przygotowany w systemie SALESmanago.
[B] Email ID – wskaż konto e-mail znajdujące się w systemie SALESmanago, z którego zostanie wysłana wiadomość potwierdzająca zapis na newsletter.
[C] Email subject – wpisz temat wiadomości potwierdzającej zapis na newsletter.
Czytaj więcej o aktywacji Double Opt-in na platformach eCommerce >>
C. Ustawienia Magento 2
Aby przejść do ustawień platformy, wybierz Magento 2 Settings na ekranie konfiguracyjnym wtyczki.
[1] Callbacks – pozwalają na synchronizację statusu opt-in [A] i opt-out [B] z SALESmanago do Magento 2, na przykład w sytuacji gdy:
- kontakt zapisze się na newsletter poprzez formularz umieszczony w widgecie Lead Generation,
- kontakt wypisze się z newslettera poprzez link w stopce wiadomości e-mail,
- status kontaktu zostanie zmieniony ręcznie lub przy innej integracji.
URL-e callbacków należy skopiować i wkleić w odpowiednie pola w ustawieniach systemowych SALESmanago (Menu → Integracje → Centrum Integracji → Callbacki).
Czytaj więcej o ustawieniach callbacków >>
[2] Tags – w wybranych kategoriach ustaw tagi, które będą przypisywane kontaktom przesyłanym do SALESmanago.
[A] Purchase tag – te tagi będą przypisywane do kontaktu po dokonaniu zakupu.
[B] Subscription tag – te tagi będą przypisywane do kontaktu po zapisaniu się na newsletter w twoim sklepie Magento.
[C] Guest purchase tag – te tagi będą przypisywane do kontaktu po dokonaniu zakupu jako gość.
[D] Registration tag – te tagi będą przypisywane do kontaktu po zarejestrowaniu się w sklepie jako klienci (customers).
WAŻNE: Wszystkie tagi powinny być oddzielone od siebie przecinkami, bez użycia spacji (np. MAGENTO2_NEWSLETTER,MAGENTO2_SUBSCRIPTION).
[3] Contacts – ustawienia związane z kontaktami.
[A] Email domains to ignore – jeśli chcesz, aby dla pewnych domen (adresów e-mail) nie wysyłały się kontakty do SALESmanago, podaj je w tym polu. W szczególności możesz tu podać domeny maili tymczasowych oraz maili pośrednich, takich jak allegromail.com.
WAŻNE: Domeny oddzielaj przecinkami, bez użycia spacji (np. example.com, allegromail.com).
[4] Events – ustaw opcje związane z produktami i zdarzeniami zewnętrznymi.
[A] Location/SALESmanago Store ID – to identyfikator feedu produktowego. Pozwala dopasować zamówienia i transakcje z twojego sklepu Magento 2 do feedu produktowego dodanego w SALESmanago. Wartość tego pola powinna zgadzać się z wartością pola location, skonfigurowanym w feedzie produktowym (Menu → Integracje → Centrum Integracji → Katalogi i Feedy Produktowe). Zedytuj dowolne z pól, tak aby oba miały jednakową wartość. Dzięki temu wykorzystasz dane, aby wyświetlać produkty w ramkach rekomendacji, newsletterach i powiadomieniach Web Push.
[B] Product type ID – zdefiniuj, w jakiej postaci będzie przesyłany identyfikator produktów w zdarzeniach zewnętrznych CART i PURCHASE. Możesz wybrać:
- ID – oznaczenie produktów stworzone w obrębie twojego sklepu,
- SKU – oznaczenie produktów stosowane w handlu.
[C] Event cookie lifetime – z rozwijanej listy wybierz czas (podawany w godzinach), po którym zdarzenie CART (koszyk) nie będzie już dłużej aktualizowane, a kolejne akcje klienta utworzą nowe zdarzenie CART. W wielu przypadkach klienci twojego sklepu dodają i usuwają produkty z koszyka. Dzięki tej opcji zdecydujesz, po jakim czasie takie zmiany stworzą nowe zdarzenie CART. Dostępne opcje to:
- 3,
- 12,
- 24,
- 48,
- 72,
- 100,
- 200,
- 300,
- 400,
- 500.
PRZYKŁAD: Jeśli wybierzesz „72”, to zdarzenia koszyka będą aktualizowały się przez 3 dni, a późniejsze zmiany w koszyku utworzą w SALESmanago nowe zdarzenie.
[5] Cart – dodatkowe ustawienia związane z koszykiem.
[A] After cart recovery redirect to – wskaż miejsce, do którego zostanie przekierowany użytkownik sklepu po odtworzeniu koszyka poprzez wysłany w wiadomości e-mail link. Dostępne opcje:
- Purchase summary page – przekierowuje do strony z podsumowaniem zakupu,
- Cart page – przekierowuje do strony koszyka.
[6] Purchases – skonfiguruj ustawienia związane z przetwarzaniem zdarzeń zewnętrznych typu PURCHASE.
[A] Purchase events processing type – wskaż moment wysyłania (hook) do systemu SALESmanago zdarzenia PURCHASE. Hooki to mechanizm stosowany na wielu platformach eCommerce, pozwalający na uruchomienie akcji w ściśle określonym momencie. Aby zapewnić poprawne działanie z różnymi mechanizmami płatności oraz sposobami realizacji zamówień, nasza wtyczka umożliwia wybór hooka, który odpowiada za zdarzenie zakupu.
- Default – opcja domyślna, która wyśle zdarzenie do systemu na samym początku walidacji zamówienia,
- System event – opcja, która pozwala samodzielnie wybrać z listy system events [B] hook odpowiedzialny za przesyłanie zdarzenia,
- After all system events – opcja, która wyśle zdarzenie do systemu po sfinalizowaniu zamówienia.
[B] System events list – lista hooków pozwalających na przesłanie zdarzenia PURCHASE do SALESmanago.
Szczegółowe opisy hooków znajdziesz w dalszej części artykułu.
WAŻNE: Niektóre hooki działają tylko w określonych sytuacjach (np. wprowadzanie przez administratora sklepu zmian w fakturze zamówienia).
UWAGA: Ze względu na specyfikę Magento 2 domyślna konfiguracja może nie działać poprawnie, czyli nie dojdzie do wysłania zdarzeń do SALESmanago. W takim wypadku skorzystaj z opcji System event i wybierz hook ręcznie.
[7] Monitoring Code features – skonfiguruj ustawienia dotyczące Kodu Monitorującego.
[A] Disable Monitoring Code – ta opcja pozwala wyłączyć automatyczne dodawanie Kodu Monitorującego. Przydaje się, kiedy kolejność ładowania skryptów powoduje problemy techniczne lub monitorowanie kontaktów na wszystkich stronach jest niepożądane.
WAŻNE: Jeśli zdecydujesz się wyłączyć dodawanie Kodu Monitorującego, pamiętaj, aby dodać go ręcznie, np. w plikach szablonu.
[B] Custom JS – zaznacz „Yes”, jeżeli chcesz, aby do Kodu Monitorującego została dodana flaga _smcustom z wartością „true”, która pozwala dołączyć kod JavaScript z SALESmanago.
[C] Banners – zaznacz „Yes”, jeżeli chcesz, aby do Kodu Monitorującego została dodana flaga _smbanners z wartością „true”, która pozwala na używanie skryptu do banerów.
[8] Cookies features – ustaw opcję dotyczącą plików cookies.
[A] Cookies life time – określa czas życia (w dniach) ciasteczek SALESmanago (z wyjątkiem ciasteczka smevent). Domyślnie ustawienie to 3653 dni, czyli 10 lat. Wybierz liczbę z zakresu 1–8760.
D. Eksport danych
Od momentu zainstalowania wtyczki kontakty i zdarzenia będą automatycznie przesyłane do SALESmanago. Żeby wyeksportować dane sprzed instalacji modułu, przejdź do panelu konfiguracyjnego wtyczki (możesz kliknąć ikonę SALESmanago w bocznym menu), a następnie wybierz zakładkę Export Data.
Na tym ekranie ustawisz eksport kontaktów i zdarzeń z twojego sklepu Magento 2 do SALESmanago.
Zanim przystąpisz do eksportu, zwróć uwagę na trzy rzeczy:
- Eksport kontaktów może odbywać się wielokrotnie, czyli dane kontaktów będą aktualizowane w bazie SALESmanago przy każdym zleceniu transferu.
- Eksporty zdarzeń typu PURCHASE i zdarzeń Quotes jako zdarzenia typu CART powinny być poprzedzone eksportem kontaktów. Upewnij się, że twoje kontakty znajdują się w bazie SALESmanago, zanim zlecisz transfer zamówień.
- Eksport zdarzeń zewnętrznych powinien odbyć się tylko raz, w przeciwnym razie przesyłane do SALESmanago dane zduplikują się.
WAŻNE: Jeżeli wykonasz eksport z widoku wszystkich sklepów (Scope: All Store Views), to na używane w danej sesji konto SALESmanago trafią dane z każdego sklepu.
[1] Export contacts – kliknij, aby wyeksportować kontakty. Do tego rodzaju eksportu zaliczane są trzy grupy kontaktów:
- zarejestrowani użytkownicy, którzy posiadają konto w twoim sklepie (customers),
- użytkownicy, którzy dokonali zakupu jako gość (bez rejestracji),
- użytkownicy, którzy zapisali się do newslettera Magento (subskrybenci).
WAŻNE: Adresy e-mail mogą powielać się w obrębie tych trzech grup, np. gdy adres e-mail zarejestrowanego kontaktu zostanie użyty przed założeniem konta do zrobienia zakupów jako gość, a także do zapisania się na newsletter w Magento 2. Dane użytkowników należących do więcej niż jednej grupy zostaną złączone w SALESmanago.
[A] Start/end date – ustaw zakres dat, który będzie brany pod uwagę przy eksporcie. Możesz wykorzystać tę opcję zarówno do eksportu kontaktów, jak i zdarzeń.
[B] Export tag – w tym miejscu wpisz tagi, które będą przypisywane do kontaktów po eksporcie do SALESmanago. Tagi oddzielaj przecinkami bez spacji.
[2] Export event – kliknij, aby wyeksportować zdarzenia typu PURCHASE. Do tego rodzaju eksportu zaliczane są domyślnie zamówienia ze statusem Closed, Complete i Pending. Zakres poszczególnych statusów możesz zmienić za pomocą listy [C].
[C] Additional configuration for events export – ta opcja pozwoli ci ręcznie dokonać wyboru statusów zamówień wysyłanych do SALESmanago jako zdarzenia typu PURCHASE. Możesz wybrać statusy spośród tych dostępnych na liście lub wpisać własne nazwy, oddzielając je przecinkami bez spacji.
[3] Export Quotes as CART – kliknij, aby wyeksportować zdarzenia Quote jako zdarzenia typu CART. Dotyczą one wyłącznie użytkowników posiadających konto w twoim sklepie Magento.
5. Opis techniczny
A. Baza danych
Do przechowywania danych konfiguracyjnych wtyczki wykorzystywany jest ten sam mechanizm, którego używa platforma Magento 2. Poza przechowywaniem danych do konfiguracji, SALESmanago nie korzysta z bazy danych Magento 2.
B. Hooki
Wtyczka SALESmanago wykorzystuje hooki z systemu Magento 2:
- customer_login – uruchamia się podczas logowania kontaktu. Pozwala przesłać dane kontaktu do SALESmanago,
- customer_register_success – uruchamia się podczas rejestracji. Pozwala przesłać dane kontaktu do SALESmanago,
- customer_account_edited – uruchamia się podczas edycji danych z poziomu panelu klienta. Pozwala przesłać dane kontaktu do SALESmanago,
- newsletter_subscriber_save_after – uruchamia się podczas subskrybcji do newslettera (zazwyczaj przy zapisie za pomocą linka ze stopki lub po zaznaczeniu checkboxa w formularzu rejestracji). Pozwala przesłać dane kontaktu oraz status opt-in do SALESmanago,
- customer_address_save_commit_after – uruchamia się podczas edycji danych z poziomu panelu klienta (zakładka z adresami). Pozwala przesłać dane kontaktu (adres e-mail) do SALESmanago,
- customer_address_save_after – uruchamia się podczas edycji danych z poziomu panelu klienta (zakładka z adresami). Pozwala przesłać dane kontaktu (adres pocztowy) do SALESmanago,
- checkout_cart_save_after – uruchamia się podczas zapisu koszyka. Pozwala przesyłać i aktualizować zdarzenia typu CART do SALESmanago,
- adminhtml_customer_save_after – uruchamia się podczas zapisu danych klienta (tworzenie lub edycja konta) z poziomu panelu administracyjnego Magento 2,
- checkout_onepage_controller_success_action – uruchamia się podczas finalizacji zamówienia. Pozwala przesyłać zdarzenia typu PURCHASE do SALESmanago (to opcja „Default” z listy konfiguracji Purchases),
- multishipping_checkout_controller_success_action – uruchamia się podczas finalizacji zamówienia przy włączanej (i wybranej przez użytkownika) opcji multishipping, czyli wysyłania jednego zakupu na różne adresy pocztowe. Pozwala przesyłać zdarzenia typu PURCHASE do SALESmanago,
- checkout_submit_all_after – uruchamia się jako ostatni hook podczas finalizacji zamówienia. Pozwala przesyłać zdarzenia typu PURCHASE do SALESmanago (to opcja „After all system event” z listy konfiguracji Purchases).
Hooki przesyłające zdarzenia typu PURCHASE do wyboru:
- restore_quote,
- sales_convert_order_to_quote,
- sales_order_invoice_register,
- _set_sales_order,
- checkout_type_onepage_save_order_after,
- checkout_type_multishipping_create_orders_single – obsługiwany w przypadku włączonej, wybranej przez użytkownika opcji multishipping,
- paypal_express_place_order_success – uruchamia się przy wyborze opcji zapłaty za pomocą PayPala (wymaga integracji Magento 2 z PayPalem).
- sales_convert_quote_to_order – uruchamia się przy przekształceniu koszyka w zamówienie.
Hook modułu integracji SALESmanago:
- sm_pwa_cart_interceptor – uruchamia się za pomocą graphQl (przy rozwiązaniu wykorzystującym Progressive Web App) podczas dodania produktu do koszyka lub modyfikacji koszyka.
Każdy hook przesyłający kontakt wykorzystuje ciasteczko smclient. Jest to niezbędne do poprawnego działania Kodu Monitorującego.
Wszystkie hooki przesyłające zdarzenie PURCHASE przesyłają również dane kontaktu. Hooki przesyłające zdarzenia CART nie przesyłają danych kontaktu.
C. Kod monitorujący
Kod Monitorujący jest dodawany do kodu źródłowego strony tylko w przypadku standardowej instalacji Magento 2. Przy rozwiązaniu wykorzystującym Progressive Web App kod powinien zostać dodany przez programistę klienta.