Description
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
External services
GLS Click & Ship – To enable you to create shipping labels for your orders via this integration, the plugin sends shipping data (shipping address, order item list, and shipping method name) to the GLS Click & Ship API.
API endpoint: https://clickandship.gls.dk/
Terms of use: https://gls-group.com/DK/da/generelle-betingelser/
Privacy policy: https://gls-group.com/DK/da/data-og-sikkerhed/
Google Maps API – This plugin uses Google Maps API to display pickup locations on an interactive map.
The following data is sent to Google Maps API:
– User’s location (when searching for nearby pickup points)
– Pickup point addresses
– Map center coordinates
This service is used to help customers locate and select their preferred pickup points during checkout.
Google Maps API Terms of Service: https://developers.google.com/maps/terms
Google Maps API Privacy Policy: https://policies.google.com/privacy
OpenStreetMap – When the OpenStreetMap map or address lookup is used, the browser requests map tiles from tile.openstreetmap.org and address search results from nominatim.openstreetmap.org. Tile requests identify the viewed map area; search requests contain the address or postcode and country. These services also receive the browser’s IP address and ordinary HTTP request metadata. Requests occur when the pickup map is opened, moved or searched using these providers.
Terms of use: https://osmfoundation.org/wiki/Terms_of_Use
Privacy policy: https://osmfoundation.org/wiki/Privacy_Policy
WooCommerce Weight Based Shipping – If you are using this plugin, GLS Click & Ship integrates with it to correctly transmit the shipping method name.
4.0.4 – 2025-10-17
Fix – Enforce pickup point selection when mandatory
Fix – Make Pickup Location Button available for all carriers with pickup capability.
4.0.5 – 2025-11-21
Fix – Add compatibility function to make the map display with elementor checkout
Fix – Add event listeners that actively monitors and restores the pickup button dissapearing on shipping method change.
Fix – Added type validation using is_object() and is_array() to fix CarrierId Property Assignment Error
4.0.6 – 2025-12-09
Fix – Correct the Automatic Export status-saving logic to ensure automatic exports run as expected.
Feature – Add support for importing HTS Code and Country of Origin from WooCommerce custom product attributes when available.
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.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.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.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 – Google Maps key is now fetched automatically from the API, no longer requires manual entry in plugin settings
Enhancement – Improved checkout performance and stability through internal code optimisation
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.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.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.
Legal notice
This plugin communicates with the GLS Click & Ship API service operated by GLS Denmark.
By using this plugin, you agree to GLS Click & Ship’s applicable Terms and Conditions and Privacy Policy.
Screenshots




Installation
- Upload the plugin files to the
/wp-content/plugins/gls-clickship-denmark/directory, or install it via the WordPress Plugins screen. - Activate the plugin through the ‘Plugins’ screen in WordPress.
- Go to WooCommerce Settings Shipping GLS Click & Ship to configure your settings.
- Enter your GLS Click & Ship API credentials.
- Once configured, you can generate shipping labels directly from the WooCommerce order page.
FAQ
-
Do I need a GLS account to use this plugin?
-
Yes. You need an active GLS Click & Ship account to use this integration. You can register at https://clickandship.gls.dk/.
-
Can I use this plugin for international shipments?
-
Yes. GLS Click & Ship supports both domestic and international shipping services depending on your account configuration.
-
Does this plugin support pickup point deliveries?
-
Yes. Customers can select GLS ParcelShops during checkout using the pickup-point map. OpenStreetMap is used by default. Google Maps is used only when a valid Google Maps API key is configured.
-
Does the plugin work with weight-based shipping plugins?
-
Yes. It integrates seamlessly with WooCommerce Weight Based Shipping, ensuring accurate label data transmission.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“GLS Click&Ship (Denmark)” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “GLS Click&Ship (Denmark)” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
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.
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.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.4 – 2025-10-15
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.
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.
