Proposez des services optionnels au checkout : emballage cadeau, assurance livraison, express ou extras sur mesure. Le client choisit ; vous décidez quand les afficher selon panier, produits, client ou catégorie. Panneau visuel avec icônes, constructeur de conditions, simulateur panier, analytics revenus et journal d'audit complet. PrestaShop 9, 8, 1.7.







Le module "Services optionnels au checkout" pour PrestaShop est un outil professionnel pour la gestion des services additionnels, tels que l'emballage cadeau ou l'assurance livraison. Il permet d'offrir des services conditionnellement selon le contexte du panier, avec une tarification flexible et dynamique (fixe, pourcentage, par paliers). Les clients sélectionnent activement les services via un panneau d'opt-in sur la page de commande. Le module propose un constructeur de règles visuelles intuitif avec plus de 35 champs de condition, ainsi qu'un tableau de bord analytique des revenus et un journal d'audit complet. Cela garantit un contrôle total et des revenus mesurables issus des services additionnels, sans codage ni gestion manuelle des SKU.
Emballage cadeau, assurance livraison, traitement express, garantie étendue, montage, packaging premium - PrestaShop ne propose aucun moyen natif d'offrir ces extras de façon conditionnelle, avec opt-in client et tarification dynamique liée au contexte du panier. Services optionnels conditionnels est un logiciel de classe enterprise pour la gestion des options au checkout : politiques visuelles, arbres de conditions imbriqués, tarification fixe/pourcentage/par paliers, simulateur de panier, tableau de bord de l'entonnoir de revenus et journal d'audit complet. Combinez conditions et services librement - arbres AND/OR imbriqués, règles multiples par politique, politiques multiples par panier - et en pratique vous disposez d'un espace quasi illimité pour construire des programmes de services avancés. Sans code. Sans dizaines de SKU manuels. Un produit masqué, une ligne de panier propre, des revenus mesurables.
Voici les capacités qui transforment les extras au checkout d'un chaos catalogue ou d'un projet de code sur mesure en canal de revenus géré. Conçu comme logiciel de classe enterprise pour les boutiques qui vendent des services additionnels - pas seulement un frais global unique.
Campagnes nommées avec arbres de conditions AND/OR imbriqués. Afficher l'emballage cadeau uniquement au-dessus de 50 €, l'assurance uniquement pour les catégories fragiles, l'express uniquement avant 14 h. Politiques illimitées, priorité par glisser-déposer, activation ou pause individuelle.
Autres : un frais global pour tous
Cases à cocher et groupes radio dans le récapitulatif panier ou au checkout. Le client sélectionne explicitement les services. Bascule AJAX met à jour le panier instantanément. Icônes, images, descriptions et badges de prix contrôlés depuis les Paramètres.
Autres : frais imposés ou produits masqués
Frais fixe, pourcentage des produits/panier/livraison/poids, ou paliers. Plafonds min/max, groupe de règles fiscales, fenêtres horaires par règle. Plusieurs services combinés sur une ligne de panier avec libellés dynamiques.
Autres : prix produit statique uniquement
35 champs panier et client avec groupes AND/OR imbriqués. Ciblez groupes, pays, produits, catégories, niveaux de dépense, poids, transporteurs, modules de paiement, historique de commandes et règles composées de quantité produit.
Autres : valeur panier minimum uniquement
Choisissez un vrai panier et client de votre boutique. Voyez exactement quelles politiques correspondent, quels services sont éligibles, les frais calculés et l'aperçu de la ligne panier - avant qu'aucun client ne soit affecté.
Autres : tester en production et prier
Cartes KPI, graphiques de tendance et tableau par service : impressions, sélections au checkout, commandes payées et revenus services. Graphique circulaire par code service. Taux d'achat basé sur les vraies commandes, pas sur des bascules de cases trompeuses.
Autres : aucune visibilité après la configuration
Impressions, sélections, désélections, services appliqués, commandes avec revenus, modifications de politiques et exécutions de simulation. Acteur, horodatage, ID panier, ID commande et instantané JSON sur chaque ligne. Export CSV inclus.
Autres : checkout boîte noire
Téléchargez toute politique en JSON, uploadez en staging, dupliquez en un clic. Images de service clonées en toute sécurité par copie. Déplacez les configurations saisonnières entre boutiques sans reconstruire les règles à la main.
Autres : reconstruire chaque saison manuellement
Options mutuellement exclusives : Standard vs Express vs Expédition prioritaire. Services pré-cochés optionnels là où la loi le permet. Libellés de groupe et icônes par offre dans un seul panneau.
Autres : cases à cocher en vrac uniquement
Ce n'est pas un frais checkout par boutique. C'est un moteur combinatoire - et c'est ce qui débloque des programmes de services optionnels avancés que PrestaShop natif ne peut pas toucher.
35 champs de condition × 3 types de tarification × 4 bases de valeur × politiques et règles illimitées = en pratique, des possibilités quasi illimitées pour des programmes de services optionnels avancés.
La plupart des boutiques gèrent les extras au checkout de l'une de ces trois façons défaillantes : un produit catalogue séparé que les clients doivent trouver eux-mêmes, un module de frais imposés qui facture tout le monde, ou du code thème sur mesure qui casse à la prochaine mise à jour. Aucun ne combine ciblage intelligent, consentement client explicite et revenus mesurables au même endroit.
Arbre de conditions visuel : groupe client, pays, total panier, produits en catégorie, poids, transporteur, mode de paiement, historique de commandes, heure de la journée et plus. Groupes AND/OR imbriqués. Les services n'apparaissent que pour les paniers éligibles.
Définissez des règles de service avec code, nom et description multilingues, icône ou image uploadée, prix fixe/pourcentage/paliers, groupe fiscal et planning. Empilez plusieurs services ou utilisez des groupes radio pour des choix exclusifs comme les niveaux de vitesse de livraison.
Panneau checkout avec cases ou radios. Le client opte - rien n'est ajouté silencieusement. Un produit masqué partagé porte toutes les sélections avec libellés panier dynamiques et total combiné. Le panier se rafraîchit via AJAX quand ils basculent ou changent la quantité.
Pourquoi c'est important : Vous ne cachez pas des frais dans la livraison et vous ne maintenez pas dix produits quasi identiques. Vous exécutez un logiciel de classe enterprise - un moteur de services conditionnels où conditions et règles de tarification se mélangent librement entre politiques et règles. Empilez-les, imbriquez-les, scopez-les - le calculateur tarife les services fixes, pourcentage et par paliers à partir des vraies lignes panier, et les stratégies de fusion gardent le résultat sous contrôle tandis que l'entonnoir de revenus prouve ce qui s'est réellement vendu.
Chaque règle de service choisit un type de montant et une base de valeur optionnelle. Plafonds min/max protègent les marges. Groupe de règles fiscales par règle. Mélangez les types librement dans une politique.
Prix forfaitaire par sélection opt-in - ex. 4,99 € emballage cadeau, 9,99 € traitement express. Simple, prévisible, idéal pour packaging et upgrades de confort.
Pourcentage du sous-total produits - ex. 2 % assurance livraison optionnelle sur marchandises fragiles. Respecte les plafonds min/max.
Pourcentage du total panier brut TTC - évolue avec la valeur commande pour services premium.
Pourcentage du montant livraison actuel - idéal pour upgrades livraison optionnels et traitement premium.
Pourcentage appliqué au poids total panier en kg - utile pour manutention et montage sur commandes volumineuses.
Prix upgrade par paliers selon tranche total panier - ex. 0-200 € → 15 € garantie, 200+ € → 29 €. Constructeur visuel de paliers dans le back-office.
Chaque exemple ci-dessous est un opt-in client : rien n'est ajouté silencieusement. L'acheteur voit un choix clair - rester avec l'expérience standard ou upgrader vers quelque chose de mieux. Vous gagnez des revenus supplémentaires uniquement quand il décide que l'upgrade en vaut la peine.
Panier ≥ 50 €. Emballage ruban-et-boîte optionnel à 4,99 €. Le client évite de re-emballer chez lui ; vous expédiez un colis prêt cadeau. Case décochée par défaut - il choisit quand c'est important.
Catégorie fragile dans le panier. Couverture optionnelle à 2 % des produits (min 2 €). L'acheteur obtient une protection remplacement sur verre et céramique - vous offrez confiance, pas une charge cachée.
Dates de décembre + expédition physique. File prioritaire optionnelle à 9,99 € - le cadeau arrive avant le 24. Livraison standard reste disponible ; l'upgrade est son choix.
Électronique dans le panier. Protection optionnelle par paliers (15 € / 29 € selon valeur commande). Le client prolonge la couverture réparation au-delà des termes fabricant ; description avec lien CGV.
Groupe client VIP. Boîte premium, papier de soie et manchon de marque optionnels à 7,50 €. Les acheteurs récurrents optent pour une sensation boutique - les invités ne voient jamais l'offre.
Mobilier volumineux dans le panier. Montage professionnel optionnel à 49 € à la livraison. Le client gagne un après-midi ; vous monétisez un confort qu'il veut activement.
Tout produit expédiable. Carte style manuscrit optionnelle à 1,99 € dans le colis. L'expéditeur ajoute une touche personnelle sans chercher une papeterie.
Groupe radio : Standard (gratuit, 3-5 jours) ou Express (+12 €, expédition lendemain). Le client choisit la vitesse quand le timing compte ; défaut sur Standard.
Catégorie frais + livraison domestique. Emballage réfrigéré optionnel à 6 €. L'acheteur garde salades et produits laitiers au frais en transit - la boîte standard reste le repli.
Catégories sensibles dans le panier. Carton extérieur neutre avec étiquette neutre optionnel à 2,50 €. Le client opte quand il veut zéro indice de marque sur le seuil.
Panier expédiable. Contribution climat optionnelle à 1 € au checkout. Les acheteurs éco-sensibles compensent leur envoi ; les autres continuent inchangés.
Avant 14 h en semaine. Remise transporteur jour même optionnelle à 8 €. Le client fait partir la commande aujourd'hui au lieu de demain - masqué automatiquement après l'heure limite.
3+ commandes passées. Emballage célébratoire optionnel à 0,99 € pour clients récurrents. Petit upgrade, grand moment de remerciement - peut être pré-sélectionné là où votre marché le permet.
Produit personnalisé dans le panier. File gravure express optionnelle à 5 €. L'acheteur passe devant la ligne de production pour un cadeau nominatif avec deadline serrée.
Commandes haute valeur ≥ 500 €. Porté en pièce au choix, déballé, emballage retiré optionnel à 39 €. Les acheteurs mobilier premium choisissent le confort plutôt que dépôt trottoir.
Pays livraison export. Documentation douanière prioritaire + suivi SMS optionnels à 15 €. Les acheteurs cross-border impatients optent ; le courrier standard reste disponible.
Catégorie beauté ou gourmet. Mini-bundle échantillons optionnel à 8 € ajouté au colis. Le client teste de nouveaux SKU avant de s'engager sur les formats complets - pur upsell qu'il peut refuser.
Checkout vendredi + transporteur week-end. Créneau samedi optionnel +14 € quand ils ne peuvent pas recevoir en semaine. Livraison semaine standard inchangée.
Plantes vivantes dans le panier. Pack engrais + guide d'entretien optionnel à 6 €. L'acheteur donne un meilleur départ à ses nouvelles plantes - case à cocher, pas surcharge jardin obligatoire.
Construisez les extras Black Friday optionnels en staging, simulez sur vrais paniers, exportez JSON en production. Même panneau opt-in, nouveaux choix upgrade - sans modification thème.
Chaque fonctionnalité expliquée en langage clair pour propriétaires de boutique et équipes merchandising. C'est un logiciel de classe enterprise - assez profond pour des configurations complexes, assez clair pour ne jamais avoir besoin d'un développeur au quotidien pour la gestion des services.
Une politique est une campagne de services nommée - vos extras fêtes, vos avantages VIP, votre stack garantie électronique. Chaque politique contient un arbre de conditions (qui est éligible) et une ou plusieurs règles de service (ce que vous proposez et à quel prix). Créez des politiques illimitées, triez par priorité par glisser-déposer, activez ou mettez en pause individuellement sans toucher au code.
Chaque règle définit : code service, libellé panier et description multilingues (conorderservices_rule_lang), type de valeur (fixe, pourcentage, paliers), base de valeur (produits, panier, livraison, poids), plafonds min/max, groupe de règles fiscales, icône ou image uploadée, type UI (case ou radio), groupe radio et libellé optionnels, flag pré-coché, priorité, dates de planning (valide du / valide au) et conditions au niveau règle optionnelles.
Arrêt au premier match termine l'évaluation après la première politique éligible - utile quand les campagnes ne doivent pas se chevaucher. La stratégie de fusion par politique contrôle comment plusieurs règles dans une politique se combinent : empiler tous les services, premier match gagne, cascade de priorité, frais le plus élevé uniquement, ou codes service uniques. Une stratégie de fusion globale par défaut dans les Paramètres s'applique aux nouvelles politiques.
La vue liste des politiques affiche statut, stratégie de fusion, nombre de règles et actions rapides. Dupliquer, exporter JSON, importer depuis fichier, ou basculer actif - tout depuis le panneau politiques avec chaque changement écrit dans le journal d'audit.
Le constructeur de conditions est un éditeur d'arbre AND/OR imbriqué - le même modèle que les moteurs de règles professionnels, rendu en groupes glisser-déposer dans votre back-office. Ajoutez un groupe, choisissez un champ, un opérateur, une valeur. Imbriguez des groupes pour une logique comme : (groupe VIP OU 5+ commandes passées) ET (total panier ≥ 100 €) ET (catégorie Soldes été a 3+ articles).
35 champs de condition couvrent le contexte panier complet : total panier, sous-total produits, frais livraison, nombre produits, nombre SKU uniques, poids, nombre règles panier existantes, nombre commandes client, dépense totale, jour semaine, heure, date, code postal, devise, pays, pays facturation, zone, groupe client, transporteur, module paiement, statut connecté/invité, produits, catégories, fabricants, fournisseurs, flags virtuel/physique, personnalisation et détection remise existante.
Champs composés combinent entité + seuil en une condition - ex. produit #123 qté ≥ 3, catégorie #45 total ligne ≥ 50 €. Les opérateurs incluent égal, différent, supérieur/inférieur, entre, dans liste, pas dans liste, contient, commence par, regex, vide et non vide.
Chaque ligne correspond exactement à ce que vous choisissez dans le menu déroulant du constructeur. Les champs numériques supportent =, ≠, <, ≤, ≥, > et between. Les champs booléens utilisent Oui/Non. Les champs recherche supportent in et not in avec multi-sélection. Les champs texte ajoutent contains, starts with et regex. Combinez n'importe quels champs en groupes AND/OR imbriqués - le moteur les revérifie à chaque mise à jour panier.
| Type de condition | Opérateurs | Exemple de valeur | Fonctionnement |
|---|---|---|---|
| Montants et taille panier | |||
| Total panier (TTC) | =, ≠, <, ≤, ≥, >, between | 150 |
Total panier brut TTC - seuil de dépense classique. |
| Total produits | =, ≠, <, ≤, ≥, >, between | 100 |
Sous-total produits uniquement ; livraison exclue. |
| Frais de livraison | =, ≠, <, ≤, ≥, >, between | 9.90 |
Montant livraison actuel dans le panier. |
| Quantité totale produits | =, ≠, <, ≤, ≥, >, between | 5 |
Somme des quantités sur toutes les lignes panier. |
| Produits uniques dans le panier | =, ≠, <, ≤, ≥, >, between | 3 |
Nombre de SKU différents (lignes produit). |
| Poids panier (kg) | =, ≠, <, ≤, ≥, >, between | 12.5 |
Poids total panier en kilogrammes. |
| Nombre de règles panier | =, ≠, <, ≤, ≥, >, between | 1 |
Combien de règles panier sont déjà appliquées. |
| Composition panier | |||
| Contient au moins un produit virtuel | = Oui / Non | Yes |
Vrai quand un article téléchargeable/virtuel est dans le panier. |
| Tous les produits sont virtuels | = Oui / Non | Yes |
Chaque ligne est virtuelle (pas d'expédition physique). |
| Contient un produit physique | = Oui / Non | Yes |
Au moins un produit expédiable est présent. |
| Panier nécessite livraison | = Oui / Non | Yes / No |
Si une livraison est nécessaire pour le panier actuel. |
| Contient un produit personnalisé | = Oui / Non | Yes |
Champs personnalisation ou customisation sur un produit. |
| Bon de réduction appliqué au panier | = Oui / Non | Yes / No |
Un autre bon ou remise règle panier est actif. |
| Règles produit composées | |||
| Quantité produit dans le panier | =, ≠, <, ≤, ≥, >, between | 123:3 |
Quantité du produit ID 123 - format productId:qty. |
| Quantité catégorie dans le panier | =, ≠, <, ≤, ≥, >, between | 45:3 |
Qté combinée en catégorie 45 - format categoryId:qty. |
| Total ligne produit dans le panier | =, ≠, <, ≤, ≥, >, between | 123:50.00 |
Total ligne pour produit 123 - format productId:amount. |
| Livraison et localisation | |||
| Devise | =, in | EUR |
Code ISO devise du panier. |
| Pays de livraison | =, in | DE |
Code ISO pays adresse livraison. |
| Pays de facturation | =, in | PL |
Code ISO pays adresse facturation. |
| Zone de livraison | =, in | Europe |
Nom ou ID zone livraison PrestaShop. |
| Code postal livraison | =, starts with | 00- |
Correspondance texte code postal adresse livraison. |
| Transporteur sélectionné | = Oui / Non | DHL Express |
Transporteur livraison actuellement sélectionné. |
| Client | |||
| Groupe client | in | VIP |
Le client appartient à l'un des groupes sélectionnés. |
| Client connecté | = Oui / Non | Yes |
Compte authentifié (pas checkout invité). |
| Client invité | = Oui / Non | Yes |
Session checkout est un invité (non connecté). |
| Commandes validées client | =, ≠, <, ≤, ≥, >, between | 5 |
Nombre de commandes passées validées pour le compte. |
| Dépense totale client | =, ≠, <, ≤, ≥, >, between | 500 |
Revenus commandes historiques totaux pour le client. |
| Catalogue dans le panier | |||
| Produit dans le panier | in | Summer dress |
ID produit spécifique(s) doivent être présents (sélecteur recherche). |
| Catégorie dans le panier | in | Outlet |
Au moins un produit de la catégorie. |
| Fabricant dans le panier | in | Nike |
Au moins un produit de la marque. |
| Fournisseur dans le panier | in | Main supplier |
Au moins un produit du fournisseur. |
| Paiement et planning | |||
| Module de paiement | =, contains | bankwire |
Nom technique du module paiement sélectionné. |
| Jour de la semaine (1-7) | =, ≠, <, ≤, ≥, >, between | 6 |
1 = lundi … 7 = dimanche (fuseau serveur). |
| Heure du jour (0-23) | =, ≠, <, ≤, ≥, >, between | 14 |
Heure d'évaluation du panier (0-23). |
| Date (YYYY-MM-DD) | =, ≠, <, ≤, ≥, >, between | 2026-11-28 |
Date calendrier pour ventes flash et fenêtres de dates. |
Les sélecteurs produit, catégorie, fabricant et groupe utilisent la recherche autocomplete intégrée. Une phrase d'aperçu live explique ce que l'arbre correspond. Les utilisateurs avancés peuvent basculer le JSON brut pour copier-coller entre environnements. Les conditions se réévaluent à chaque sync panier - ajout au panier, changement qté, connexion, changement adresse - le moteur réagit immédiatement.
14 opérateurs sont disponibles dans le constructeur. Le type de champ détermine quels opérateurs apparaissent - champs booléens utilisent = et ≠ uniquement ; champs numériques ont l'ensemble complet de comparaison.
| Opérateur | Libellé dans le builder | Usage typique |
|---|---|---|
| eq | = | Correspondance exacte - montant, Oui/Non, pays ou groupe unique. |
| neq | ≠ | Exclure une valeur - ex. invité uniquement, pas dans groupe wholesale. |
| gt / gte | > / ≥ | Seuils numériques - total panier, qté, poids, nombre commandes. |
| lt / lte | < / ≤ | Limites supérieures - heure avant coupure, taille panier max. |
| between | between | Correspondance plage - fenêtre dates, tranche dépense, plage heures. |
| in / not_in | in / not in | Appartenance liste - pays, groupes, produits, catégories. |
| contains | contains | Sous-chaîne dans texte - zone code postal, nom module paiement. |
| starts_with | starts with | Correspondance préfixe - districts code postal, préfixe nom module. |
| regex | regex | Correspondance motif pour règles code postal ou code avancées. |
| empty / not_empty | empty / not empty | Vérifications présence champ sur valeurs texte. |
Chaque règle de service choisit un type de montant : fixe, pourcentage ou paliers. Fixe utilise une valeur décimale unique. Pourcentage utilise un taux plus une base de valeur - total produits, total panier, frais livraison ou poids panier. Paliers ouvre un tableau par paliers stocké en JSON (tiers_json) avec tranches de/à et frais par tranche.
Frais min et frais max plafonnent les calculs pourcentage pour que l'assurance ne descende jamais sous 2 € ni dépasse 50 €. Le groupe de règles fiscales par règle garantit que la ligne service hérite de la TVA correcte. Les champs planning (date_from / date_to) limitent les offres saisonnières sans désactiver toute la politique.
Derrière l'UI, ConorderservicesEngine résout les règles éligibles, calcule chaque frais depuis le contexte panier live, applique la stratégie de fusion et écrit le total combiné dans un SpecificPrice dynamique sur le produit service partagé. Les puces résumé règle dans l'admin affichent la tarification active d'un coup d'œil sans ouvrir l'éditeur.
Le constructeur de paliers dans adminPolicyRules.js ajoute/supprime des lignes visuellement. Revenir de paliers à fixe préserve les autres paramètres règle. Importez une politique depuis staging, ouvrez la fiche règle, ajustez un seuil, enregistrez - les données structurées restent cohérentes.
Les services éligibles s'affichent dans un panneau checkout dédié via displayShoppingCart, displayShoppingCartFooter ou displayCheckoutSummaryTop - position configurable dans les Paramètres. Chaque ligne offre affiche case ou radio, icône/image optionnelle, nom, description et badge prix calculé.
Le client bascule les services via contrôleur AJAX front (checkout.js + endpoint ajax module). Totaux panier et libellés ligne se mettent à jour sans rechargement complet. Le panneau se rafraîchit aussi quand la qté panier change. Les événements sélection sont journalisés (service_selected, service_deselected). Les impressions sont journalisées quand le panneau s'affiche (dédoublonné par ensemble éligible).
Les services sélectionnés se synchronisent vers un produit catalogue masqué (CONORDERSVC-SERVICE) avec SpecificPrice dynamique par panier. Plusieurs sélections apparaissent comme une ligne panier unique avec libellés multilingues séparés par virgules et montant combiné. L'état panier persiste dans conorderservices_cart avec instantané éligible, JSON services sélectionnés et instantané appliqué pour sync idempotente.
Les hooks actionCartSave, hooks suppression produit panier, actionPresentCartProduct et actionProductPriceCalculation gardent la ligne service synchronisée quand le panier mute. Compatible thèmes PrestaShop 9, 8, 1.7 incluant vignettes panier Hummingbird via actionPresentProduct.
Chaque règle de service supporte une identité visuelle au checkout : uploadez JPG/PNG/GIF/WebP vers views/img/services/ ou collez une URL HTTPS externe. ConorderservicesRuleImage gère validation upload, stockage, résolution URL publique et suppression sécurisée quand les images sont remplacées ou retirées.
L'UI éditeur d'images dédiée (adminPolicyRuleImage.js) affiche aperçu live, contrôles retirer/remplacer et repli conserver-précédent pendant l'enregistrement. Lors de duplication ou import politique, les images sont clonées ou référencées en sécurité pour que les transferts staging-production ne cassent pas le visuel checkout.
Taille icône (1-256 px), position icône (gauche/centre/droite) et alignement contrôle sont des Paramètres globaux - une boutique peut afficher de grandes icônes emballage cadeau alignées à gauche tandis qu'une autre garde des cases compactes alignées à droite. Les bascules afficher/masquer nom, description, prix et icône par boutique complètent la couche présentation.
L'onglet Simulateur est un workflow en trois étapes sur les vraies données de votre base - pas un panier fictif. Étape 1 : recherchez des paniers par ID, nom client ou email. Étape 2 : choisissez un panier dans la liste live (affiche client, email, total panier, dernière mise à jour). Étape 3 : lancez l'évaluation et lisez le détail complet des résultats.
Les résultats montrent quelles politiques ont correspondu, lesquelles ont été ignorées (et pourquoi), frais calculés par règle, état éligible vs sélectionné, résolution groupe radio et aperçu ligne panier avec libellé et montant combinés. Filtre client optionnel réduit la liste panier à un compte - idéal pour reproduire un ticket support.
Chaque exécution simulation est journalisée dans le journal d'audit avec type événement simulation_run, ID panier, acteur (employé) et instantané résultat. Le merchandising peut vérifier une campagne avant activation. Le support peut expliquer pourquoi un panier client spécifique a vu ou non l'emballage cadeau - sans passer commande test sur la boutique live.
Utilisez le simulateur après chaque modification politique, avant mise en ligne fêtes, et lors d'import politiques depuis staging. C'est le filet de sécurité qui sépare la gestion services enterprise de « modifier et espérer ».
L'onglet Tableau de bord est votre salle de contrôle services optionnels. Les cartes KPI sur une période sélectionnable (30 / 90 / 180 / 365 jours) affichent : impressions panneau, sélections checkout, commandes avec services, taux d'achat et revenus services en devise boutique. Les chiffres viennent du journal d'audit - événements réels, pas estimations.
Graphiques de tendance Chart.js visualisent l'entonnoir de revenus sur trois granularités : quotidien (fenêtre configurable), hebdomadaire et mensuel. Les courbes suivent impressions, sélections, commandes payées et revenus services sur un axe secondaire. Basculez le type de graphique par défaut dans les Paramètres. Un graphique circulaire décompose les revenus payés par code service pour voir quels extras convertissent réellement.
Le tableau par service liste chaque code service avec impressions, sélections, commandes, revenus et taux d'achat. Les sélections sont une étape entonnoir - commandes et revenus sont la vérité KPI (évite métriques vanité des bascules case qui ne convertissent jamais). Les entrées audit récentes remontent sur le tableau de bord pour dépannage rapide.
Pour agences et opérateurs multiboutique : le tableau de bord répond à la question que le merchandising pose toujours - « Nos extras checkout se vendent-ils vraiment ? » - avec des données, pas l'intuition.
L'onglet Journal d'audit dédié est un journal d'événements complet - pas un fichier debug enterré dans les logs serveur. Chaque ligne stocke horodatage, type événement, acteur (nom employé, nom client ou SYSTEM), résumé lisible, référence commande liée, code service, montant frais, ID panier et ID politique/règle.
20+ types d'événements sont suivis :
Cliquez Voir sur une ligne pour ouvrir une modale détail avec l'instantané JSON complet - lignes service appliquées, diff politique, sortie simulation ou payload changement paramètres. Les applications service stockent un fee_snapshot pour reconstruire exactement ce que le client a vu au checkout.
La liste supporte l'export CSV natif PrestaShop pour revues finance et conformité. Les colonnes jointes affichent référence commande, nom client et nom employé sans recoupement manuel. Sur la page commande en back-office (hook displayAdminOrder), un panneau montre quels services optionnels ont contribué à cette commande - nom service, code, montant et instantané.
Les politiques sont des documents JSON portables. Export télécharge la politique complète - arbre conditions, toutes règles, configs tarification, stratégie fusion, métadonnées images service, positions - prête pour contrôle version ou transfert vers une autre boutique. Import uploade un fichier JSON et crée une nouvelle politique avec entrée journal policy_imported.
Dupliquer clone une politique en un clic depuis le menu actions liste via ConorderservicesPolicyDuplicator - copie chaque règle, renomme avec suffixe, clone images en sécurité, journalise policy_duplicated. Parfait pour créer « Fêtes v2 » depuis « Fêtes v1 » sans reconstruire 10 règles à la main.
Workflow agence typique : construire et simuler en staging → exporter JSON → importer en production → relancer simulateur → activer. Les setups services saisonniers passent entre boutiques client en minutes. Chaque transfert est traçable dans le journal d'audit.
L'onglet Paramètres centralise le comportement boutique. Interrupteur activation/désactivation principal. Stratégie de fusion globale par défaut pour nouvelles politiques. Groupe règles fiscales par défaut pour nouvelles règles service. ID produit service - choisissez quel produit catalogue représente la ligne panier ou utilisez le produit masqué auto-créé CONORDERSVC-SERVICE.
Position affichage contrôle où le panneau checkout s'affiche : bloc intégré récapitulatif panier, page panier uniquement, récapitulatif checkout uniquement, hooks thème panier et checkout, ou sous liste produits panier. Les paramètres affichage offre contrôlent afficher/masquer nom, description, prix et icône ; taille icône (1-256 px) ; position icône (gauche/centre/droite) ; alignement contrôle case/radio.
Journal debug écrit traces moteur verbeuses pour le support. La section analytique configure période graphique par défaut (30/90/180/365 jours), fenêtres graphiques quotidien/hebdomadaire/mensuel et type graphique par défaut. L'aperçu live dans Paramètres montre comment les lignes offre apparaîtront avec les options affichage actuelles.
Chaque enregistrement paramètres journalise settings_updated dans le journal d'audit avec instantané avant/après. Pas de dérive configuration silencieuse.
Les services se matérialisent comme une vraie ligne panier sur le produit masqué partagé avec prix dynamique et libellé multilingue. Ils apparaissent dans récapitulatif panier, checkout, confirmation commande, factures et vue commande back-office - exactement comme une ligne produit normale, sans hacks thème ni montants négatifs fictifs.
Le moteur s'accroche à actionCartSave, ajout/suppression produit, init contrôleur front, validation commande (actionValidateOrder, actionValidateOrderBefore sur PS 8.1+) et présentation panier - recalcul à chaque changement contexte panier. Les colonnes table commande conorderservices_service_amount et conorderservices_service_snapshot stockent totaux services historiques sur l'enregistrement commande.
Les politiques sont scopées boutique (id_shop) pour setups multiboutique. Chaque boutique de votre groupe peut exécuter des stacks services indépendants. PrestaShop 9, 8 et 1.7 partagent une base de code via lib/prestashop9compatibility.php et ConorderservicesCompatibility.
Les libellés checkout multilingues par règle (conorderservices_rule_lang) garantissent que la ligne service s'affiche correctement dans chaque langue boutique active. 30 packs de traduction prêts à l'emploi couvrent back-office et front-office via PrestaShop l() - de l'anglais, allemand et polonais à l'espagnol, français, italien et marchés à travers l'Europe et l'Asie.
Panier évalué. Conditions correspondantes. Services tarifés. Client opté. Commande validée. Chaque étape tracée dans les lignes audit. C'est un logiciel de classe enterprise - voici l'ingénierie derrière le service optionnel que votre client a choisi au checkout.
~11 900 PHP · ~3 400 JavaScript · ~1 120 templates Smarty · ~1 375 CSS. Moteur, constructeur conditions, tableau de bord entonnoir revenus, simulateur, AJAX checkout et UI admin.
Engine, Admin, Dashboard, ConditionTree, ServiceProduct, RuleImage, PolicyDuplicator, AuditLog, Policy, Rule, CartState, Log et plus.
Fichiers de traduction prêts à l'emploi pour back-office et interface module. Anglais, allemand, polonais, espagnol, français, italien, néerlandais, finnois, portugais, slovaque et plus.
Tableau de bord, Politiques, Paramètres, Simulateur, Journal d'audit et Mises à jour - chacun un panneau autonome avec bundles JS dédiés.
Montant fixe, pourcentage (sur 4 bases de valeur) et paliers par paliers - chemins calcul dédiés dans ConorderservicesEngine.
Règles panier, client, livraison, produit et qté/montant composés avec arbres logiques AND/OR imbriqués.
Impressions, sélections, désélections, sync panier, revenus commande, CRUD politique/règle, import/export, duplication, preset, paramètres et simulation.
Tout empiler, premier gagnant, cascade priorité, frais le plus élevé, codes uniques - par politique et défaut global.
conorderservices_policy pour campagnes, conorderservices_rule + conorderservices_rule_lang pour règles et libellés, conorderservices_cart pour état sync panier, conorderservices_preset pour presets conditions, conorderservices_log pour journal audit.ConorderservicesPolicy, ConorderservicesRule, ConorderservicesCartState, ConorderservicesLog, ConorderservicesPreset avec CRUD complet et awareness multiboutique.displayHeader, actionCartSave, displayShoppingCart, displayCheckoutSummaryTop, actionValidateOrder, displayAdminOrder, actionPresentCartProduct et plus.lib/prestashop9compatibility.php - une base de code sur PrestaShop 1.7, 8 et 9.Les conditions décident qui voit l'offre. Les règles de tarification décident combien. L'opt-in client décide ce qui arrive dans le panier. Le journal d'audit et l'entonnoir de revenus prouvent ce qui s'est vendu. C'est le contrat d'ingénierie que Services optionnels conditionnels tient à chaque mise à jour panier.
18 000+ lignes de code sur 100+ fichiers module, 30 packs de traduction et v1.1.17 de développement continu. Le client coche la case. Vos règles fixent le prix. L'audit prouve la vente. Logiciel de classe enterprise pour les options checkout - emballage cadeau, assurance, express - sur lequel checkout, finance et merchandising peuvent s'appuyer quand quelqu'un demande pourquoi cette ligne panier affichait 4,99 €.
35 champs de condition, 14 opérateurs, 3 moteurs de tarification et un panneau checkout opt-in - conçu pour qu'une case à 4,99 € ne soit jamais une supposition, toujours une décision revenu mesurée soutenue par des lignes audit.







Le module "Services optionnels conditionnels à la commande" optimise et automatise l'offre de services additionnels au checkout. Affichez des extras pertinents via des règles visuelles et une tarification dynamique, maximisant vos revenus et simplifiant la gestion sans effort.
"Services optionnels conditionnels à la commande" stimule l'augmentation des ventes en proposant des extras pertinents (emballage, assurance, livraison express) basés sur des conditions de panier. Grâce à l'opt-in client et une tarification dynamique, ce module transforme intelligemment le checkout en un puissant levier de revenus supplémentaires, mesurables et réels.
Forts de 15 ans d'expérience PrestaShop, notre module "Services optionnels conditionnels à la commande" est né de l'observation des lacunes natives. Il offre une gestion avancée des extras avec opt-in client, des conditions complexes et une tarification dynamique, là où la plateforme standard échoue, transformant chaque vente additionnelle en revenu mesurable.
Le module "Services optionnels conditionnels à la commande" permet une personnalisation étendue, essentielle pour adapter précisément les extras au checkout. Grâce à son constructeur visuel, ses 35 champs de condition et sa tarification flexible, le module offre une adaptation parfaite aux besoins uniques de votre boutique, sans aucune ligne de code.
Avec "Services optionnels conditionnels à la commande", bénéficiez d'un accès intégral au code source. Ceci permet des modifications et intégrations avancées de vos offres de services au checkout, garantissant une flexibilité et une transparence totales sans limitations techniques.
La licence du module "Services optionnels conditionnels à la commande" est permanente, vous garantissant des options de services avancées illimitées. Profitez de mises à jour gratuites pendant un an, puis de renouvellements jusqu'à 90% de réduction pour maintenir vos règles conditionnelles à jour et conformes.