16 July 2026
Added
- Courier variants: You can now create and manage variants of a carrier directly from the carrier settings panel in the control panel — no more duplicate sidebar entries. Each variant can have its own display name (alias), transaction code, alert days, and product configuration. Variants appear in the courier dropdown (indented under their parent) and in the active couriers grid.
- API v1 – Carrier variants support: The
getCouriersresponse now groups configured variants under their parent carrier, including a newvariantsarray andidfield on each entry.
Fixed
- Deleting a shipping label for BRT, TNT, or DHL no longer returns an “Invalid api key” error caused by a decommissioned third-party service; labels are now cancelled directly with the carrier as expected.
- Courier variants now correctly resolve to their parent carrier throughout the control panel — fixing broken carrier icons, incorrect names (e.g. “GLS-ITA — variante V1”), and label generation or cancellation failures that occurred when a variant was selected.
- Label printing now correctly identifies the parent carrier for variant couriers, preventing blank or empty responses when printing labels for variant-configured carriers.
- The BRT Fresh delivery option now appears and saves correctly when configured on a BRT carrier variant.
- API v1 –
pushOrder/pushShipment: Passing a variant carrier code that has not been configured for your sales channel now returns a clear error instead of silently failing. - API v1 –
confirmLabel: Label confirmation no longer returns “Unsupported courier” when called for a carrier variant. - API v1 –
deleteLabel: Cancelling a label for a carrier variant now correctly contacts the carrier and logs the deletion, instead of only removing it locally. - API v1 –
getShipments,getOrder,getShipment, and related read endpoints: Shipments created under a carrier variant now return the correct carrier name, icon, and tracking URL instead of the raw variant code. - API v1 –
createLabel: Creating a label for a carrier variant no longer incorrectly returns “Courier setup not purchased”.