GLS
Purpose
This connection buys GLS labels from inside the shipping process — for the ordinary parcel as well as for express and heavy shipments up to 40 kg.
Scope
- Three services:
parcel,expressandfreight. - Maximum weight 40 kg per package — more than DHL and DPD, which is why GLS is often the right
choice for heavy single items.
- Tracking with status mapping.
- Return labels from the same operation.
- Customs documents for third-country shipments in the same request as the label.
- Real cancellation: GLS actually deletes the parcel — like DHL, unlike DPD.
Setup
Credentials live as an integration under Integrations — provider gls. The credential names start with the provider, which keeps them apart from the settings of other connections.
| Setting | Required | Meaning |
|---|---|---|
gls_username | yes | User name of the GLS interface. Stored encrypted and never shown again. |
gls_password | yes | Its password. Stored encrypted and never shown again. |
shipper_id | yes | Shipper id (ShipperId) from the GLS contract. Without it no label is produced. |
shipper | no | Sender address as a group of fields; passed to GLS unchanged, field names as in the GLS interface. |
label_format | no | pdf (default) or zpl for the label printer. |
production | no | true switches to live operation. Without it everything runs against the test environment. |
Credentials still stored in clear text under the old name without the provider prefix are taken over encrypted — on the next save or read of the integration and by the update step "Store credentials encrypted" (bin/console app:secrets:migrate).
Interplay
The connection sits inside Shipping: that is where the shipment is created, where the label is bought and where tracking runs. Credentials live as an integration under Integrations in the encrypted store — never in a setting and never in clear text; the same place switches between test environment and production. Labels and delivery notes reach the right printer through Printing & workstations. When a label is produced, and in how many copies, is decided by automations — shipping brings no rule engine of its own.
Limits
- The real run is still outstanding. What is verified is that we ask correctly and read the
answer correctly — the tests drive the interface with prepared responses. That GLS actually accepts the request we build is not proven; access to the real test environment is missing.
- Prices and contract terms do not come from here. What a shipment costs is in the contract with
the carrier; this connection buys the label, it does not price it.