Changement d'adresse de commande : libre-service client : installation et aide

Démarrage rapide

  1. Importez et installez le fichier ZIP du module via Modules > Gestionnaire de modules, puis cliquez sur Configurer.
  2. Dans Paramètres du changement d'adresse par le client, vérifiez Statuts de commande autorisés et Âge maximal de la commande. L'installation sélectionne les statuts natifs disponibles liés au paiement, à la préparation et aux commandes en attente de réapprovisionnement, avec un délai de 24 heures.
  3. Renseignez E-mail de notification du marchand, ou laissez ce champ vide pour utiliser l'adresse e-mail de la boutique de la commande. Choisissez si l'option Envoyer une confirmation au client doit rester activée.
  4. Vérifiez Règle de transporteur pour l'adresse de livraison. Si vous choisissez une règle d'autorisation ou de blocage, sélectionnez les transporteurs dans Transporteurs restreints, puis cliquez sur Enregistrer.
  5. Connectez-vous à un compte client disposant d'une commande récente de produits physiques dans un statut autorisé et d'au moins deux adresses enregistrées. Ouvrez le détail de cette commande.
  6. Cliquez sur Gérer les adresses ou Modifier, choisissez une adresse de remplacement pour une adresse modifiable, puis cliquez sur Confirmer les modifications. Un formulaire indépendant utilise Modifier l'adresse à la place.
  7. La commande affiche sa nouvelle adresse. De retour sur la page de configuration, saisissez son ID commande numérique dans Recherche dans l'audit des changements d'adresse, puis cliquez sur Charger les entrées d'audit.

Manuel de configuration

Installer et ouvrir le module

Installez le ZIP via le gestionnaire de modules du back-office, puis cliquez sur Configurer pour Order Address Change: Customer Self-Service. Le formulaire de configuration et la recherche dans l'audit située en dessous s'ouvrent. Le menu Order Address Change propose également les pages Configuration et Integrity.

Les commandes destinées aux clients apparaissent sur la page de détail de la commande dans leur compte. Le thème doit afficher le hook displayOrderDetail. Les clients doivent se connecter avec un compte enregistré et ouvrir leur propre commande dans la boutique où elle a été passée. Les commandes passées en tant qu'invité ne disposent pas de panneaux de modification d'adresse.

En multiboutique, sélectionnez une boutique individuelle avant d'enregistrer ses paramètres. Les valeurs enregistrées dans le contexte de toutes les boutiques ou d'un groupe de boutiques deviennent les valeurs globales par défaut ; ce module ne conserve pas de paramètres distincts au niveau du groupe. Les valeurs enregistrées pour une boutique individuelle priment sur les valeurs globales. L'éligibilité des clients et les destinataires des notifications dépendent de la boutique de la commande.

Configurer l'éligibilité des clients

Ouvrez Paramètres du changement d'adresse par le client et vérifiez ces champs avant de cliquer sur Enregistrer.

Paramètre Valeur par défaut Fonction
Statuts de commande autorisés Statuts natifs disponibles pour l'attente de paiement par chèque, par virement bancaire et de validation du paiement à la livraison, le paiement accepté, la préparation et les commandes en attente de réapprovisionnement payées ou non payées. Autorise les modifications uniquement si le statut actuel de la commande figure parmi les statuts sélectionnés. Les noms disponibles proviennent de votre boutique. Vider la sélection désactive les modifications par les clients. Si aucun des statuts prévus à l'installation n'est trouvé, la sélection initiale est vide.
Âge maximal de la commande 24 heures Définit le délai à compter du passage de la commande. Utilisez un nombre entier positif d'heures. Zéro ou une valeur enregistrée invalide désactive les modifications ; cela ne signifie pas un délai illimité.

Ces paramètres s'appliquent à la livraison comme à la facturation. Ils ne suppriment pas les limites distinctes liées à la facturation et au traitement logistique décrites ci-dessous.

Pour qu'un client puisse effectuer une modification, la commande doit contenir au moins un produit physique encore présent dans le catalogue. Les commandes sans ligne de produit ou ne contenant que des produits virtuels sont bloquées. Un panier ayant généré plusieurs enregistrements de commande, une commande comportant plusieurs enregistrements d'expédition ou un ancien panier PrestaShop utilisant plusieurs adresses de livraison sont également bloqués.

