PrestaShop – integracja z kurierami #1

PrestaShop – integracja z kurierami #1

Dla jednego z naszych klientów, korzystającego ze sklepu internetowego PrestaShop, potrzebne było rozwiązanie ułatwiające na przygotowanie listów przewozowych dla różnych kurierów a docelowo także Poczty Polskiej (Elektroniczny Nadawca). Klient nie chciał się bawić w kilka wtyczek z których musiałby korzystać, tylko chciał mieć wszystko w jednym narzędziu.

AS IS -> TO BE

Podstawowym wymaganiem było oczywiście dopasowanie do istniejącego procesu w firmie (opartego na PrestaShop).

Proces przygotowania przesyłek:

  1. Operator z zespołu sprzedaży wyznacza zamówienia do realizacji, drukuje dokumenty (fakturę / paragon) i list przewozowy dla kuriera. Po wydrukowaniu przekazuje wydruki do magazynu.
  2. Operator z magazynu przygotowuje przesyłki dla tych zamówień.
  3. Po przygotowaniu przesyłki operator z zespołu sprzedaży powiadamia zamawiającego (przez mechanizmy PrestaShop) o przygotowaniu przesyłki.

Klient chciał się głównie pozbyć problemów powstających przy takim podejściu:

  1. Niepotrzebne drukowanie dokumentów końcowych.
  2. Ze względu na różne lokalizacje do magazynu trafiały informacje “pakietowo”.
  3. Przygotowanie listów przewozowych przez zespół sprzedaży nie zawsze było odpowiednie (nieprawidłowe wymiary, błędy przy oznaczaniu przesyłek niestandardowych, nieprawidłowe wystawianie listów wielopaczkowych).
  4. Przy ponownym przygotowaniu listu (błędnie podane wymiary) konieczna była aktualizacja danych zamówienia (numeru śledzenia).
  5. Przy złożonych zamówieniach konieczne było przygotowanie listów przewozowych w systemach przewoźników (aby mieć dostęp do wszystkich usług).

Docelowo proces miał być trochę uproszczony:

  1. Zespół sprzedaży wyznacza zamówienia do realizacji ustawiając zlecenie na specjalnie wyznaczony status w PrestaShop.
  2. Zespół z magazynu wyszukuje zamówienia do realizacji, kompletuje te zamówienia, pakuje je i dopiero na samym końcu przygotowuje do nich listy przewozowe.
  3. Po przygotowaniu przesyłki zamówienie otrzymuje specjalny status w PrestaShop.
  4. Zespół sprzedaży monitoruje zlecenia w poszukiwaniu przygotowanych przesyłek i wysyła zamawiającemu informację zawierającą numer listu przewozowego od kuriera oraz dokument końcowy.

PrestaShop – przygotowanie

W samej Preście, nie było wiele do konfiguracji. Dodane zostały trzy statusy:

  • Przesyłka do przygotowania – na ten status przełączać będzie zespół sprzedaży
  • Przesyłka przygotowana – na ten status przełączać będzie automatycznie PP Etykieta po prawidłowym przygotowaniu listu przewozowego dla kuriera
  • Błąd przygotowania przesyłki – na ten status będzie ustawiane zlecenie w przypadku problemów z przygotowaniem listu (np. błędny adresowe)

Statusy były wyłącznie wewnętrzne i nie były uruchamiane po nich żadne akcje (typu: wysłanie powiadomienia etc.).

Aby uprościć diagnostykę ewentualnych problemów z danymi przekazywanymi do kuriera, postanowiono po stronie bazy PrestaShop przygotować widok (view) pobierający wszystkie niezbędne dane.

W kolejnych etapach przygotowana ma zostać również procedura po stronie bazy Presty, odpowiadająca za wszelkie manipulacje na bazie – aby uniknąć wpisywania całych SQLi przy konfiguracji PP Etykiety.

Dodatkowo przygotowana została tabela do której trafiać będą informacje o przygotowanych listach przewozowych oraz problemach z ich przygotowaniem – klient we własnym zakresie przygotowywać będzie moduł do panelu administracyjnego PrestyShop, który będzie pozwalał na podgląd tych danych z poziomu zamówienia.

