Appearance
ChronoPost Integration
ChronoPost handles express parcel delivery across France and Europe. The integration generates shipping labels via the ChronoPost SOAP API and synchronizes tracking data back into Logidav.
Components
| Component | File | Role |
|---|---|---|
ChronoPostApi | src/CoreBundle/Api/ChronoPostApi.php | SOAP API client |
ChronopostService | src/CoreBundle/Services/ChronopostService.php | Shipment business logic |
Configuration
The source snapshot uses flat parameters for Chronopost. The names below describe the configuration shape; active values and credentials are environment-owned.
yaml
menzzo_chronopost_skybill_url: "http://wsshipping.chronopost.fr/shipping/services/getReservedSkybill?reservationNumber={trackingNumber}"
menzzo_chronopost_account_number: "..."
menzzo_chronopost_account_password: "..."SOAP-based integration
Unlike DPD which uses REST, ChronoPost uses a SOAP API. The ChronoPostApi client wraps the WSDL service and provides a simplified interface for label generation and tracking.
Data Flow
View diagram source
sequenceDiagram
participant SVC as ChronopostService
participant API as ChronoPostApi
participant CP as ChronoPost SOAP API
participant SP as SaleProduct
SVC->>API: createShipment(orderData)
API->>CP: SOAP shippingV2 request
CP-->>API: Label PDF + tracking number
API-->>SVC: Parsed response
SVC->>SVC: Save label PDF to storage
SVC->>SP: Update carrier, tracking number, shipment info
Label Generation
ChronopostServicecollects order and address data from the selectedSaleProductrecordsChronoPostApibuilds the SOAP request with sender, recipient, and parcel details- The API returns a PDF label and a tracking number
- The label is saved to disk and the tracking number is stored on the
SaleProduct
Error Handling
| Scenario | Behavior |
|---|---|
| API timeout or send exception | The ticket command records a Chronopost print error and reports the exception. An exponential-backoff policy is not established by the reviewed source. |
| Empty or failed Skybill response | The command records the failed URL or print error; the reviewed source does not establish an operator retry schedule. |
| Authentication failure | Check the environment-owned flat parameters and provider response. Credentials are not documented here. |
| WSDL or Skybill endpoint unavailable | The command's local failure path is visible; automatic retry or deployment availability is not established. |
Address validation
ChronoPost is strict about address formatting. Ensure recipient addresses include a valid postal code and country code before submitting. Invalid addresses will cause the SOAP call to fail.
Troubleshooting
SOAP connection errors
- Confirm the selected line and the last command output through the approved operator procedure.
- Check
has_chronopost_print_error,chronopost_files, tracking IDs and the normalized shipment-tracking row together. - Use the owning runtime runbook for endpoint or credential checks. This page does not authorize production commands or cache changes.
Missing labels
- Check that the PDF storage directory is writable
- Verify the
ChronopostServicelogs for API response errors - Confirm the
SaleProducthas valid shipping address data