Les modifications de l'adresse de facturation sont bloquées dès qu'un enregistrement de facture, un numéro de facture ou une date de facture existe.

Les modifications de l'adresse de livraison sont bloquées lorsqu'un suivi est attribué, que des documents de livraison existent ou que le statut actuel ou un statut antérieur est marqué comme expédié ou livré. Repasser une commande à un statut autorisé ne supprime pas son historique d'expédition. Le traitement en entrepôt peut également bloquer les modifications de l'adresse de livraison.

Restreindre les modifications de livraison par transporteur

Utilisez Règle de transporteur pour l'adresse de livraison avec Transporteurs restreints.

Paramètre Valeur par défaut Fonction
Règle de transporteur pour l'adresse de livraison Aucune restriction de transporteur Aucune restriction de transporteur ignore la liste des transporteurs sélectionnés. Autoriser uniquement pour les transporteurs sélectionnés autorise les modifications de livraison uniquement pour les transporteurs de la liste. Bloquer pour les transporteurs sélectionnés empêche les modifications de livraison pour les transporteurs de la liste.
Transporteurs restreints Aucune sélection Utilisez Transporteurs sélectionnés pour choisir les transporteurs auxquels la règle s'applique, puis cliquez sur Enregistrer.

Le mode d'autorisation avec une sélection vide bloque toute modification de livraison. Le mode de blocage avec une sélection vide n'exclut aucun transporteur, mais une règle active d'autorisation ou de blocage bloque tout de même une modification de livraison si le transporteur de la commande ne peut pas être identifié.

Par exemple, utilisez le mode de blocage pour empêcher les modifications avec des transporteurs proposant des points relais ou des consignes à colis. La règle utilise le transporteur déjà attribué à la commande et n'affecte pas les modifications de facturation.

Les sélections de transporteurs sont résolues lors de l'enregistrement. Les références de transporteurs enregistrées restent valables après les modifications habituelles des transporteurs dans PrestaShop. Les conditions de sélection ne sont pas conservées : à la réouverture du formulaire, les transporteurs correspondants apparaissent dans une liste explicite. Pour inclure de nouveaux transporteurs correspondant aux conditions, appliquez à nouveau ces conditions et enregistrez.

Modifier une adresse sur une commande passée

Avec les mises en page d'adresses prises en charge, la page de commande affiche un bloc Adresses avec Gérer les adresses. D'autres mises en page peuvent afficher un bouton Modifier à côté de chaque adresse ou des panneaux indépendants Modifier l'adresse de livraison et Modifier l'adresse de facturation.

  1. Ouvrez Gérer les adresses ou Modifier.
  2. Choisissez une autre adresse enregistrée pour la livraison, la facturation ou les deux. L'adresse marquée Actuelle est affichée à titre de référence et ne peut pas être sélectionnée comme remplacement.
  3. Si l'option est proposée, laissez M'envoyer une confirmation de cette modification par e-mail cochée pour recevoir une copie, ou décochez-la pour refuser la copie pour cet envoi.
  4. Cliquez sur Confirmer les modifications. Seuls les types d'adresse pour lesquels un remplacement a été sélectionné sont envoyés. Sans boîte de dialogue, validez chaque panneau avec Modifier l'adresse.

Utilisez Ajouter une nouvelle adresse ou Modifier l'adresse pour ouvrir le formulaire d'adresse habituel de PrestaShop. Après l'enregistrement, revenez à la commande et actualisez la page avant de sélectionner l'adresse de remplacement. Modifier uniquement le carnet d'adresses ne réattribue pas l'adresse de la commande. S'il n'existe aucune autre adresse, la page affiche Ajoutez une autre adresse à votre compte avant de modifier cette commande. et propose Ajouter une nouvelle adresse.

Les adresses de remplacement doivent appartenir au client de la commande, être actives et être des adresses de client, et non de fabricant, de fournisseur ou d'entrepôt.

Une modification acceptée met à jour l'adresse attribuée à la commande et à son panier d'origine. Sur les versions de PrestaShop antérieures à la version 9, les modifications de livraison mettent également à jour les adresses attribuées aux lignes de panier correspondantes et aux personnalisations. Le module conserve les prix existants, les frais de livraison, les montants de taxe, le transporteur et le contenu de la commande. Les enregistrements de facture existants ne sont pas réécrits.