PrestaShop - lista statusów przygotowania przesyłkiPrestaShop - widok na bazie z danymi do listuPrestaShop - dodatkowa tabela logowania działań PP Etykiety

PP Etykieta – integracja z PrestaShop

Do implementacji wymagań klienta wybrane zostały dwa rozwiązania:

  • ProstaPaczka – jako baza odpowiedzialna za komunikację z kurierami, przechowywanie danych o listach przewozowych, przygotowanie manifestów i aktualizację statusów przesyłki.
  • PP Etykieta – pomagająca w pobraniu danych z PrestarShop, przetłumaczeniu ich na list przewozowy i do przekazania danych o przygotowanym liście spowrotem do PrestyShop.

ProstaPaczka – instalacja

Podstawową czynnością było zainstalowanie na stacjach magazynowych systemu ProstaPaczka i skonfigurowanie jej do pracy wielostanowiskowej (aby na każdym stanowisku był dostęp do tych samych danych). W ramach ProstejPaczki zostały wprowadzone konta dostępowe do API kurierów dla których przygotowywaliśmy integrację.

PP Etykieta – konfiguracja do pracy z PrestaShop

Prace zostały rozpoczęte od konfiguracji połączenia do bazy PrestaShop w programie PP Etykieta.
Kolejnymi krokami konfiguracyjnymi było wprowadzenie zapytań pozwalających na wyświetlanie danych o zamówieniach na magazynie. Aby ułatwić pracę magazynierom wyświetlane były tylko zamówienia ze statusem “Przesyłka do przygotowania”, dzięki czemu po przygotowaniu rekord znikał, a magazynierzy widzieli tylko to co muszą jeszcze przygotować.

Następnym krokiem było przygotowanie kwerend modyfikujących stan zamówienia. PP Etykieta pozwala na przygotowanie odrębnych zapytań dla ścieżki pozytywnej (przygotowano i wydrukowano list przewozowy) oraz negatywnej (błąd przy przygotowaniu listów). Dzięki temu zostały przygotowane dwa odrębne zestawy:

Ścieżka pozytywna: dodanie do historii zamówienia statusu “Przesyłka przygotowana” -> ustawienie aktualnego statusu zamówienia na “Przesyłka przygotowana” -> dodanie numeru listu przewozowego do zamówienia -> zapisanie danych do logu.
Ścieżka negatywna: zapisanie danych do logu (status zamówienia miał być ustawiany ręcznie przez operatora).

PP Etykieta - pobieranie zamówień z PrestaShopPP Etykieta - zapis danych do PrestaShop

Finał – co uzyskano?

Rewolucji tym rozwiązaniem nie zrobiliśmy, ale praca na pewno stała się spokojniejsza, bardziej płynna i zmniejszona została ilość pracy generowanej przez nieprawidłowo wystawiane etykiety.

Jak wygląda teraz dzień pracy?

PP Etykieta - widok zamówień z PrestaShop

  1. Zespół sprzedaży na bieżąco weryfikuje zamówienia i przekazuje je do realizacji (przestawiając status)
  2. Magazynierzy z poziomu PP Etykiety monitorują zamówienia posiadające odpowiedni status (przykład na zdjęciu obok)
  3. Magazynierzy dla każdego z zamówień przygotowują list przewozowy dla odpowiedniego kuriera – wybierając zamówienie z listy i klikając myszą.
  4. W razie przesyłki niestandardowej magazynier wywołuje formularz przygotowania listu dla konkretnego kuriera i edytuje parametry przesyłki.
  5. Po przygotowaniu etykiety (jako zakończenie procesu) magazynier przystępuje do pakowania kolejnego zamówienia (informacja o przygotowaniu trafiła do PrestyShop automatycznie).
  6. Zespół sprzedaży na koniec dnia filtruje zamówienia w Preście ze statusem świadczącym o przygotowaniu przesyłek i zmienia zbiorczo status wysyłając powiadomienia do zamawiających.
  7. Magazynierzy przed przyjazdem kuriera generują protokół przekazania przesyłek kurierowi (w programie ProstaPaczka).

Jak na razie wszyscy są szczęśliwi 🙂