GLS Click & Ship for WooCommerce allows you to effortlessly connect your online store with GLS Denmark’s Click & Ship platform.\
This integration streamlines your entire delivery process — from order creation to label generation and parcel tracking — directly inside your WooCommerce dashboard.
Main features:
- Automatically send order details to GLS Click & Ship
- Generate and print GLS shipping labels directly from WooCommerce
- Track shipments with real-time status updates
- Offer flexible delivery options, including pickup point selection
- Works seamlessly with popular shipping extensions like WooCommerce Weight Based Shipping
-
Reduce manual work and eliminate export/import hassles
Requirements
-
A valid GLS Click & Ship account — Create one here
- WooCommerce 5.8 or later
- PHP 7.4 or higher
5.0.0 - 2026-11-12
- Major release: redesigned pickup map and updated checkout pickup selection handling.
- Improve pickup-location address lookup: try the full address, then the street without the house number, then postcode and city, stopping at the first usable result. Autocomplete behaviour is unchanged.
- Preserve separate street, house-number and extension fields when the address can be split confidently; leave ambiguous address formats intact.
- Dropped-pin searches use the dropped location; failed address lookups show an error instead of reusing checkout points.
- Restore optional carrier logos and isolate pickup-map colours for each brand.
- Harden API initialization, request URL handling, HTTPS defaults and webhook signature verification.
- Fix zone-instance saving of the automatic pickup rule and keep the service explanation visible for home delivery.
- Use a high-contrast GLS SVG logo at checkout.
- Remove the "Selecting a pickup Point" setting from flat-rate, free-shipping and Weight Based Shipping — pickup is now always mandatory on Shop delivery and never offered on any other service level, shown as a message instead of a choice.
- Hide Pick&Ship, Pick&Return and ShopReturn from the service-level dropdown — they don't support pickup selection.
- Existing methods configured before this update have their pickup setting corrected automatically on upgrade.
- Fix: the message shown for Shop delivery incorrectly said an unselected parcel shop would be auto-assigned — checkout actually requires a selection, so the wording now says that instead.
- Fix: a typed or checkout postcode that had no exact match in the map data could silently resolve to an unrelated place, or to the wrong wide area, instead of the shopper's actual location; both are now rejected so a coarser-but-correct result (or an honest "not found") is shown instead.
- Add distinct messages for "nothing searched yet," "no match found" and "approximate location," so the shopper is never left guessing or shown a city-centre default as if it were exact.
4.1.4 - 2026-10-07
Fix - Corrected Print label request validation that could return an HTTP 403 error.
4.1.3 - 2026-09-28
Enhancement - Restored service-level selection, with carrier options limited to combinations supported by the selected service level.
Enhancement - Replaced runtime-generated carrier classes with class_alias()-based registration for more reliable upgrades and broader hosting compatibility.
Enhancement - Added HMAC v2 support for complete and consistent order status and tracking callbacks.
Enhancement - Improved activation and dependency handling across WordPress and WooCommerce environments.
Enhancement - Improved database operations, WooCommerce logging, and AJAX-loaded shipping settings.
Fix - Corrected settings-page controls, carrier option persistence, and callback field handling.
Fix - Corrected the external-service terms and privacy links.
4.1.2 - 2026-07-01
Enhancement - Customer delivery address now shown as a pin on the pickup point map for easier navigation.
Enhancement - Pickup point details now included in WooCommerce order confirmation emails.
Enhancement - Map now validates address fields upfront and guides the customer before attempting to load pickup points.
Enhancement - Mandatory pickup reminder now surfaces at the most relevant stage of checkout for a clearer user experience.
Enhancement - Pickup point label in checkout now displays the full location details consistent with the map and list view.
4.1.1 - 2026-06-18
Fix - Pickup point button unresponsive in certain server environments due to a conflict between PHP-rendered markup and the JavaScript event handler.
4.1.0 - 2026-05-06
Fix - Resolved block and classic checkout incompatibility causing the pickup point to not display correctly on the order received page.
Fix - Pickup point now correctly displayed inside the shipping address block on the order confirmation page.
Fix - Mandatory pickup point is now properly enforced, orders cannot be completed without selecting a pickup location when required by the carrier.
Fix - API error responses are now correctly captured and displayed, giving clearer feedback when an export fails.
Fix - Resolved fatal error on WooCommerce 10.8.1 caused by unsupported method call on shipping rate object.
Fix - Geocoding no longer crashes the map when the address lookup returns no results.
Enhancement - Added support for Google Maps when a valid API key is configured in the plugin settings.
Enhancement - Improved checkout performance and stability through internal code optimisation.
4.0.9 - 2026-03-16
Fix - Carrier ID not being passed to the pickup widget before map open on classic checkout templates causing the PUDO map to fail.
Fix - Map markers now display correctly with the right size and fallback image.
Fix - Fatal error on checkout page now resolved.
Fix - Checkout page no longer freezes after re-selecting a pickup point.
Fix - Pickup button visibility detection across different checkout types including Classic.
Fix - Deprecated get_meta() usage causing PHP fatal error on newer WooCommerce versions when visiting cart page.
Fix - Label printing infinite spinner caused by large PDF payload being sent to the browser.
4.0.8 - 2026-02-11
Fix - Settings page crash preventing access to the plugin settings.
Fix - Added custom method to resolve error "Call to undefined method WC_Countries::get_country_alpha3()" that was preventing label printing and order export.
Enhancement - Added a "Reset Export Status" button in the order actions dropdown that lets merchants reset the status and re-export orders.
4.0.7 - 2026-01-12
Fix - Resolved a fatal error when creating labels via Bulk Actions, ensuring bulk label generation works reliably without crashing.
Fix - Improved API authentication error handling to prevent generic "Invalid keys" messages and provide clearer, actionable feedback when connection or credential issues occur.
4.0.6 - 2025-12-09
Fix - Correct the Automatic Export status-saving logic to ensure automatic exports run as expected.
Enhancement - Add support for importing HTS Code and Country of Origin from WooCommerce custom product attributes when available.
4.0.5 - 2025-11-21
Fix - Add compatibility function to make the map display with Elementor checkout.
Fix - Add event listeners that actively monitor and restore the pickup button disappearing on shipping method change.
Fix - Added type validation using is_object() and is_array() to fix a CarrierId property assignment error.
4.0.4 - 2025-10-17
Fix - Default pickup behavior bug when using Free Shipping.
Fix - AJAX error (400 Bad Request) when clearing pickup sessions.
Fix - Missing button for mandatory pickup points in Flat Rate carriers.
Fix - Removed Service Level option from Weight-Based Shipping.
Fix - Pickup session now correctly clears when switching from pickup to non-pickup shipping methods.
Fix - Enforce pickup point selection when mandatory.
Fix - Make Pickup Location Button available for all carriers with pickup capability.
Enhancement - Added automatic database schema update for Label URL storage to prevent "No Labels to Print" errors.
Enhancement - Added loader before the map loads to improve user experience.
Enhancement - Made the pickup point map fully responsive across all devices.
4.0.3 - 2025-06-24
Fix - Resolved PHP compatibility warnings and deprecated strpos() usage (PHP 8.1+).
Fix - Order status now updates correctly when exported.
Fix - Prevented print label action from re-triggering when paginating callback URLs.
Enhancement - Updated database schema to include the required labelurl column.
Enhancement - Added database upgrade routine with improved error handling.
Enhancement - Declared all properties explicitly, removing deprecated dynamic properties.
Enhancement - Improved JSON parsing with stronger error handling.
Enhancement - Secured SQL queries using prepared statements.
4.0.2 - 2025-05-29
Fix - Corrected tracking URL display in the Order Details "Custom Fields" section after label creation.
Fix - Removed "Label Printing Consent" option from settings and defaulted to consent.
Fix - Updated translation strings.
Fix - Prevented "Invalid JSON" and "PHP Fatal" errors for specific WooCommerce versions.
Enhancement - Improved design of pickup point buttons and checkout map.
Enhancement - Enhanced mobile-friendly layout for the checkout map.
Enhancement - Mapped product SKU to "Article Number" field.
4.0.0 - 2025-03-10
Enhancement - Added support for block-based checkout and theme compatibility with pickup point maps.
Enhancement - Increased security with nonce validation and user role verification.
Enhancement - Implemented field sanitization and escaping throughout the plugin.
Enhancement - Replaced direct SQL with prepared statements for enhanced security.
Enhancement - Removed unnecessary input fields from shipping method creation.
Fix - Removed unused marker assets from pickup point maps.
Fix - Updated frontend geolocation and recompiled assets.
Fix - Added translations for all backend and frontend text strings.