Les demandes de modification des adresses de livraison et de facturation sont traitées séparément, même lorsque les deux sont sélectionnées dans la même boîte de dialogue. L'une peut réussir alors que l'autre est refusée. Si Toutes les adresses n'ont pas pu être modifiées. Vérifiez les détails ci-dessous. apparaît, vérifiez chaque adresse et son message avant de réessayer. Une modification d'adresse réussie n'est pas annulée si l'autre échoue.

Configurer et recevoir les notifications

Paramètre Valeur par défaut Fonction
E-mail de notification du marchand Vide Envoie les notifications de modification par les clients à cette adresse. Si elle est vide, le module utilise l'adresse e-mail configurée pour la boutique de la commande. Une adresse e-mail valide du marchand doit pouvoir être déterminée pour permettre les modifications par les clients.
Envoyer une confirmation au client Oui Envoie une confirmation à l'adresse e-mail du compte du client de la commande après une modification réussie, sauf si le client refuse la copie pour cet envoi. La désactivation supprime le choix de confirmation proposé au client.

Pour chaque modification d'adresse client enregistrée, le module tente d'envoyer une notification au marchand. Le client ne peut pas désactiver ce message. Modifier la livraison et la facturation ensemble peut générer deux messages au marchand et deux confirmations au client.

Le message au marchand comprend la référence et l'ID de la commande, le client, le type d'adresse, l'ancienne et la nouvelle adresse, l'heure de modification, l'auteur, l'adresse IP, l'ID d'événement, le module source et un lien vers la commande dans le back-office. La confirmation au client comprend la référence de commande ainsi que les adresses précédente et de remplacement.

Les messages au marchand utilisent la langue par défaut de la boutique ; les confirmations au client utilisent la langue de la commande. Des modèles sont fournis en anglais, français, allemand, espagnol, italien et polonais. Si aucun modèle n'est fourni pour la langue souhaitée, le module utilise l'anglais installé, puis une autre langue installée disposant de modèles fournis. Si aucune n'est disponible, il journalise un échec d'envoi.

Les tentatives d'envoi ont lieu après l'enregistrement de l'adresse et de l'entrée d'audit. Un échec d'envoi n'annule pas la modification. Soumettre une adresse déjà attribuée ne crée aucune nouvelle entrée d'audit et n'envoie aucune notification.

Consulter l'historique des modifications d'adresse

Ouvrez la page de configuration et faites défiler jusqu'à Recherche dans l'audit des changements d'adresse. Saisissez l'ID commande numérique, et non la référence de commande, puis cliquez sur Charger les entrées d'audit.

La section Entrées d'audit (ajout uniquement) affiche jusqu'à 100 entrées pour cette commande, de la plus récente à la plus ancienne. Les colonnes sont ID d'audit, ID d’événement, Type, Ancienne adresse, Nouvelle adresse, Acteur, ID de l'acteur, Source, Destinataire marchand, IP et Modifié. Les colonnes des anciennes et nouvelles adresses contiennent des ID d'adresse. Aucune action de modification ou de suppression n'est proposée.

Chaque entrée enregistrée contient également des instantanés des anciennes et nouvelles coordonnées, ainsi que les ID de commande, panier, boutique et client. Ces instantanés ne sont pas affichés sous forme de vue détaillée dans cette liste. Destinataire marchand indique le destinataire prévu, et non la bonne réception de l'e-mail.

Dans le contexte d'une boutique individuelle, la recherche est limitée à cette boutique. Les contextes de toutes les boutiques et de groupe de boutiques recherchent par ID de commande sans ce filtre de boutique. Aucune entrée d'audit trouvée pour cette commande. signifie qu'aucune modification enregistrée ne correspond à la recherche ; le simple ajout d'une adresse ou une tentative de modification refusée ne crée aucune entrée.

Utiliser les intégrations d'entrepôt et de back-office

Lorsque la table des expéditions de mprwarehouserevolution existe, les modifications de livraison par les clients sont bloquées si la commande possède une expédition dont le statut n'est pas 7, y compris une expédition sans statut. Cette vérification s'applique indépendamment des statuts de commande autorisés sélectionnés. Le message destiné au client est L'adresse de livraison ne peut plus être modifiée après le début de la préparation.

