LokiCheckout_GlsNl

This module is available free of charge as part of Loki Checkout. Please note that support for this module is not included and is available on an hourly basis.
Shipment
PHP 8.1 - 8.4
Magento 2.4.7 | 2.4.8
CSP Yes
PHPStan 1

Magento version PHP version License Latest Version

This Magento 2 module is an add-on package to the LokiCheckout.

Installation

Install this package via composer:

composer require loki-checkout/magento2-gls-nl

Next, enable this module:

bin/magento module:enable LokiCheckout_GlsNl
bin/magento setup:upgrade

Features

This module is a standalone GLS Netherlands carrier (carrier code glsnl), built on the official GLS NL Label API. It does not depend on any other GLS extension.

  • Two shipping methods: home delivery (glsnl_business) and GLS ParcelShop delivery (glsnl_shopdelivery)
  • Flat rates per method, or table rates imported from a CSV file (weight, subtotal or item count vs. destination)
  • ParcelShop picker in the Loki Checkout (dropdown and map). The shipping address is replaced by the selected ParcelShop
  • Optional delivery options for home delivery (express, Saturday and time slots from the GLS API), each with a configurable surcharge
  • Admin label creation:
    • The Ship with GLS label button on the order view creates the shipment, the tracking number and the label in one go
    • A mass action in the order grid does the same for multiple orders
    • Magento's native Create Shipping Label option on the new shipment page
    • The Delete GLS label button on the shipment view cancels the label at GLS
  • The selected ParcelShop and delivery option are copied to the order and shown in the admin order view

Configuration

Go to Stores > Configuration > Sales > Delivery Methods > GLS Netherlands (LokiCheckout):

  • API Username, API Password and API Subscription Key: your credentials for the GLS NL API. Test Mode sends requests to https://api.gls.nl/test/ instead of https://api.gls.nl/v1/.
  • GLS Customer Number: optional, sent with every label request.
  • Debug: logs API requests and responses (with credentials masked) to var/log/glsnl.log.
  • Shipping labels use the sender address under Stores > Configuration > Sales > Delivery Methods > Shipping Settings > Origin and the store name and phone under General > Store Information.

Table rates

Set Rate Type to Table rates (CSV). Then switch to website scope to import and export the CSV file. The columns are:

| Country | Region/State | Zip/Postal Code | Condition | Method | Price | |---------|--------------|-----------------|-----------|--------|-------| | NL | * | * | 0 | business | 6.95 | | NL | * | 1000* | 0 | shopdelivery | 3.95 | | * | * | * | 0 | * | 12.50 |

  • Use * (or leave the cell empty) to match any value.
  • Postcodes can be exact (1234AB), a prefix (1234*) or a numeric range (1000-1999).
  • Method is business, shopdelivery or * (both methods).
  • For each order, the most specific matching row wins: a specific country beats *, then a specific region, then the most specific postcode, then a specific method, then the highest condition value that does not exceed the order's value.

Current status

Static Tests Unit Tests Integration Tests Playwright DI Compilation

WARNING: This module has no releases yet. If you want to use it, make sure to add the version @dev to the composer command.

Support

For getting support, create an Issue under the following project URL:

https://gitlab.yireo.com/loki-checkout/LokiCheckout_GlsNl.git

Composer details
Magento module name
LokiCheckout_GlsNl
Composer name
loki-checkout/magento2-gls-nl
Composer version
No release yet
Default branch
main
Requirements
ext-json: *
loki-checkout/magento2-core: ^2.7
loki-checkout/magento2-shipping-maps: ^1.0
loki/magento2-components: ^2.8
loki/magento2-css-utils: ^1.1
loki/magento2-field-components: ^2.2
loki/magento2-map-components: ^1.0
magento/framework: ^103.0
magento/module-backend: ^102.0
magento/module-config: ^101.2
magento/module-directory: ^100.4
magento/module-quote: ^101.2
magento/module-sales: ^103.0
magento/module-shipping: ^100.4
magento/module-store: ^101.1
psr/log: ^1.0 | ^2.0 | ^3.0
php: >=8.2 <8.6
Releases
Changelog

Added

  • Standalone GLS Netherlands carrier based on the official GLS NL Label API
  • Flat rates and CSV table rates
  • ParcelShop picker with map in the Loki Checkout
  • Delivery options (express, Saturday, time slots) with surcharges
  • Admin label creation (order view button, mass action, native shipping labels) and label deletion
  • Unit tests

Fixed

  • Drop PHP 7-only dependency tig/gls-magento2 (archived upstream)
  • Add dependency on loki-checkout/magento2-core

Last modified: September 16, 2026