Create Labels
Learn how to create shipping labels with the GLS Connector, process them in bulk, cancel shipments, and perform the end-of-day manifest.
Create a Single Label
Step 1: Create a New Shipping Label
- Open the merchantCENTRAL Dashboard
- Click Create Shipping Label (or open the shipping label list)
- Select GLS as the shipping carrier
- The default product and weight from the GLS setup are automatically prefilled
Step 2: Enter Recipient Address
Fill in the recipient details completely:
| Field | Required | Example |
|---|---|---|
| Ship-to Name | β | Max Mustermann |
| Ship-to Post Code | β | 80331 |
| Ship-to City | β | MΓΌnchen |
| Ship-to Country Code | β | DE |
| Ship-to Address | β | Marienplatz 1 |
| Ship-to Email | Recommended | max@example.com |
| Ship-to Phone | Recommended | +49 89 123456 |
Street and House Number
GLS expects the street including house number in a single field. The connector takes the address as it appears on the shipping label.
Step 3: Enter Parcel Data
| Field | Required | Description | Example |
|---|---|---|---|
| Weight | β | Weight in grams (hub standard) | 2500 (= 2.5 kg) |
| Reference No. | Recommended | Order number or reference | SO-2024-00123 |
Weight Conversion
The hub stores weight in grams. The GLS Connector automatically converts to kilograms (Γ· 1000). Example: 2500 g β 2.500 kg.
Reference Number
The reference number is printed on the GLS label and helps match shipments to orders. The system automatically uses the reference number, then the sales order number, then the Entry No. as a fallback.
Step 4: Create Label
Click Create Label. The connector:
- Validates all required fields (locally, not via the GLS API)
- Builds the JSON request for the GLS ShipIT API
- Sends the request to
POST /shipments - Receives the label (Base64 encoded) and the Track ID
- Saves the label as PDF/PNG/ZPL and the tracking number
Step 5: Print Label
After creation, the label is available as PDF, PNG, or ZPL. Print it and affix it to the parcel.
Bulk Label Creation
You can process multiple labels in one go.
Workflow
- Select multiple shipping labels in the list
- Click Bulk Create Labels
- The connector processes each label individually and sequentially
- Successful labels receive the status Created; failed ones are marked with the error message
No Batch API at GLS
Unlike DHL, for example, the GLS API does not offer batch creation. Bulk labels are processed internally as individual calls one after another. This means processing time is proportional to the number of labels.
Progress
During bulk processing, a progress dialog shows the current status:
GLS - Bulk Label Creation
Status: Processing labels...
Progress: [βββββββββββββββββββββββββ] 48%
Records: 12 of 25
Cancel Shipment
Labels can be cancelled as long as GLS has not yet picked up the parcel.
Workflow
- Open the shipping label you want to cancel
- Click Cancel Shipment (or Void)
- The connector sends a cancellation request to
POST /shipments/cancel/{trackID} - On success, the label status is set to Cancelled
Time Window
Cancellation is only possible before GLS has physically scanned the parcel. After pickup by the GLS driver, cancellation via the API is no longer possible.
End of Day (Manifest)
The end of day is a mandatory step at GLS. It closes all open shipments for the day and generates a manifest document (PDF) that is handed to the GLS driver at pickup.
Workflow
- Make sure all shipments for the day have been created
- Click End of Day (or Manifest)
- The connector sends a request to
POST /shipments/endofday?date=YYYY-MM-DD - GLS returns a manifest PDF that is automatically saved
- Print the manifest and hand it to the GLS driver
End of Day is Mandatory
GLS expects you to perform the end of day daily before the driver picks up the parcels. Without the end of day, there may be issues during pickup.
Manifest Document
The manifest contains:
- Overview of all shipments for the day
- Shipper and recipient information
- Track IDs and parcel count
- Barcode for GLS scanning
Shipment Tracking
The GLS Connector supports shipment tracking directly in Business Central.
Tracking URL
Each created label automatically receives a tracking URL in the format:
https://gls-group.eu/DE/de/paketverfolgung?match={TrackID}
Retrieve Tracking Status
The connector can retrieve the current status of a shipment via the GLS Tracking API:
- Status: Current shipment status (e.g., InProgress, Delivered)
- History: Chronological list of all scan events
Validation
The GLS Connector validates all required fields locally before making the API call. GLS does not offer a separate validation endpoint.
Required Field Checks
| Check | Error Message |
|---|---|
| Basic Auth missing | Missing GLS API credentials |
| Contact ID missing | Contact ID is required |
| Shipper name missing | Shipper Name 1 is required |
| Recipient name missing | Ship-to Name is required |
| Recipient postal code missing | Ship-to Post Code is required |
| Recipient city missing | Ship-to City is required |
| Recipient country missing | Ship-to Country Code is required |
| Weight β€ 0 and no default | Weight must be greater than 0 |
Service-specific Checks
| Service | Check |
|---|---|
| ShopDelivery | ParcelShop ID must be provided |
| Cash on Delivery | Cash Amount must be > 0 |
| AddonLiability | Liability Amount must be > 0 |
| Customs Items | Description and Quantity are required per item |
Query Allowed Services
Before creating a label, you can check which GLS services are available for a specific route:
- Fill in the recipient address
- The connector queries the AllowedServices endpoint
- The response shows which services (PARCEL, EXPRESS, FREIGHT, VAS) are available for this destination country
Connection Test
The AllowedServices endpoint is also used for the connection test, since GLS does not offer a dedicated health check.
Frequently Asked Questions
Can I re-download a label?
No. GLS delivers the label only once during the CreateParcels call. It cannot be retrieved again from the GLS API after creation. However, the label is stored in Business Central and can be printed from there at any time.
What happens if an error occurs during bulk creation?
Failed labels receive the status Error with the GLS error message. All other labels are processed normally β a single error does not stop the entire bulk processing.
How many labels can I create per day?
There is no technical limit on the connector side. However, the GLS API has rate limits that may apply at very high volumes. The number of labels created today is displayed in the status section of the setup.
Do I have to perform the end of day?
Yes, the end of day is standard at GLS. It generates the manifest document that the GLS driver needs at pickup. If you forget the end of day, there may be issues during pickup.
What is the difference between cancellation and end of day?
- Cancellation = A single label/parcel is voided
- End of Day = All open shipments are closed and marked as "ready for pickup"