D'autres modules peuvent écouter actionOrderAddressChanged après l'enregistrement d'une modification. Ce hook fournit les ID d'événement et d'audit, les ID de commande, panier, boutique et client, le type d'adresse, les anciens et nouveaux ID d'adresse et leurs instantanés, l'auteur et le module source. Demandez à votre intégrateur d'utiliser l'ID d'événement pour éviter de traiter deux fois la même modification. Un échec d'un écouteur est journalisé après que la modification a déjà été enregistrée.

Les modules de back-office peuvent également utiliser la passerelle de modification d'adresse par les employés de ce module. Ce module n'ajoute pas son propre formulaire de modification d'adresse pour le marchand. Une intégration doit utiliser une session employé authentifiée, disposer du droit de modification dans son contrôleur de module actif et agir dans le périmètre de boutiques actuel de l'employé.

Les modifications par les employés nécessitent un motif et la confirmation de tous les avertissements de livraison actuels. Elles contournent les restrictions client portant sur le statut, l'ancienneté, l'adresse de notification et les produits physiques. L'historique d'expédition, le suivi, les documents de livraison, le traitement en entrepôt, les factures existantes et les restrictions de transporteur deviennent des avertissements de livraison à confirmer. Les modifications de l'adresse de facturation après émission d'une facture, les adresses invalides, les données de commande incohérentes, les commandes fractionnées, les enregistrements d'expédition multiples et le stockage non sécurisé en base de données restent bloqués.

Les modifications par les employés créent des entrées d'audit identifiant l'employé et le module source et déclenchent le même hook d'événement. Ce module désactive ses e-mails au marchand et au client pour les modifications par les employés.

Résoudre les problèmes de modification d'adresse

Si aucune commande de modification destinée aux clients n'apparaît, vérifiez que le module est activé, que le client est connecté avec un compte enregistré et que la commande appartient à ce client et à cette boutique. Vérifiez que le thème affiche displayOrderDetail. Une sélection vide de statuts autorisés, un délai invalide, un destinataire marchand invalide ou des tables requises absentes ou n'utilisant pas InnoDB entraînent le masquage des panneaux du module.

Ouvrez Integrity pour consulter Schéma de la table d'audit, Stockage transactionnel, Configuration du changement d'adresse, Méthode d'envoi des e-mails, Modèles d'e-mail de changement d'adresse et Hook d'événement de changement d'adresse. Les vérifications personnalisées du module signalent les problèmes sans réparation automatique. Demandez à votre administrateur de restaurer les tables manquantes ou de corriger leur moteur de stockage lorsque Stockage transactionnel signale un problème. Les tables requises pour les modifications d'adresse doivent utiliser InnoDB.

Message Action à effectuer
Cette commande ne peut plus être modifiée en ligne. Veuillez contacter la boutique. Comparez le statut actuel de la commande avec Statuts de commande autorisés.
Le délai autorisé pour les changements d'adresse en ligne est dépassé. Vérifiez l'heure de passage de la commande et Âge maximal de la commande.
L'adresse de facturation ne peut plus être modifiée après la création d'une facture. Traitez la demande avec la boutique ; modifier les statuts autorisés ne supprime pas la limite liée à la facturation.
L'adresse de livraison ne peut plus être modifiée après l'attribution d'un numéro de suivi. Vérifiez les informations de suivi de la commande.
L'adresse de livraison ne peut plus être modifiée après la création des documents de livraison. Vérifiez le bon de livraison, le numéro de livraison et les dates de livraison.
L'adresse de livraison ne peut plus être modifiée après le début de l'expédition. Vérifiez à la fois le statut actuel et l'historique des statuts expédié ou livré de la commande.
L'adresse de livraison ne peut pas être modifiée pour le mode de livraison utilisé sur cette commande. Vérifiez la règle de transporteur, les transporteurs sélectionnés et le transporteur de la commande.
L'adresse sélectionnée n'est pas disponible. ou L'adresse sélectionnée n'est plus active. Actualisez la commande et sélectionnez une adresse active dans le compte du client.
Le jeton de sécurité n’est pas valide. Actualisez la page et réessayez. Actualisez la page de détail de la commande et renvoyez la demande depuis cette page.
La commande est en cours de mise à jour par un autre processus. Veuillez réessayer dans un instant. Patientez brièvement, actualisez la commande et réessayez.
Les adresses de la commande sont incohérentes. Veuillez contacter la boutique. Demandez à votre administrateur de vérifier que la commande et son panier d'origine ont les mêmes adresses attribuées.
La date de la commande ne peut pas être vérifiée. Veuillez contacter la boutique. Demandez à votre administrateur de vérifier la date de commande et l'heure du serveur.
Nous ne pouvons pas vérifier pour le moment que cette adresse peut être modifiée. Veuillez contacter la boutique. Consultez les résultats d'intégrité et les journaux du serveur pour rechercher un échec lié aux données de commande ou à une requête en base de données.
La sélection de transporteurs n'a pas pu être enregistrée. Rechargez la configuration, vérifiez la règle de transporteur et les transporteurs sélectionnés, puis enregistrez à nouveau. D'autres paramètres peuvent déjà avoir été enregistrés.
Le journal d'audit n'a pas pu être chargé. Demandez à votre administrateur de vérifier la table d'audit et l'accès à la base de données.

