Configuration et intégrations · 3 novembre 2026
Comment programmer et configurer correctement les tâches cron sur une boutique PrestaShop ?
PrestaShop utilise des tâches cron pour automatiser des opérations récurrentes comme l'indexation des produits, l'envoi d'emails en file d'attente, les exports de flux ou les nettoyages de cache. Ces tâches doivent être déclenchées depuis l'extérieur via une URL ou un script shell, soit avec le cron serveur (crontab), soit via le module natif 'Planificateur de tâches'. Une mauvaise configuration entraîne des index de recherche obsolètes, des emails non envoyés ou des flux marketplace non actualisés.
Un gérant de boutique PrestaShop constate que ses produits mis à jour la veille n'apparaissent pas dans les résultats de recherche interne, ou que les emails de relance panier abandonné ne partent jamais. Dans la majorité des cas, la cause est la même : une tâche cron absente ou mal configurée. PrestaShop s'appuie fortement sur ce mécanisme pour automatiser des traitements qui, sans lui, resteraient en attente indéfiniment.
Pourquoi PrestaShop a besoin de tâches cron
Certaines opérations de PrestaShop sont trop lourdes pour s'exécuter à chaque chargement de page : réindexation du moteur de recherche, génération de sitemaps, purge du cache, envoi différé d'emails, synchronisation avec des flux marketing (Google Shopping, comparateurs de prix), ou encore exécution de modules tiers (relances paniers abandonnés, synchronisation stocks avec un ERP). Ces traitements sont déclenchés par une URL spécifique appelée régulièrement depuis l'extérieur du serveur, selon un calendrier défini.
Sans cron actif, ces tâches s'accumulent silencieusement : pas d'erreur visible en front-office, mais des données de plus en plus désynchronisées. C'est un point de vigilance fréquemment négligé après une migration ou un changement d'hébergeur.
Les deux méthodes pour déclencher les tâches cron
1. Le crontab du serveur (méthode recommandée)
C'est la méthode la plus fiable en production. Elle consiste à configurer, via SSH ou l'interface de l'hébergeur, une ligne crontab qui appelle une URL PrestaShop à intervalles réguliers avec wget ou curl. Exemple pour une réindexation quotidienne à 3h du matin :
- 0 3 * * * curl -s "https://www.monsite.fr/modules/autoupgrade/ajax-upgradetab.php?token=XXXX" > /dev/null 2>&1
Chaque module ou fonctionnalité cron génère sa propre URL avec un token de sécurité unique, visible dans le back-office (Paramètres avancés > Planificateur de tâches). Il faut copier cette URL exacte dans la configuration crontab, sans la modifier.
2. Le module natif « Planificateur de tâches » (Cron Jobs)
PrestaShop propose depuis la version 1.6 un module qui simule un cron depuis le navigateur du visiteur : chaque visite sur le site vérifie si une tâche est due et la déclenche en arrière-plan. Pratique pour un hébergement mutualisé sans accès crontab, mais peu fiable sur une boutique à faible trafic : si personne ne visite le site pendant plusieurs heures, les tâches ne se déclenchent pas. Pour un site e-commerce actif commercialement, privilégier systématiquement le crontab serveur.
Les tâches cron essentielles à surveiller
- Réindexation du moteur de recherche : module ps_facetedsearch, à exécuter au moins une fois par jour, idéalement après chaque import catalogue massif.
- File d'attente des emails : si le serveur SMTP est lent ou en file d'attente différée, le cron garantit l'envoi effectif des factures, confirmations de commande et relances.
- Nettoyage du cache et des sessions expirées : évite l'accumulation de fichiers temporaires qui ralentit le serveur sur la durée.
- Génération de flux produits (Google Shopping, Facebook Catalog, comparateurs) : un flux non régénéré depuis 5 jours peut faire disparaître des produits des canaux publicitaires sans alerte visible.
- Modules tiers : connecteurs ERP, synchronisation multistock, modules de fidélité avec expiration de points.
Points de vigilance techniques
Le token de sécurité présent dans l'URL cron change si le module est réinstallé ou mis à jour : il faut alors remettre à jour la ligne crontab correspondante, sinon la tâche échoue silencieusement avec une erreur 403. Vérifier aussi que le serveur autorise les appels curl sortants vers HTTPS, ce qui n'est pas toujours le cas sur certains mutualisés restrictifs. Enfin, sur un serveur avec plusieurs environnements (préproduction, production), s'assurer que seules les tâches de l'environnement de production sont actives, pour éviter des doublons d'envoi d'emails ou de flux.
Comment vérifier que les crons fonctionnent réellement
Dans le back-office, Paramètres avancés > Planificateur de tâches affiche la date de dernière exécution de chaque tâche. Un décalage de plusieurs jours par rapport à la fréquence prévue signale un problème. Il est recommandé de consigner ces dates dans un tableau de suivi mensuel, ou de mettre en place une alerte de monitoring externe (type UptimeRobot) sur l'URL cron elle-même pour être notifié en cas d'échec HTTP.
Besoin d'un accompagnement pour fiabiliser vos automatisations ?
La configuration des tâches cron touche à la fois l'infrastructure serveur et la logique métier de la boutique : mal réglée, elle peut coûter des ventes sans qu'aucune erreur ne s'affiche. Performeer PrestaShop met en relation les dirigeants de TPE et PME avec des prestataires PrestaShop qualifiés, sans engagement, pour auditer et sécuriser ces automatisations selon le contexte technique de chaque hébergement.
Mots-clés : cron PrestaShop planificateur de tâches crontab automatisation PrestaShop indexation produits maintenance technique