WP Desk Care - zadbaj o swój biznes online!

Sprawdzona opieka techniczna dla Twojego sklepu

DPD – WooCommerce

Instalacja

Instrukcja instalacji →

Aktywacja Subskrypcji

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.
Nadawanie przesyłek za pomocą wtyczki poprzez DPD Services jest usługą niezależną od DPD Online. Przesyłek nadanych za pomocą wtyczki nie zobaczysz w panelu klienta DPD Online. Przesyłki są dostępne z poziomu sklepu. Utworzone przesyłki można nadać bezpośrednio z poziomu WooCommerce i nie są one dostępne do edycji poza WooCommerce.

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.
  • Baza danych MySQL powinna mieć wartość ‘max_allowed_packet’ na poziomie minimum 16 MB.

Konfiguracja

Konfiguracja wtyczki dostępna jest w menu: WooCommerce → Ustawienia → Wysyłka → DPD.

W ustawieniach można skonfigurować:

Logowanie

WooCommerce DPD - ustawienia, logowanie

Login, Hasło i Nr. klienta – do DPD Services (należy uzyskać u opiekuna DPD).

Tryb testowy – włączenie/wyłączenie trybu testowego.

Jeżeli został zaznaczony powyższy checkbox aktywujący wtyczkę DPD w Trybie testowym, poniżej wyświetlą się dedykowane pola do wprowadzenia danych dostępowych dla trybu testowego:

DPD WooCommerce tryb testowy
DPD WooCommerce – Dane dostępowe do API testowego DPD

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śli zostały wprowadzone prawidłowe dane i połączenie zostało nawiązane pomyślnie, Status połączenia powinien przyjąć wartość Połączono.

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.

WooCommerce DPD – automatyzacja nadawania

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

WooCommerce DPD - ustawienia etykiet

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.
Drukowanie wielu etykiet na stronę wymaga do prawidłowego działania wtyczki Flexible Shipping w wersji 3.9.10 lub nowszej.

Jeżeli została wybrana opcja Format strony etykiety: Etykieciarka poniżej pojawi się dodatkowe ustawienie:

DPD WooCommerce - Typ etykiety

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ę Flexible Printing, możesz w tym miejscu aktywować automatyczne drukowanie etykiet zaraz po ich wygenerowaniu lub zapisywanie ich na dysku.

Dane nadawcy

DPD WooCommerce - Dane nadawce
Ustawienia DPD WooCommerce – Dane nadawcy
Dane nadawcy wymagane są do utworzenia przesyłki DPD. Wtyczka pozwala także na konfigurację dodatkowych adresów nadania.

Włącz konfigurację dodatkowych adresów nadania – zaznaczenie tej opcji umożliwia zdefiniowanie kolejnych, poza domyślnym głównym, adresów nadania.

DPD WooCommerce dodatkowe adresy nadania
WooCommerce DPD – dodatkowe adresy 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).

DPD WooCommerce - wybór adresu nadawcy
WooCommerce DPD – wybór adresu nadawcy
Konfiguracja dodatkowych adresów nadania wymaga do prawidłowego działania wtyczki Flexible Shipping w wersji 3.9.10 lub nowszej.

Opcje zaawansowane

DPD WooCommerce - Opcje zaawansowane
Ustawienia DPD WooCommerce – 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.

Jeżeli nie wiesz lub masz wątpliwości jak dodać nową metodę wysyłki Flexible Shipping zapoznaj się z naszym poradnikiem Jak tworzyć nowe metody wysyłki →
DPD WooCommerce - integracja z Flexible Shipping
DPD WooCommerce – integracja z 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.

Waga paczki zostanie automatycznie uzupełniona, na podstawie łącznej wagi produktów w przesyłce, pobranej z danych produktów.

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:

DPD WooCommerce - DPD Pickup lista punktów odbioru
DPD WooCommerce – Lista punktów odbioru DPD Pickup

oraz link Wybierz punkt na mapie poniżej, po użyciu którego zostanie wyświetlona mapa dostępnych punktów DPD Pickup:

DPD WooCommerce - Mapa punktów DPD Pickup
DPD WooCommerce – Mapa 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 →

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:

DPD WooCommerce nadawanie przesyłki
Metabox DPD – Nadawanie przesyłki
Ze względu na ograniczenia techniczne maksymalna dopuszczalna waga paczki to 700 kg.

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:

DPD WooCommerce - Nadana przesyłka
DPD WooCommerce – Nadana przesyłka

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:

DPD WooCommerce - Wiele paczek
DPD WooCommerce – Wiele paczek do zamówienia

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.

WooCommerce DPD – dodatkowe przesyłki

Protokoły nadania

Po utworzeniu przesyłek (wygenerowaniu etykiet) możesz wygenerować i pobrać protokoły nadania DPD.

Od wersji 2.6.0 wtyczka DPD korzysta z metod generatePackagesNumbersV4 oraz generateSpedLabelsV4, a protokoły przekazania towaru generowane są w 2 jednakowych egzemplarzach – jednym dla nadawcy, jako potwierdzenie przekazania przesyłki i drugim dla kuriera, jako potwierdzenie odbioru.

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.

Jeśli wybierzesz przesyłki krajowe i międzynarodowe, zostaną utworzone oddzielne protokoły.

Utworzone protokoły znajdują się w menu WooCommerce → Protokoły nadania.

WooCommerce DPD – 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.

Po wygenerowaniu etykiety nadawczej i protokołu odbioru należy zlecić dyspozycję odbioru przesyłki, np. za pomocą opcji Zamów kuriera →

DPD Food

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ą:

Dodanie nowej strefy wysyłki DPD Food

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:

Ogranicz do wybranych kodów pocztowych

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.

Więcej o strefach wysyłki WooCommerce przeczytasz również w artykule Strefy wysyłki WooCommerce.

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.

Jeżeli np. udostępniłeś swoim klientom możliwość wysyłki zamówionych produktów do wskazanego przez nich punktu odbioru DPD Pickup, informacja o wybranym punkcie wraz z jego ID zostanie automatycznie przekazana ze szczegółów zamówienia do Baselinkera:

DPD WooCommerce DPD Pickup Baselinker
Wybrany punkt odbioru DPD Pickup – Baselinker

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).