Si des notifications manquent, vérifiez la configuration e-mail de la boutique et les langues des modèles installés. L'intégrité signale L'envoi d'e-mails PrestaShop est désactivé. lorsque l'envoi d'e-mails est désactivé, et SMTP est sélectionné mais le serveur SMTP est vide. pour ce problème de configuration. Les échecs d'envoi sont journalisés avec le préfixe mprorderaddresschange mail failure, l'ID d'événement, la commande, la boutique, le destinataire et le motif. La page de configuration ne propose aucune action de renvoi des notifications.

Après un échec d'enregistrement, vérifiez les adresses actuelles et les entrées d'audit de la commande avant de soumettre à nouveau. Les échecs de transaction sont journalisés avec mprorderaddresschange transaction failure ; les échecs d'affichage de la boutique sont inscrits dans le journal d'erreurs du serveur avec mprorderaddresschange presentation failure.

Désactiver ou désinstaller

Désactivez le module dans le gestionnaire de modules pour désactiver ses commandes de modification destinées aux clients et sa passerelle employé. Les adresses précédemment attribuées et enregistrées restent en place.

La désinstallation supprime le menu d'administration du module, la configuration enregistrée et les préférences d'administration. Elle conserve la table d'audit des modifications d'adresse et ses enregistrements. Elle ne rétablit pas les anciennes adresses de commande et ne supprime pas les adresses des clients.

Compatibilité

Nécessite PrestaShop 1.6.1.0 ou version ultérieure et PHP 7.1 ou version ultérieure.

Questions

6

Le client peut-il saisir une adresse entièrement nouvelle ?

Les clients choisissent une adresse enregistrée dans leur propre carnet. Ajouter une nouvelle adresse ouvre le formulaire standard de PrestaShop ; ils reviennent ensuite à la commande et actualisent la page avant de la sélectionner. Le serveur vérifie que l’adresse de remplacement appartient au client et est active.

Le changement d'adresse recalcule-t-il les frais de port ou les taxes ?

Non. Le module réattribue les adresses de la commande et du panier sans recalculer les prix, les frais de livraison, les taxes ni les totaux. Les enregistrements de facturation et de livraison existants ne sont pas réécrits. Les restrictions de facturation et d’expédition restent applicables.

Peut-on encore changer une adresse après facturation ou expédition ?

L’adresse de facturation est verrouillée dès qu’il existe des éléments de facturation. L’adresse de livraison est verrouillée en présence de suivi, de documents de livraison, de statuts actuels ou antérieurs expédié/livré ou d’une expédition d’entrepôt active prise en charge. Votre règle de transporteur facultative peut aussi bloquer son changement. Le serveur revérifie ces règles à l’enregistrement.

Existe-t-il une trace de qui a changé quoi ?

Chaque changement enregistré conserve la commande, son auteur, les anciens et nouveaux ID d’adresse, les instantanés des deux adresses, l’adresse IP et l’heure. Dans la configuration, renseignez ID commande et cliquez sur Charger les entrées d’audit. La table d’audit en ajout seul est conservée à la désinstallation.

Quelles commandes sont éligibles au changement d'adresse ?

