Spis treści
Instalacja
Aktywacja Subskrypcji
Ważne informacje
Do poprawnego działania wtyczki wymagane jest:
- Podpisanie umowy z DPD.
- Uzyskanie dostępu do DPD Services u opiekuna klienta DPD. Dane dostępowe do webklienta (DPD Online) nie zadziałają we wtyczce.
Wymagania techniczne
- Zainstalowane rozszerzenie SOAP na serwerze – na znacznej większości instalacji PHP na serwerach współdzielonych jest już ono domyślnie zainstalowane. Informacje na temat czy serwer posiada zainstalowane rozszerzenie SOAP znaleźć można w Statusie systemu WooCommerce →
- Instalacja bezpłatnej wtyczki Flexible Shipping jako integracji bazowej.
- Obecnie pełna kompatybilność z nowymi blokami koszyka WooCommerce nie została jeszcze zaimplementowana.
Konfiguracja
Konfiguracja wtyczki dostępna jest w menu: WooCommerce → Ustawienia → Wysyłka → DPD.
W ustawieniach można skonfigurować:
Logowanie
Login, Hasło i Nr. klienta – do DPD Services (należy uzyskać u opiekuna DPD).
Tryb testowy – włączenie/wyłączenie trybu testowego.
Dane dostępowe do trybu testowego:
Login dla trybu testowego: test
Hasło dla trybu testowego: thetu4Ee
Nr klienta dla trybu testowego: 1495
Status połączenia – w tym miejscu sprawdzisz, czy połączenie z API DPD zostało nawiązane prawidłowo po wprowadzeniu przez Ciebie wspomnianych wyżej Loginu, Hasła i Nr klienta.
Jeżeli napotkałeś/-aś na Błąd połączenia i informację zwrotną o nieprawidłowym Loginie, Haśle i/lub Nr klienta, bądź napotkasz na problemy w korzystaniu z integracji np. podczas generowania etykiet, dzięki Statusowi połączenia zweryfikujesz, czy za zaistniałe problemy nie jest np. odpowiedzialne zerwanie połączenia z API.
Tworzenie przesyłek i automatyzacja nadawania
Integracja z DPD umożliwia całkowicie automatyczne nadawanie przesyłek na podstawie statusu zamówienia lub ręczne nadawanie wielu przesyłek z listy zamówień WooCommerce.
Tworzenie przesyłek – domyślnie przesyłki możesz nadawać ręcznie na ekranie edycji zamówienia lub masowo na liście zamówień. Aby nadawać przesyłki automatycznie wybierz opcję Automatycznie i ustaw poniżej dodatkowe opcje:
Status zamówienia – jeśli wybrałeś automatyczny sposób generowania przesyłek wybierz po przyjęciu przez zamówienie jakiego statusu przesyłki zostaną wygenerowane.
Zrealizuj zamówienie – zaznaczając ten checkbox możesz ustawić, aby status zamówienia był automatycznie zmieniany na Zrealizowane po nadaniu przesyłki.
Etykiety
Format etykiety – wybierz format, w którym będzie generowana etykieta nadawcza DPD spośród dostępnych:
- PDF,
- ZPL,
- EPL.
Format strony etykiety – wybierz miejsce i/lub sposób rozmieszczenia etykiety na drukowanej stronie spośród dostępnych:
- A4 – jedna etykieta na stronę – etykieta na środku strony A4,
- A4 – wiele etykiet na stronę – etykieta zajmująca 1/4 strony A4. Umożliwia wydruk do 4 etykiet na jednym arkuszu A4. Wszystkie etykiety danego typu (krajowe/zagraniczne) będą mieściły się w jednym pliku. W przypadku wymieszania etykiet, wtyczka wygeneruje dwa pliki – jeden dla wysyłki krajowej oraz drugi dla wysyłki zagranicznej,
- Etykieciarka – format dostosowany do etykieciarek.
Jeżeli została wybrana opcja Format strony etykiety: Etykieciarka poniżej pojawi się dodatkowe ustawienie:
Typ etykiety – z pomocą tej opcji istnieje możliwość wyboru rozmiaru etykiety dla etykieciarek spośród dostępnych 15×10 cm (BIC3) oraz 17×10 cm (BIC3_EXT). Dla standarodowych drukarek domyślnie będzie to zawsze typ 15×10 cm (BIC3).
Drukowanie – jeśli posiadasz wtyczkę Drukowanie PrintNode WooCommerce, możesz w tym miejscu aktywować automatyczne drukowanie etykiet zaraz po ich wygenerowaniu lub zapisywanie ich na dysku.
Dane nadawcy
Włącz konfigurację dodatkowych adresów nadania – zaznaczenie tej opcji umożliwia zdefiniowanie kolejnych, poza domyślnym głównym, adresów nadania.
Adres nadawcy będzie możliwy do wyboru w metaboxie DPD na ekranie edycji szczegółów zamówienia i będzie wyświetlany jako podany Identyfikator (w przypadku kiedy nie jest on unikalny, zostanie wyświetlony tylko jeden z powielonych).
Opcje zaawansowane
Zapis zdarzeń – aktywacja tej opcji okazuje się przydatna podczas diagnozowania problemów, w celu rejestrowania wszystkich działań podejmowanych przez wtyczkę. Zdarzenia zapisywane są w logu WooCommerce (WooCommerce → Status → Logi).
Pamięć podręczna API – Domyślnie ta opcja powinna być włączona. Wyłączenie pamięci podręcznej API wiąże się z dezaktywacją cachowania pliku WSDL, który jest wykorzystywany w usługach webowych SOAP. Wyłączyć należy tylko w razie wystąpienia problemów z generowaniem etykiet wysyłkowych.
Cache punktów odbioru – domyślnie lista punktów odbioru aktualizowana jest raz dziennie na podstawie nawiązanego połączenia i pobranych danych bezpośrednio z API DPD. Jeżeli połączenie zostanie nawiązane pomyślnie, lista dostępnych punktów DPD Pickup zostanie zaktualizowana w tle. Jeżeli z jakiegoś powodu nie będzie to możliwe, zostanie użyta poprzednio zapisana lista, a kolejna próba aktualizacji odbędzie się po godzinie.
Wraz z wersją 2.8.0 wtyczki DPD została także dodana możliwość ręcznego wyczyszczenia pamięci cache z zapisaną listą punktów odbioru za pomocą przycisku
Wyczyść cache i odśwież listę punktów odbioru.
Opcja ta jest szczególnie przydatna w sytuacjach wymagających natychmiastowego odświeżenia/aktualizacji listy punktów odbioru lub np. w przypadku ogłoszenia przez firmę DPD zaplanowanej przerwy technicznej, podczas której nie będzie możliwy dostęp do API. Wyczyszczenie cache i odświeżenie listy punktów odbioru krótko przed rozpoczęciem przerwy technicznej poskutkuje wówczas zapisaniem listy punktów DPD Pickup do pamięci podręcznej i zapobiegnie problemom z wyborem punktu odbiorczego przez klienta w ramach składania zamówienia podczas trwania przerwy technicznej.
Metody wysyłki
Wtyczka DPD jest zintegrowana z Flexible Shipping. Integrację z DPD można dodać do każdej metody wysyłki utworzonej i obsługiwanej za pomocą wtyczki Flexible Shipping.
Integracja – wybierz DPD, aby włączyć integrację dla tej metody wysyłki.
Wymiary (Długość, Wysokość, Głębokość) – ustaw domyślne wymiary paczki.
Zawartość – dodatkowo możesz podać domyślną zawartość przesyłki.
Zadeklarowana wartość – zaznacz, aby do przesyłki dodawać zadeklarowaną wartość (wartość zamówienia).
Pobranie – przesyłka pobraniowa.
Doręczenie do punktu odbioru – zaznacz tę opcję jeżeli chcesz oferować swoim klientom dostawę zamówionych produktów do punktu DPD Pickup. W przypadku jej zaznaczenia na ekranie finalizacji zamówienia pojawi się dodatkowa rozwijalna lista z możliwością wyboru punktu odbioru:
oraz link Wybierz punkt na mapie poniżej, po użyciu którego zostanie wyświetlona mapa dostępnych punktów DPD Pickup:
a wskazany przez kupującego punkt dostawy zostanie zapisany do szczegółów zamówienia i będzie możliwy do przekazania m.in. od zewnętrznych integracji typu Baselinker.
Doręczenie w sobotę – zaznacz tę opcję jeżeli chcesz udostępnić swoim klientom możliwość doręczenia przesyłki w sobotę. Usługa realizowana jest zgodnie z tabelą dostępności usług DPD dostępną na stronie www.dpd.com.pl →
DPD Next Day – zaznacz ten checkbox, aby udostępnić swoim klientom dodatkową usługę doręczenia przesyłki krajowej DPD następnego dnia roboczego. Usługa realizowana jest zgodnie z tabelą dostępności usług DPD dostępną na stronie www.dpd.com.pl →
Współczynnik przeliczeniowy – wartość wagi gabarytowej używana przez firmę kurierską, za pomocą której wysyłasz produkty w swoim sklepie.
Waga gabarytowa – zwana także często wagą wolumetryczną określa objętość przesyłki, czyli w uproszczeniu zajmowaną przez nią przestrzeń “na pace” samochodu dostawczego firmy kurierskiej. Waga gabarytowa obliczana jest według wzoru:
(Długość x Szerokość x Wysokość) / Współczynnik przeliczeniowy = Waga gabarytowa
Nadawanie przesyłek
Nadawanie pojedynczych przesyłek
Po złożeniu zamówienia przez klienta i wyborze metody wysyłki z podpiętą integracją DPD do strony zamówienia zostanie dodany metabox DPD z opcjami przesyłki:
Po sprawdzeniu poprawności danych i ewentualnej ich modyfikacji można wykonać akcje:
Utwórz – tworzy przesyłkę w serwisie DPD, dane przesyłki będą niedostępne do edycji.
Zapisz – zapisuje dane przesyłki bez tworzenia przesyłki w serwisie DPD.
Po utworzeniu przesyłki w serwisie DPD za pomocą przycisku Utwórz część dostępnych wcześniej w boxie opcji zostanie wyszarzona:
W ich miejsce, z poziomu dolnej części metaboxa DPD dostępne będą:
Przesyłka – kliknięcie numeru przesyłki otworzy stronę do śledzenia przesyłek DPD. Link trackingowy umożliwiający śledzenie przesyłki jest również wysyłany w wiadomości do klienta na adres email podany podczas składania zamówienia.
Pobierz etykietę – pobiera etykietę przesyłki (w formacie wybranym w ustawieniach wtyczki).
Anuluj – anuluje (usunie) przesyłkę w sklepie. Dane przesyłki będą ponownie dostępne do edycji.
Dodatkowe paczki dla przesyłki
W edycji zamówienia WooCommerce możesz dodawać wiele paczek do jednej przesyłki, wszystkie zostaną nadane jako jedna przesyłka.
Aby dodać kolejne paczki w metaboxie DPD użyj przycisku Dodaj paczkę i poniżej ustaw jej parametry:
Nadawanie wielu przesyłek
Integracja z DPD umożliwia ręczne nadawanie wielu przesyłek z listy zamówień WooCommerce.
Aby nadać przesyłki dla wielu zamówień wybierz je na liście zamówień WooCommerce, a następnie z Masowe działania wybierz opcję Nadaj przesyłki i kliknij przycisk Zastosuj.
Więcej na temat zarządzania wysyłką na liście zamówień WooCommerce przeczytasz w instrukcji zarządzania wysyłką →
Automatyczne nadawanie przesyłek
Integracja z DPD umożliwia całkowicie automatyczne nadawanie przesyłek na podstawie statusu zamówienia.
Jak włączyć automatyczne nadawanie przesyłek przeczytasz w sekcji Tworzenie przesyłek – automatyzacja nadawania
Dodatkowe przesyłki DPD
Wtyczka WooCommerce DPD umożliwia dodawanie przesyłek do zamówień utworzonych ręcznie oraz do zamówień z aktywną inną integracją wysyłkową WP Desk.
W edycji zamówienia dostępny jest box Dodaj przesyłkę. Wybierz integrację DPD, a następnie kliknij Dodaj. Pojawi się nowy box DPD w którym będzie możliwe skonfigurowanie przesyłki DPD i jej nadanie.
Protokoły nadania
Po utworzeniu przesyłek (wygenerowaniu etykiet) możesz wygenerować i pobrać protokoły nadania DPD.
Przejdź do listy zamówień WooCommerce i wybierz zamówienia z wysyłką za pomocą DPD.
Z Masowe działania wybierz Utwórz protokół nadania. Protokół zostanie utworzony dla wszystkich przesyłek w statusie Zatwierdzona.
Utworzone protokoły znajdują się w menu WooCommerce → Protokoły nadania.
Zestawienie protokołów zawiera informację o: dacie utworzenia, integracji której dotyczy, nr. wewnętrznym protokołu, liczbie przesyłek które zawiera.
W kolumnie Akcje możesz pobrać lub anulować wygenerowany protokół aby utworzyć nowy dla tych samych przesyłek.
DPD Food
Wtyczka obsługuje zarówno przesyłki kurierskie jak i dostawę do punktów odbioru.
DPD Food to usługa umożliwiająca bezpieczny transport żywności w temperaturze od 0 do 4°C. Jeśli sprzedajesz żywność wymagającą specjalnych warunków przewozu z wykorzystaniem usługi DPD Food, skorzystaj z poniższej instrukcji.
Przesyłki DPD Food doręczane są w:
- Warszawie,
- Krakowie,
- Poznaniu,
- Łodzi,
- Trójmieście,
- Wrocławiu,
- Aglomeracji Śląskiej,
wraz z okolicznymi miejscowościami.
Konfiguracja wysyłki DPD Food wymaga zatem odpowiednich ustawień stref wysyłki WooCommerce.
Dodanie nowej strefy wysyłki DPD Food
Aby dodać nową strefę DPD Food kliknij przycisk Dodaj strefę wysyłki na górze ekranu, a następnie skonfiguruj ją:
Nazwa strefy – podaj nazwę strefy np. Polska.
Regiony stref – wybierz region Polska.
Region możesz ograniczyć do konkretnych kodów pocztowych. Kliknij przycisk Ogranicz do wybranych kodów pocztowych i wprowadź listę kodów pocztowych, do których będziesz wysyłał przesyłki DPD Food:
Na koniec nie zapomnij o kliknięciu przycisku Zapisz zmiany.
Pełną listę kodów pocztowych, obsługiwanych przez DPD Food znajdziesz pod tym adresem.
W ustawieniach wtyczki DPD, znajduje się numer klienta dla DPD Food, który należy uzupełnić w przypadku korzystania z usługi DPD Food(Numer ten może się różnić od podstawowego nr klienta, wpisanego wyżej w danych logowania):
W ustawieniach wtyczki DPD, znajduje się również pole do wpisania liczby dni przydatności do spożycia:
W metodzie wysyłkowej Flexible Shipping, należy zaznaczyć pole wyboru DPD Food, w przypadku korzystania z tej usługi:
Pole wyboru jest również widoczne w widoku zamówienia. Jeśli jest utworzona i aktywna metoda wysyłkowa Flexible Shipping z włączonym DPD Food, to pole wyboru będzie domyślnie zaznaczone:
Opcje dla zaawansowanych użytkowników
Poniżej prezentujemy możliwości modyfikacji wtyczki dla zaawansowanych użytkowników, którzy znają podstawy PHP, HTML i CSS.
Przesyłanie danych do zewnętrznych integracji wysyłkowych
Dane o utworzonych przesyłkach można pobierać i wysyłać do zewnętrznych systemów, w tym integracji wysyłkowych takich jak Baselinker czy ShipStation.
Pobieranie danych
Pobieranie danych z przesyłek możliwe jest przez REST API WooCommerce. Do danych zamówienia dołączane są dane przesyłek w polu fs_shiping_lines
.
Pole fs_shipping_lines
jest tablicą, która zawiera co najmniej jedną przesyłkę. Przy większej ilości przesyłek, będą one umieszczone w kolejności w jakiej zostały utworzone.
Dane dostępne dla zewnętrznych integracji wysyłkowych
Wtyczka umożliwia pobieranie następujących danych:
- rodzaj integracji
- sposób stworzenia wysyłki
- wymiary paczki
- waga paczki
- zadeklarowana wartość
- pobranie
- kwota pobrania
- zawartość paczki
- dodatkowe paczki
Przykładowe dane zwracane przez wtyczkę
"fs_shipping_lines": [
{
"_integration": "dpd",
"_shipping_id": "62",
"created_via": "checkout",
"_dpd_product": "classic",
"_dpd_package_width": "10",
"_dpd_package_height": "10",
"_dpd_package_depth": "10",
"_dpd_declared_value": "1",
"_dpd_declared_value_value": "13.53",
"_dpd_cod": "1",
"_dpd_cod_value": "13.53",
"_dpd_package_weight": "1",
"_dpd_package_content": "",
"_dpd_ref": "Zamówienie 141",
"_additional_packages": "a:0:{}"
}
],
Rozwiązywanie problemów
Problem z SSL i biblioteką SOAP
Z różnych przyczyn (najczęściej konfiguracja serwera) może zdarzyć się problem z SSL oraz biblioteką SOAP. Problem ten uniemożliwia komunikację z API DPD. Możesz napotkać w takim przypadku błąd tego typu:
PHP Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://dpdservices.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL' : failed to load external entity "https://dpdservices.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL" in /home/admin/domains/xyzabc.pl/public_html/wp-content/plugins/woocommerce-dpd/classes/class-dpd-api.php on line 58
Rozwiązaniem takiego problemu jest dodanie do pliku functions.php motywu Twojego sklepu następującego kodu:
add_filter( 'woocommerce_dpd_disable_ssl_verification', '__return_true' ); add_filter( 'woocommerce_dpd_disable_cache_wsdl', '__return_true' );
Zastosowane filtry wyłączają weryfikację SSL oraz cache WSDL (w bibliotece SOAP).