Skip to content

Geodis Integration ​

The source contains Geodis API/service code and an AsirGroup text-export path for selected ticket-printed lines. This page documents the available integration shape and the source-visible operations; end-to-end shipment creation, label generation, provider acceptance and tracking readback remain partial until their callers and runtime evidence are reviewed.

Components ​

ComponentFileRole
GeodisApisrc/CoreBundle/Api/GeodisApi.phpAPI client for Geodis
GeodisServicesrc/CoreBundle/Services/GeodisService.phpShipment business logic

Configuration ​

The source snapshot defines separate geodis.Send and geodis.Receive parameter groups. The names below describe the configuration shape; active values and credentials are environment-owned.

yaml
geodis:
  Send:
    url: "https://..."
    login: "..."
    api_key: "..."
  Receive:
    url: "https://..."
    login: "..."
    api_key: "..."

This shape is from app/config/parameters.yml.dist at the reviewed source revision. It does not prove that the values are present or active.

Parameter injection

Like DPD, the Geodis service receives the full %geodis% parameter array rather than individual keys. See the DPD documentation for details on this pattern.

The sequence below shows the service/API shape present in the source. It does not prove that every caller creates a label, that the provider accepted the request, or that tracking was read back successfully.

Data Flow ​

View diagram source
sequenceDiagram
    participant SVC as GeodisService
    participant API as GeodisApi
    participant GEO as Geodis API
    participant SP as SaleProduct

    SVC->>API: createShipment(orderData)
    API->>GEO: POST shipment request
    GEO-->>API: Label PDF + tracking number
    API-->>SVC: Parsed response
    SVC->>SVC: Save label PDF
    SVC->>SP: Update carrier, tracking, shipment info

Diagram

Shipment Types ​

Geodis supports multiple shipment types depending on the goods being shipped:

TypeUse Case
ParcelStandard-sized packages
PalletLarge or heavy items on EUR pallets
FreightOversized or multi-pallet shipments

Error Handling ​

ScenarioBehavior
API timeoutA retry policy is not established by the reviewed Geodis export command.
Invalid address or dimensionsValidate the generated export and the command result; a general “logged and skipped” rule is not established by the reviewed source.
Authentication failureCheck the environment-owned geodis.Send/Receive configuration and the provider response. Credentials are not documented here.
Weight or parcel mismatchThe export builds parcel rows from stored shipment information; an operator correction or split policy is not established by this command.

The reviewed GenerateGeodisExpeditionForSaleProductsTxtAndSendCommand proves local SDB_*_GEODIS_*.txt generation and sets is_gls_text_file_generated. It does not prove that a remote Geodis endpoint accepted the file. See carrier shipment operations.

Pallet dimensions

Geodis requires accurate weight and dimension data for pallet shipments. Incorrect values may result in surcharges or rejected shipments. Verify product dimensions in Logidav before creating pallet shipments.

Internal developer documentation for Menzzo systems.