Le client doit être connecté, être titulaire de la commande dans la boutique actuelle et respecter vos paramètres de statut autorisé et d’ancienneté maximale. Au moins un produit physique doit encore figurer au catalogue. Les commandes invitées, les commandes issues d’un panier fractionné, les expéditions multiples et les anciens paniers à plusieurs adresses sont exclus. Les contrôles de facturation, livraison, transporteur et stockage s’appliquent aussi. L’éligibilité est revérifiée dans la transaction d’enregistrement.

D'autres modules peuvent-ils réagir à un changement d'adresse ?

Oui. Après enregistrement, le module appelle actionOrderAddressChanged avec les ID de commande, panier, boutique et client, les anciens et nouveaux ID d’adresse, leurs instantanés et les informations sur l’auteur. Les intégrations peuvent écouter ce hook. Le module tente aussi une notification à la boutique et, si activée, une confirmation facultative au client.

Problèmes connus

4

Traductions d'interface manquantes ou endommagées

RésoluMis à jour :
Corrigé dans : 1.6.4
Certains libellés du module restaient en anglais ou affichaient du texte endommagé lorsqu'une autre langue de boutique était sélectionnée.

Une sélection vide de transporteurs valait tous les transporteurs

RésoluMis à jour :
Corrigé dans : 1.6.2
L'enregistrement d'une règle sans sélectionner de transporteurs pouvait l'appliquer à tous les transporteurs.

Ancien nom d'adresse après une modification

RésoluMis à jour :
Corrigé dans : 1.3.1
Après une modification d'adresse réussie, le bloc d'adresse pouvait encore afficher l'ancien nom de l'adresse.

Focus et changement de fenêtre d'adresse

RésoluMis à jour :
Corrigé dans : 1.3.1
Le passage entre les fenêtres de livraison et de facturation pendant une requête en cours pouvait fermer la mauvaise fenêtre ou laisser le focus clavier sur une commande supprimée.

Demandes de fonctionnalités

9

Implémenté

Modification des adresses de commande par les clients

Implémenté
Les clients peuvent choisir une autre adresse de livraison ou de facturation enregistrée depuis le détail de leur commande si celle-ci respecte les conditions configurées. Les totaux existants de la commande sont conservés.

Contrôles et notifications des changements d’adresse

Implémenté
Définissez les états de commande admissibles et une limite d’ancienneté, conservez un historique des modifications et avertissez la boutique et le client par e-mail.

États de commande par défaut prêts à l’emploi

Implémenté
Les nouvelles installations sélectionnent les états de paiement et de traitement disponibles pour permettre aux clients admissibles de changer d’adresse sans configuration initiale des états.

Commandes d’adresse dans le détail de commande

Implémenté
Les clients peuvent ouvrir l’éditeur d’adresse directement depuis les blocs d’adresse de livraison et de facturation sur les thèmes pris en charge.

Fenêtre de sélection d’adresse

Implémenté
Les clients peuvent sélectionner et confirmer une adresse dans une fenêtre utilisable au clavier, avec une mise à jour immédiate sur les thèmes pris en charge.

Gestion combinée des adresses

Implémenté
Une seule action de gestion des adresses permet aux clients de modifier ensemble les adresses de livraison et de facturation et d’ouvrir le formulaire de nouvelle adresse.

E-mail de confirmation client facultatif

Implémenté
Les clients peuvent refuser l’e-mail de confirmation de leur changement d’adresse, tandis que la boutique reçoit toujours sa notification.

Restrictions par transporteur pour les changements de livraison

Implémenté
Autorisez les changements d’adresse de livraison uniquement pour les transporteurs sélectionnés ou bloquez certains transporteurs, comme les services de points de retrait.

Modifications d’adresse par le personnel via des outils compatibles

Implémenté
Les outils de back-office compatibles peuvent permettre au personnel autorisé de modifier les adresses avec un motif enregistré et une confirmation des avertissements applicables.

Journal des modifications

v1.0.0 — initial release: customer self-service delivery/billing address change with strict eligibility, append-only audit trail, merchant + customer notifications and the actionOrderAddressChanged integration hook.

Demo

Testez le module complet

  • Boutique de démo prête Découvrez une boutique de démo prête dans votre navigateur.
  • Sans inscription Ni compte, ni e-mail, ni domaine de boutique requis.

En ouvrant cette démo, vous acceptez les conditions de la démo et la politique de confidentialité.

Chargement...
Retour en haut