TL;DRPasser de PrestaShop 8 à 9, c'est changer de framework (Symfony 4.4 vers 6.4) et de version de PHP : une migration qui se prépare. Voici les prérequis, les pièges côté modules et une checklist en 8 étapes pour ne pas perdre de ventes.
Où en est PrestaShop en septembre 2026#
Trois branches vivent en parallèle, et le choix de la version cible dépend de cette photographie. La 9.1.5, publiée le 18 août 2026, est la dernière version de la branche 9.1 avant la 9.2. La 8.2.8 est sortie le même jour avec cinq correctifs de sécurité : la branche 8.2 continue donc de recevoir des patchs. Enfin la 9.2.0-rc.1, sortie le 21 septembre 2026, est une release candidate : nous détaillons ses nouveautés dans notre article sur la release candidate 9.2.
Pour une boutique en production, la cible raisonnable aujourd'hui est la dernière 9.1.x. La 9.2 se teste sur une copie ; passer une boutique qui encaisse des commandes sur une RC n'a pas de sens, et il n'existe pas de chemin de mise à jour entre une bêta et une version stable.
Les prérequis serveur à vérifier en premier#
La migration commence par l'hébergement, pas par PrestaShop. Les points suivants viennent de la documentation développeur officielle et des notes de la 9.2 :
- PHP 8.1 minimum pour la 9.0, avec les versions 8.2, 8.3 et 8.4 supportées. La 9.1 étend le support à PHP 8.5, aujourd'hui la version recommandée. La 8.x tournait encore sur des PHP plus anciens : si votre serveur est en 7.4 ou 8.0, la montée de PHP est un chantier à part entière.
- MySQL 5.7 ou MariaDB 10.2 minimum, et le réglage PHP
allow_url_fopenactivé (exigé par la 9.2). - Node 20 si vous compilez vous-même les assets d'un thème ou d'un module.
Ce qui change sous le capot entre la 8 et la 9#
PrestaShop 9 passe de Symfony 4.4 à Symfony 6.4 (LTS). Ce saut casse des habitudes de développement, et c'est là que se logent les incompatibilités de modules :
- Guzzle est remplacé par le client HTTP de Symfony, SwiftMailer par Symfony Mailer (le chiffrement SSL n'est plus proposé pour l'envoi d'e-mails : TLS ou aucun), et Tactician par Symfony Messenger. Un module qui embarquait ou utilisait ces bibliothèques doit les intégrer lui-même.
- Les contrôleurs d'administration modernes reposent sur l'injection de dépendances : la méthode
get()de l'ancien contrôleur de base ne fonctionne plus, il faut passer parPrestaShopAdminController. - Le singleton
Contextest déconseillé au profit de services dédiés (contexte employé, boutique, devise, langue). - La mise en page du back-office est entièrement gérée par Symfony et Twig, et plusieurs hooks ont disparu, notamment ceux des anciennes pages produit et des contrôleurs de connexion à l'administration.
La checklist de migration en 8 étapes#
1. Inventorier l'existant#
Listez la version exacte de PrestaShop, la version de PHP, le thème, et chaque module installé avec son éditeur et sa version. Repérez les modules désactivés mais toujours présents : ils compliquent la migration sans rien apporter.
2. Interroger chaque éditeur de module#
Demandez par écrit si le module est compatible PrestaShop 9 et depuis quelle version. Les modules de paiement, de livraison et de promotions sont prioritaires, car ils touchent le tunnel de commande. Un module sans réponse est un module à remplacer ou à faire adapter.
3. Auditer le thème et les surcharges#
Un thème enfant, des overrides de classes ou des templates modifiés doivent être relus un par un. Ce sont eux qui cassent le plus souvent lors d'un changement de version majeure.
4. Préparer PHP et la base de données#
Alignez la version de PHP sur les prérequis ci-dessus, en la testant d'abord sur la copie de préproduction et non sur le site en ligne.
5. Sauvegarder fichiers et base#
Une sauvegarde complète, avec un test de restauration, avant toute opération. Une sauvegarde jamais restaurée n'est pas une sauvegarde.
6. Migrer une copie, pas la boutique en ligne#
Clonez la boutique sur un environnement de préproduction, lancez la mise à jour sur cette copie et corrigez ce qui casse. Le site en ligne ne bouge pas tant que la copie n'est pas validée.
7. Faire une recette sur les parcours qui rapportent#
Testez de bout en bout : ajout au panier, choix de livraison, paiement, e-mails transactionnels, génération de facture, import du catalogue, moteur de recherche interne. Sur mobile comme sur ordinateur.
8. Basculer avec un plan de retour arrière#
Choisissez un créneau de faible trafic, gelez les commandes pendant l'opération, et gardez la sauvegarde sous la main pour revenir en arrière si un parcours critique ne fonctionne pas.
Récapitulatif des points de contrôle#
| Point de contrôle | Pourquoi | Comment le vérifier |
|---|---|---|
| Version de PHP | PHP 8.1 minimum, 8.5 recommandé | Phpinfo ou console d'hébergement |
| Modules tiers | API Symfony et hooks modifiés | Réponse écrite de l'éditeur, puis test sur la copie |
| Envoi d'e-mails | SwiftMailer remplacé, SSL abandonné | Envoyer un e-mail de test en TLS |
| Thème et overrides | Templates et classes surchargés | Comparaison fichier par fichier |
| Tunnel de commande | Le plus critique pour le chiffre d'affaires | Commande complète de test avec chaque moyen de paiement |
Faut-il migrer maintenant ou rester en 8.2 ?#
Tant que la 8.2 reçoit des correctifs de sécurité, une boutique stable n'est pas en danger immédiat. Mais plus la migration est repoussée, plus l'écart de version et le nombre de modules à adapter grandissent, et le coût avec eux. Le bon moment se prépare : inventaire et questions aux éditeurs peuvent être faits dès maintenant, sans aucun risque pour la boutique en ligne.
Pour la 9.2, notre recommandation est d'attendre une version corrective (9.2.1 ou suivante) avant de la déployer en production, comme pour toute nouvelle version mineure d'un logiciel qui gère des paiements. Si vous préférez déléguer, notre agence assure la migration de version PrestaShop de bout en bout, de l'audit à la recette. Vous pouvez aussi découvrir notre expertise PrestaShop.
Questions fréquentes#
Quelle version de PHP faut-il pour PrestaShop 9 ?#
PHP 8.1 minimum. La 9.0 supporte les versions 8.2, 8.3 et 8.4, et la 9.1 ajoute PHP 8.5, qui est la version recommandée.
Peut-on passer de PrestaShop 8 à 9 directement sur le site en ligne ?#
C'est fortement déconseillé. Migrez d'abord une copie de préproduction, corrigez les incompatibilités de modules et de thème, puis basculez avec une sauvegarde testée et un plan de retour arrière.
Mes modules fonctionneront-ils sur PrestaShop 9 ?#
Pas automatiquement. Le passage à Symfony 6.4, le remplacement de Guzzle, SwiftMailer et Tactician et la suppression de certains hooks obligent les éditeurs à publier des versions compatibles. Demandez-leur une confirmation écrite pour chaque module.
Faut-il attendre la version stable de PrestaShop 9.2 ?#
Pour une boutique en production, oui : la 9.2 n'en est qu'à la release candidate. Testez-la sur une copie, et attendez de préférence une version corrective avant de la déployer.
Article rédigé le 29/09/2026 par l'équipe Websource à partir des sources citées ci-dessus, puis relu avant publication. Une information vous semble inexacte ou datée ? Signalez-le nous, nous corrigeons.







