# Intégrer un transporteur absent du marché ou une règle de frais spécifique

> Suivi de colis, calcul de frais spécifique, transporteur absent du marché des modules existants : ce que je mets en place côté logistique quand le standard ne suffit pas.

- Source canonique : [https://allaux.fr/expertises/module-transporteur-sur-mesure-prestashop](https://allaux.fr/expertises/module-transporteur-sur-mesure-prestashop)
- Langue : FR
- Dernière mise à jour : 2026-07-26

## Le besoin type

PrestaShop couvre nativement les transporteurs les plus courants via des modules du marché, mais certains besoins restent hors de leur périmètre : un transporteur régional ou étranger sans module disponible, une règle de calcul de frais qui combine poids, volume et zone d'une façon que les règles natives ne permettent pas d'exprimer, ou un suivi de colis affiché directement dans l'espace client plutôt que renvoyé vers un site tiers. Ces besoins reviennent régulièrement dès qu'une boutique sort des schémas de livraison les plus standards.

## Comment j'interviens sur ce genre de besoin

La première étape consiste à comprendre ce que le transporteur propose réellement côté technique : une API de génération d'étiquettes et de suivi, un simple export de fichier, ou rien de programmable du tout. Ce point conditionne fortement l'ampleur du module à construire. Pour un calcul de frais spécifique, je pars des règles réellement appliquées par l'entreprise plutôt que d'une simplification théorique, avec les cas particuliers (produits volumineux, destinations exclues, franco de port à partir d'un certain montant) intégrés dès la conception plutôt qu'ajoutés après coup.

Quand un suivi de colis doit apparaître côté client, je m'assure que l'information reste synchronisée avec l'état réel de la livraison, avec une actualisation à un rythme cohérent avec l'usage — inutile d'interroger l'API du transporteur à chaque affichage de page si le statut ne change que quelques fois par jour.

## Facteurs qui influencent le chiffrage

- **Disponibilité d'une API transporteur** — Un transporteur avec une API de génération d'étiquettes et de suivi documentée simplifie nettement le développement par rapport à un processus manuel à automatiser.
- **Complexité de la grille tarifaire** — Une règle simple par poids se traite différemment d'une grille combinant zone, volume, valeur déclarée et exceptions produit.
- **Nombre de points relais ou de zones** — Un widget de sélection de point relais avec plusieurs milliers de points référencés demande une architecture de recherche différente d'une simple liste de zones.
- **Intégration au suivi client** — Afficher un suivi de colis directement dans l'espace client, plutôt qu'un simple lien externe, ajoute un travail de synchronisation et de présentation.

## Questions à se poser avant de lancer

> Le transporteur propose-t-il une API pour les étiquettes et le suivi, ou faut-il partir d'un processus manuel ? Les règles de calcul de frais actuelles sont-elles clairement formalisées, ou seulement connues empiriquement de l'équipe ?

## FAQ

### Peut-on ajouter un transporteur sans API disponible ?

Oui, mais certaines fonctions resteront manuelles, comme la génération d'étiquettes depuis l'interface propre du transporteur, tant qu'aucune interface programmable n'existe.

### Le module peut-il gérer plusieurs transporteurs avec des règles différentes ?

Oui, chaque transporteur peut avoir sa propre logique de calcul et ses propres contraintes, gérées indépendamment dans le même module ou dans des modules distincts selon la complexité respective.

### Comment sont gérées les zones ou pays non desservis ?

Elles sont exclues explicitement des règles de calcul, avec un message clair au client plutôt qu'un frais de port erroné ou une absence silencieuse du transporteur au moment de payer.

### Un module de transporteur sur mesure reste-t-il compatible avec les mises à jour de PrestaShop ?

En s'appuyant sur les hooks natifs de gestion des transporteurs plutôt que sur des modifications directes du core, le module reste stable d'une mise à jour à l'autre.
