PS PrestaShop Intermédiaire

Prix par Pays, Boutique & Devise

Installer, créer des règles, comprendre le calcul du prix, recalculer en masse et automatiser par cron.

Mis à jour Version du module 1.0.0

Prix par Pays, Boutique & Devise applique un coefficient de marge et un arrondi psychologique par marché, puis matérialise le résultat en prix spécifiques PrestaShop natifs. Ce guide couvre l’installation, la création de règles, le fonctionnement du calcul, le recalcul en masse et l’automatisation par cron.

Installation

Le module est compatible PrestaShop 8.0 à 9.x, en mono comme en multi-boutique.

  1. Depuis le back-office, allez dans Modules > Module Manager, puis cliquez sur Téléverser un module et sélectionnez le fichier ZIP.
  2. À l’installation, le module crée ses deux tables, un onglet DF Multi Price sous Catalogue, et génère automatiquement un jeton de cron.
  3. Ouvrez la configuration du module pour régler l’application automatique, la taille des lots et récupérer l’URL de cron.

Créer une règle de prix

Rendez-vous dans Catalogue > DF Multi Price puis cliquez sur Ajouter une règle. Une règle cible une combinaison de dimensions et décrit comment fabriquer le prix final.

Ciblage

  • Boutique : une boutique précise ou « Toutes ». Avec « Toutes », les prix de base sont lus depuis la boutique par défaut.
  • Pays : le pays dont la TVA sert au calcul de l’arrondi TTC.
  • Devise : la devise dans laquelle l’arrondi psychologique est appliqué.
  • Catégorie : limite la règle à une catégorie et à ses sous-catégories, ou « Tout le catalogue ».

Calcul

  • Base de prix : prix de vente HT ou prix d’achat (les produits sans prix d’achat sont ignorés dans ce mode).
  • Coefficient de marge : multiplicateur appliqué à la base. Par exemple 1,20 pour +20 %. Utilisez 1,00 pour n’appliquer que l’arrondi.
  • Mode d’arrondi : au plus proche, toujours au-dessus, toujours en dessous, ou aucun.
  • Terminaison psychologique : x,90, x,95, x,99, x,50 ou x,00.
  • Arrondi sur le prix TTC : recommandé, car le client voit le prix TTC. La TVA du pays de la règle est utilisée.
  • Prix plancher : prix minimum TTC dans la devise de la règle. 0 signifie aucun minimum.
  • Priorité : les valeurs les plus basses sont traitées en premier lors d’un recalcul global.

Comment le prix final est calculé

L’arrondi psychologique n’a de sens que sur le montant affiché au client, c’est-à-dire le prix TTC. Le moteur suit donc cette séquence :

  1. Prix de base HT multiplié par le coefficient de marge.
  2. Conversion dans la devise de la règle selon son taux de change.
  3. Passage en TTC en ajoutant la TVA du pays de la règle.
  4. Arrondi à la terminaison choisie selon le mode retenu.
  5. Application du prix plancher éventuel.
  6. Retour au prix HT, puis à la devise par défaut, pour le stockage.

Exemple : un prix de base de 69,99 € HT, un coefficient 1,20, une TVA à 19 % et une terminaison x,99 donnent un prix affiché de 99,99 € TTC. Le prix est stocké HT en devise par défaut, mais l’affichage boutique respecte la terminaison voulue.

Les prix générés sont écrits comme prix spécifiques PrestaShop natifs. Ils sont lus par le cœur comme n’importe quel prix spécifique : aucun calcul dynamique au moment de l’affichage, donc aucun impact sur les performances du front.

Recalcul en masse

Après avoir créé ou modifié une règle, appliquez-la à tout le catalogue.

  • Depuis la liste des règles, l’action Recalculer traite une règle précise.
  • Le bouton Recalculer toutes les règles actives de la barre d’outils enchaîne toutes les règles, par ordre de priorité.

Le traitement se fait par lots AJAX avec une barre de progression. Chaque passage affiche le nombre de prix créés, mis à jour et ignorés. La taille des lots (10 à 500 produits) se règle dans la configuration du module.

Sur un très gros catalogue, augmentez la taille des lots pour réduire le nombre d’allers-retours, ou réduisez-la si votre serveur limite le temps d’exécution par requête.

Automatiser avec le cron

Un contrôleur de cron rejoue automatiquement toutes les règles actives. L’URL, protégée par un jeton, est visible dans la configuration du module et se présente ainsi :

https://votreboutique.com/index.php?fc=module&module=dfmultiprice&controller=cron&token=VOTRE_JETON

Planifiez cette URL avec la tâche cron de votre hébergeur, par exemple une fois par nuit. Le contrôleur renvoie un résumé JSON par règle (total, créés, mis à jour, ignorés). En cas de fuite du jeton, régénérez-le depuis la configuration : l’ancienne URL cesse alors de fonctionner.

Application automatique

Si l’option est activée, chaque création ou modification de produit déclenche l’application des règles actives correspondantes à ce produit. Utile pour maintenir les prix à jour sans recalcul global, notamment lors d’imports réguliers.

Suppression et désinstallation

Le module trace chaque prix spécifique qu’il génère. Ainsi :

  • Supprimer une règle retire automatiquement tous les prix spécifiques qu’elle avait créés.
  • Désinstaller le module purge l’ensemble des prix qu’il a générés, sans laisser de résidu.

Le module n’écrase jamais un prix spécifique manuel qui n’aurait pas les mêmes dimensions. En revanche, s’il existe déjà un prix spécifique aux dimensions identiques (même boutique, pays, devise, sans réduction ni plage de dates), il l’adopte pour éviter les doublons.

Dépannage

Un produit n’est pas mis à jour

Vérifiez qu’il est actif sur la boutique de la règle, qu’il appartient bien à la catégorie ciblée, et — en base « prix d’achat » — qu’il possède un prix d’achat renseigné.

Le prix affiché n’a pas la bonne terminaison

Assurez-vous que l’option « Arrondi sur le prix TTC » est activée et que le pays de la règle correspond à la TVA attendue. La terminaison est appliquée sur le TTC, pas sur le HT.

Le cron renvoie « Invalid token »

Le jeton de l’URL ne correspond plus à celui enregistré. Récupérez l’URL à jour dans la configuration, ou régénérez le jeton.

Cette page vous a-t-elle été utile ?

Toujours bloqué ? Contactez le support