https://github.com/magesuite/packstation-dhl
This module provides the possibility to choose a DHL packstation as a delivery method. It adds an additional field to the address: Dhl Customer number
and adds a search field selecting packstation
Installation
This module is optional.
composer require "creativestyle/magesuite-packstation-dhl" ^2.0.0
User guide
4.5. DHL Packstation shipping 2.0
Admin settings
In Stores -> Configuration -> Sales -> Delivery methods
a new tab - Packstation DHL
is available.
The following options can be configured:
Name | Value | Comment |
---|---|---|
Enabled | Yes/No | |
Method Name | ||
Title | ||
Mode | Live/Sandbox | |
API Key | Provide API Key for Location Finder - Unified API. It can be found in your DHL developer account in aplication details under 'Credential' section | |
Enable Debug | Yes/No | Enable this option to log requests |
Price | ||
Minimum subtotal for free shipping | ||
Maximum subtotal | ||
Maximum weight | ||
Sort Order | ||
Type | None/ Per Order / Per Item | Use system value |
Ship to Applicable Countries | All Allowed Countries/Specific Countries | Use system value |
Ship to Specific Countries | ||
Displayed Error Message | Default value: |
Backend
Frontend
Frontend screens
In the checkout delivery method section a new method is displayed:
After DHL packstation is selected the address form is hidden, Dhl Customer number
is shown along with the Select packstation
button.
In the modal, it is possible to enter a postal code and select a pack station.
The address of the packstation is displayed in the shipping step of checkout.
Styling
As the module is optional styling is not provided by default. The following import must be uncommented in a child theme that inherits from theme-creativeshop, in src/entries/checkout.ts
file:
import 'MageSuite_PackstationDhl';
Scripts
magesuite-packstation-dhl/view/frontend/web/js/model/packstations-service.js
magesuite-packstation-dhl/view/frontend/web/js/view/dhl-packstation.js
magesuite-packstation-dhl/view/frontend/web/js/view/packstation-selector.js
are the most important scripts with packstation logic.
Additionally the following mixins are added to Magento checkout scripts:
mixins: { 'Magento_Checkout/js/action/select-shipping-address': { 'MageSuite_PackstationDhl/js/action/select-shipping-address-ext': true, }, 'Magento_Checkout/js/model/quote': { 'MageSuite_PackstationDhl/js/model/quote-ext': true, }, 'Magento_Checkout/js/view/shipping-information': { 'MageSuite_PackstationDhl/js/view/shipping-information-ext': true, }, },