Prestashop : Ajouter automatiquement les clients à un groupe lors de l’inscription

Ce tutoriel est compatible avec les versions de Prestashop suivantes :
1.4 1.5 1.6 1.7 1.7.4 1.7.5 1.7.6 1.7.7 +
Cet article est assez ancien, malgré toute l'attention que j' apporte à mes contenus il est possible que celui-ci ne soit plus d'actualité.
N'hésitez pas à me le signaler si nécessaire via le formulaire de contact.

Afin de segmenter vos clients dans prestashop, il est utile de les ranger dans des groupes clients spécifique.
Ce nouveau module Prestashop, vous permettra d’assigner automatiquement les clients aux groupes souhaités dès leur inscription en fonction de paramètres prédéfinis.

Pour l’installation, comme pour tous mes modules hébergés sur github, l’installation par zip ne fonctionne pas.
Il est nécessaire de déposer le dossier « customerautogroups » , dans le dossier « modules » de votre site via FTP.

Une fois le module installé, un nouvel onglet est disponible dans l’administration, dans « client/ Customer Auto Groups »

Autogroups menu

Vous pouvez ensuite accéder à la liste des règles et créer vos nouvelles règles.

Liste règles auto groupes

 

Les règles sont cumulables et priorisables.

Voici par exemple le formulaire d’édition d’une règle, qui ajouter automatiquement tous les client  qui sont des hommes ( çad dont le champ Client « id_gender » = 1 ) dans un groupe client « Hommes »

customerautogroups

Les conditions possibles sont liées à tous les champs des classes Customer et Address.

Avec ce module il est donc possible de vérifier toutes les conditions suivantes :

  • Clients dont le prénom est Hervé
  • Clients dont le pays est France
  • Clients dont le code postal est 67000
  • Etc.

Le module est disponible sur github : https://github.com/nenes25/prestashop_customerautogroups

Il est uniquement fonctionnel avec Prestashop 1.5 et supérieurs.
N’hésitez pas remonter les améliorations possibles 🙂

Edit :
La version 0.2.0 rajoute la possibilité de supprimer tous les groupes ou de définir ce groupe par défaut.

Edit 2016-06-03 :
Si vous souhaitez utiliser dès règles basées sur les données des commandes, un nouvelle version beta du module est disponible.
Il faut récupérer le code de la branche « dev » sur github.
Je recherche actuellement des testeurs pour étudier les différents besoins et valider le bon fonctionnement de ces nouvelle conditions.

Edit 2017-06-04 :

Le module est compatible avec prestashop 1.7 🙂

 

191 réflexions sur “Prestashop : Ajouter automatiquement les clients à un groupe lors de l’inscription”

  1. Bonjour,

    Un bug qui n’en est pas un :
    l’action se déroule à la création d’un nouveau compte.
    Mais pour la création lors du tunnel de commande, ou bien pour les comptes créés en deux temps le test des conditions liées aux adresses ne peut pas avoir lieu…
    Erreur de prestashop :
    pas de hook sur les ajouts/modifications/suppressions d’adresses…

    1. Bonjour,

      Effectivement il n’existe pas de hook direct dans le cadre de la création de compte dans le tunnel.
      Il reste possible cependant possible de se baser sur les hooks dynamiques : actionObjectCustomerAddAfter et actionObjectAddressAddAfter pour déterminer des groupes.
      C’est vrai que je n’ai pas pris en compte cette problématique.

  2. Bonjour,

    Déjà merci pour ce module, très bien fait.
    Par contre je cherche à mettre une condition, à savoir que selon le code entré par un client, je voudrais le mettre dans le groupe que j’ai créé dans la condition mais aussi le supprimer du groupe par défaut…

    donc j’ai fait ça mais ça ne fonctionne pas

    $codegroupeavant=$rule[‘condition_value’];
    $customerGroupsGC=substr($codegroupeavant,0,2);
    if ( sizeof($customerGroups)) {
    //Suppression des doublons
    $customerGroups = array_unique($customerGroups);
    if ($customerGroupsGC != ‘GC’) {
    //Ajout du client aux groups nécessaires
    $customer->cleanGroups();
    $customer->addGroups($customerGroups);
    }
    }
    else {
    $customer->addGroups($customerGroups);
    }

    pourriez vous me donner un coup de main…
    merci

    1. Bonjour,

      Je ne comprends pas trop la logique de votre code.
      Est-ce que vous pouvez m’envoyer tout le code modifié par email ?

      Vous n’êtes pas la première personne à demander une fonctionnalité permettant de supprimer les autres groupes du client.
      Je vais étudier cette possibilité, mais cela demande une petite modification de la logique du module.

      Cordialement,

  3. en fait niveau de mon code, dans le code que le client entre lors de son inscription, j’ai une chaine de caractère précise, dans ce cas ‘GC’.
    si cette chaine est présente je garde le client dans la groupe client de prestashop, dans le cas contraire je le supprime de ce groupe.

  4. Pour être plus précis, dans le formulaire d’inscription j’ai ajouter un champ

    je récupère ce code dans le authController.php et j’assigne la variable $customer->code_groupe_owned

    Ensuite j’enregistre cette valeur dans la table customer.
    Jusque là tout fonctionne

    ensuite j’ai créé une règle dans votre module pour changer les groupes et c’est là que ça se complqiue.

    Je n’ai modifié que la fin de votre fichier customrautogroups.php pour avoir ma condition, mais ce que j’ai fait ne fonctionne pas

    //Ajout du client aux groupes nécessaires
    $code_groupe_select=substr($customer->code_groupe_owned, 0,2);
    if ( sizeof($customerGroups)) {
    //Suppression des doublons
    $customerGroups = array_unique($customerGroups);
    if ($code_groupe_select != ‘GC’) {
    //Ajout du client aux groups personnalisés
    $params[‘newCustomer’]->cleanGroups();
    $customer->addGroups($customerGroups);
    }
    }
    else {
    //ajout du client au groupe par défaut et au groupe personnalisé
    $customer->addGroups($customerGroups);
    }

  5. Hi there,

    This zen_j from prestashop forum

    Hi there,

    Thanks for your reply. I a have installed v 2 of module and try to create a group sitting it gives error given below in prestashop 1.5.4.1 I am not able able to do setting prestashop 1.5

    An error occurred while creating an object. autogroup_rule (Unknown column ‘default_group’ in ‘field list’)

    I have downloaded prestashop 1.6.1.3 installed on my localhost and installed v2 of module on it. I do not get Error message in 1.6 which I am getting 1.5.4.1 but I would also like bring to kind attention that even if I set default group yes, stop processing yes default group still remain customer and default group is not set to US.

    In second case I have all also set delete group to yes, default group yes, stop processing yes and checked with one more registration found that group access for customer group is removed and access to only US group is there But still the default group remain customer and it is not set US as default group.

  6. Perfect. Just perfect herve’s module v 0.2.1 adds customer to there group and can also set them as default group. I worked with this module on prestashop 1.5.4.1 and 1.6.1.3 to group customers by country and also tested with states in both cases it provided result with success. Thank you very much herve for your work.

  7. Bonjour Hervé!

    Tout d’abord, bravo pour votre site très instructif.

    Votre module semble correspondre exactement à mes besoins.

    Néanmoins, je l’ai téléchargé sur Github, installé dans la partie module mais une fois l’installation faite, que dois-je faire?

    Merci par avance!

    1. Bonjour,

      Merci pour votre retour positif 🙂
      Une fois le module installé, un nouveau menu est disponible dans l’administration.
      Sous clients / « Customers Auto Groups »
      Dans cet onglet vous pouvez créer vos règles pour l’ajout des clients aux groupes souhaités.

      Cordialement,

  8. Merci pour votre réponse!

    Ok donc je dois avoir un soucis car dans mon Back-Office, je survole l’onglet Clients et je n’ai pas le nouveau choix « Customers Auto Groups »

    Lorsque l’on télécharge le module dans l’interface Modules, peut-on le retrouver dans la liste des modules?

    1. Oui si le module est bien installé il doit être visible dans la liste des modules installés dans le back-office.
      Si il y figure, faites une réinitialisation pour vérifier que tout passe bien.
      Quelle est votre version de prestashop ?

    1. Bonjour,

      Je vais vérifier que cela fonctionne sur les versions inférieures à la 1.6.1.0
      Mais de mon côté je n’ai pas constaté de problèmes particuliers.

      Au passage je vais étoffer l’article pour préciser ce qui apparait une fois que le module est installé.

      Cordialement,

    2. Bonjour,

      Je viens d’essayer d’installer la dernière version du module sur une version 1.6.0.9 sans problèmes particuliers.
      J’ai mis l’article à jour au passage il n’était peut être pas assez clair.

      Cordialement,

  9. Bonjour Hervé,

    Je viens juste de réessayer, mais non le module n’apparaît pas dans l’onglet client… J’ai déplacé le dossier « customerautogroups » dans le dossier modules de presta et aussi dans le dossier modules du thème mais rien n’y fait…

    Je suis dégoûté car ça correspondait totalement à mes besoins :/

    Le but pour moi était que lors de l’inscription, l’utilisateur doive sélectionner :

    Je suis un : Particulier / Professionnel

    Avec un champs de type button radio, et la personne était affecté au groupe client du même nom.

    Peut-on le faire simplement sans ce module?

    Merci beaucoup!

  10. Bonjour Hervé,
    Merci pour ce module et pour vos informations, tout fonctionne parfaitement, installation facile.
    Pour notre utilisation nous cherchons une règle pour changer le client de groupe après un achat d’un produit particulier. Il n’y a pas beaucoup d’informations à ce propos.
    Auriez vous quelques conseils suite à votre expérience dans ce domaine ?
    merci encore, et bravo pour votre travail et partage

    1. Bonjour Eric,

      Si vous souhaitez changer le groupe du client après l’achat d’un produit vous pouvez vous baser sur les hooks exécutés après le paiement d’une commande.
      displayPaymentReturn ou displayOrderConfirmation.
      L’objet order est récupérable dans les paramètres, ce qui vous permettra de changer le groupe du client en fonction de ses paramètres.

  11. Bonjour Hervé,
    Merci beaucoup pour votre travail et pour ce module. Je cherche à créer une règle tel que Eric, changer le client de groupe après achat d’un produit spécifique. J’ai regardé ce que vous proposez comme solution, mais je ne vois pas comment faire avec les conditions de règles disponibles.
    Pourriez vous me donnez quelques conseils pour faire cela ?
    Merci par avance de votre réponse et le partage de vos informations.

    1. Bonjour,

      Il n’est pour l’instant pas possible de configurer une telle règle avec ce module qui gère uniquement les conditions des clients et de leurs adresses.
      Ce point pourrait faire l’objet d’une évolution future, mais cela nécessitera un temps de dev assez conséquent.
      A l’heure actuelle pour répondre à votre demande il sera donc nécessaire de faire votre propre module qui se baserait sur les hooks displayPaymentReturn ou displayOrderConfirmation pour réaliser le changement de groupe.

      Cordialement,
      Hervé

  12. Bonjour Hervé,
    Y a-t-il moyen d’attaquer une autre table que la table customer pour la définition des règles? J’ai un module qui me permets d’ajouter des infos complémentaires pour les clients, mais les infos sont enregistrées ailleurs…
    Merci pour vos éclaircissements!

    1. Bonjour Eric,

      La vérification s’effectue sur l’objet Customer.
      Du coup si votre module surcharge cette classe et que les nouvelles propriétés sont bien définies dans l’objet, il devrait être possible de les utiliser.
      Cependant comme je ne connais pas votre module je ne peut pas vous le certifier.

      Cordialement,
      Hervé

  13. Bonjour,

    Je viens d’installer votre module qui m’a l’ai super !
    Néanmoins j’ai attribué une règle sur l’adresse mais celui ci ne change pas de groupe lorsqu’il rentre sa première adresse …
    Pouvez-vous m’aider sur ce point ? merci.

    1. Bonjour,

      Quelle est la règle que vous souhaitiez appliquer ?
      Est-ce bien lors de la création du compte, que l’erreur apparait ?
      Sans informations complémentaires je ne peux pas vous en dire plus.

      Cordialement,

  14. Bonjour et merci pour ce travail !
    Je bloque un peu pour une conditon : je souhait intégrer tous les clients renseignant un SIRET dans 1 groupe Pro.
    Quelle conditionOperator et quelle Condition Value me conseillez-vous ?
    Et le « LIKE % » permet quel choix merci.

  15. Pour info j’ai utilisé > à 1 mais je voulais savoir si on pouvait utiliser LIKE % pour définir un nombre de chiffre ? un caractère spécial pour un chiffre …
    Je ne sais pas si je suis clair 🙂

  16. Merci j’avais bien vu cela c’est pour cette raison que je posais la question mais mon problème est plus simple que dois-je inscrire dans la « Condition Value » avec le LIKE % ?
    Merci d’avance je ne suis pas très doué avec la programmation php j bricole simplement mais surement … 😉

  17. Merci beaucoup je vais me débrouiller comme un grand vous en avez déjà fait assez pour m’avancer dans ma problématique !
    Joli travail 🙂

  18. Bonjour,
    Serait il possible d’ajouter dans les conditions la table order afin de croiser les clients qui ont des commandes et changer leur groupe?
    Merci d’avance
    Bonne journée
    Sylvain

    1. Bonjour,

      Je suis en train de travailler sur une nouvelle version du module qui permettra d’utiliser des règles basées sur les commandes.
      Cependant cela va impliquer un changement de logique qui prendra du temps.

      Cordialement,

  19. Hello,
    I created a groupcode using group code generator module. But it always say

     » An error occurred while creating an object. groupcode (Unknown column ‘override_defaultgroup’ in ‘field list’)  »

    any idea on how to fix this?
    im a bit new to prestashop.

    Thanks in advance.

  20. Le module utilise les hooks actionCartSave pour l’ajout des produits et displayShoppingCartFooter pour masquer les fonctionnalites de suppression du produit sur le panier.

  21. Greetings Herve!

    First of all congrats on your module, nicely done, clean code and everything (why not commenting in English for worldwide use? all the code is in English).

    It happened to be exactly what I needed yesterday, so I quickly tested it for what I wanted it to do, it works now moved to prod 😉

    Ok well it works for me with the slight exception it does not want to save the operator chosen.

    Nothing an UPDATE ps_autogroup_rule SET condition_operator= » cannot fix, thought since I find the module pretty useful I felt like I would report this to you not everyone being that easy going with the mysql commands 🙂

    Strangely it seems I am the only one with the problem… That does not bother me too much since I am used to deal with mass changes straight from the db, however it is odd.

    I have tested on PS 1.6.0.14 and version of your module I am using is v.0.3.0, and I am under FF47 on 7 (x64).
    I havent had time to test on other plateforms or browser at the time.

    So basically if I create a rule, everything is updated/saved just fine but the condition_operator which is left empty in the db if I check straight after saving.

    If I go back on the rule, I can see on page this field is empty (which makes sense since the db is empty…).

    If I force the operator in the db myself with an UPDATE command, going back to the rule on site indeed shows the updated value selected.

    If I click save again, the value again is lost.

    I havent had time to go through all your code, I only quickly review it and could not find anything wrong with the 5 mins i had in my hands.
    I am still not even sure it a problem with your code, or maybe a problem with FF, I’ll to investigate this a little further when I have time.

    In doubt I preferred to let you know, just in case it would come from something in the module which I did not see.

    Hope this will be useful to you.

    Oh yeah last question, why did you exclude date_add from the customers fields? Any particular reasons?
    Thanks to your clear coding it took me less than 5s to find what to change and where, readded it, using it, working fine, no problem so far. But I am asking in case you did remove it on purpose for a reason you know.

    It is pretty useful to have that field in the selection list, cuz for example pretty handy to add people in a promotion group automatically for limited period of time running out at the specific date using operator < or <= or even LIKE% in some cases.

    Just my 2 cents.

    Anyway big congrats on your work and thanks for sharing it.

    Cheers!


    Muad'Dib

    1. Hello,

      Thanks for your feedback it’s great to see that the module could helps 🙂
      You’re absolutely right, i should comment my code in English rather than in french, i’ll try to update it in the next versions.

      I’ve never had such an issue, i’ve quickly tried on a PS 1.6.1.* version and it works well. I don’t know from where your issue comes from.

      In fact the date_add parameters have been exluded as the customer is assigned to the group just after this creation, so to my point of view it was not necessary to have this parameter.
      But i haven’t think about case like yours. It’s now corrected.

      Regards,
      Hervé

  22. Dear Herve,

    Many thanks for your prompt reply and also reactivity with the module update.

    Ok I have some more information for you.
    Did some additional testing after your reply (with the same module not the updated one imo) because I had a 1.6.1.4 also ready to test on.

    Doing the exact same rule has lead to the exact same conclusion, meaning it did not save.

    At this point I was like, ok Herve just tested it, it has to be something else or something wrong with my new version browser (even if out of the blue I could not think of anything which could cause this).

    Anyway instead of switching computer I decided to narrow this issue down and started testing every single value of the condition_operator one by one.

    You were right they are indeed saving on both 1.6.0.14 and 1.6.1.4, but just not the 2 of them I was using from the beginning hehehe 😉
    So we are with no doubt facing some kind of a border effect here.

    For whatever reason involved ‘<' & '<=' do not save.

    I checked isCleanHtml to see if it was the culprit, but I do not see anything wrong with it.

    I think '<' being the opening anchor in Html is causing issues with the browser interpretation / rendering.

    However once again I checked your code with this new intel, but I could not find anything inconsistent or wrong with it at first sight. Once again I am sorry I could not spend more time on it right now, but I hope the few pointers I gave you will help you figure it out.

    Maybe you'll be luckier than I was or simply have an other approach to this problem.

    Thanks again for your module I just discovered yesterday and which already opens many new possibilities for my ecommerce!

    Regards,


    Muad'Dib

    1. Hello,

      Thanks with your feedback i’ve found from where the issues comes from.
      It’s now fixed in version 0.3.2 🙂

      The problem was linked to the field type of the condition in the model class.
      I had to change it to allow html.

      Regards,

  23. Hey Herve!

    Glad I could help!
    You’ve beaten me to it i had it fixed on my side too and was about to make a pull request hehehe

    What I did myself was simply change the id you used in the list of operators for the script shell ones
    eq, ne, gt, ge, lt, le
    instead of using extended something else than [:alphanum:] ones.

    It was working fine once this changed.

    Well now that it is fixed no point making the pull request heheheh 😉

    Gj!

    Cheers!


    Muad’Dib

  24. Well since it was ready and it could allow you to keep the check to ensure the validity of the field, i went forward with my pull request anyway.

    You’ll see what you want to do with 😉

    Many thanks again for this module and the rest of your work you are sharing in this blog I went through it since I discovered it, and there are many of interesting things 😉

    Cheers!

  25. J’ai ajouté le module dans le dossier /module/ mais il ne s’affiche pas dans le backOffice,j’utilise la version 1.6.1.6 du prestashop

  26. Bonjour,

    Je souhaiterais mettre dans un groupe, tout les nouveaux clients.

    J’ai essayé de prendre comme condition : Id_Shop, et comme operator : > ou != de 1

    Mais mes client reste dans le groupe client.

    Je pense que je dois mal faire quelquechose.

    Cordialement.

    Jonathan

    1. Bonjour,

      Par définition vu que le module sers à ranger les nouveaux clients, tous les inscrits sont des nouveaux clients 🙂
      Je dirais donc que le plus simple est de mettre en place une règle qui est sera valide à chaque fois.
      Vous pouvez par exemple utiliser :
      active = 1
      email != falseemail

      Cordialement,
      Hervé

  27. Merci, effectivement avec cette règle cela fonctionne. Est il possible que le nouveau client ne soit enregistré que dans le groupe « toto » et non pas dans le groupe client et dans le groupe « toto »?

    1. Bonjour,
      Vous pouvez définir dans la règle si ce groupe doit devenir le groupe par défaut de l’utilisateur. ( Mais cette fonction est uniquement disponible si la règle est la dernière à être traitée )
      Attention cependant si vous souhaitez ajouter d’autres règles il faudra leur mettre une priorité supérieure à celle-ci.

      Cordialement,
      Hervé

  28. Merci pour votre module, une fois toutes les options comprises, il correspond tout a fait a ce qui nous manquait.
    Une question néanmoins, qui reprend la question de Jonathan mais pour un ensemble de règles.
    Tous les clients dont le pays n’est pas dans l’UE doivent allez dans un groupe XXX.
    Je fais donc une règle (placer dans le groupe XXX) par pays Non-UE acceptés et je place le groupe par défaut à XXX.

    Mais en fonction du pays analysé il se pourrait que d’autres règles sur d’autres pays existent à la suite.

    Cette ‘dernière règle’ dont vous parlez, est-elle la dernière règle « à appliquer » donc dont la condition est exacte ou la dernière règle listée, « à appliquer » ou pas.

    Dans mon cas il n’existera jamais qu’une règle à appliquer dans toute la liste de règles existantes.

    Merci d’éclaircir ce point.
    Cordialement,
    Bernard.

    1. Bonjour Bernard,

      La logique de traitement des règles est la suivantes :
      – Les règles sont récupérées par priorité.
      – Les règles continuent à être traitée tant qu’une règle définie comme « Stop processus further rules » n’est pas rencontrée. C’est celle-ci qui est considérée comme la dernière.

      Dans votre cas il faudra donc jouer avec les priorités des règles si vous souhaitez définir un groupe de client par défaut par pays.

      Cordialement,
      Hervé

  29. Merci de votre réponse mais il y a un point qui vous a échappé.

    J’ai, disons, 10 pays dont je dois placer les clients dans un et un seul groupe et ce groupe doit devenir le groupe de base des clients de ces 10 pays.

    Si je fais une règle par pays et que je stoppe à chaque pays cela ne va pas fonctionner…

    Comment résoudre ce cas avec votre module ? Il n’y a pas de priorité de règle dans mon cas…

    Une solution possible serait 3 états pour le ‘stop processing’,

    – Oui
    – Non
    – Si condition OK

    ce qui permettrait de rendre la règle ‘comme la dernière’ dès qu’une règle est remplie…

    Je viens de lire vos sources, il semblerait que tout est ok puisque vous n’étudiez le cas ‘Stop’ que si la règle s’applique.
    Dans mon cas je place un Stop à chaque règle et le tour est joué, si j’ai bien compri…
    Merci.

    En vous remerciant de votre support,
    Bernard.

    1. Bonjour,

      Oui vous avez bien compris le fonctionnement c’est bien cela.
      Il est logique que seules les règles applicables puissent arrêter le processus 🙂
      ( J’ai regroupé vos messages au passage 😉 )

      Cordialement,
      Hervé

  30. Super plugin vraiment très simple à installer et utiliser un grand merci !

    Pour ceux qui se posaient la question du Professionnel / Particulier, c’est tout à fait faisable avec ce plugin en toute simplicité !

    Il suffit de demander un champ SIRET avec la valeur « LIKE % » à [0-9]+

    Ca marche nickel pour moi, j’espère que ça marchera aussi pour vous

    Encore merci au développeur !

  31. Merci pour votre réponse, j’ai mis un peut de temps a répondre car j’essayais d’analyser un comportement étrange lié au fonctionnement de prestashop.

    Est ce que lorsque l’on enregistre un client, le process se passe de cette manière:

    – Enregistrement du client « normalement ». Prestashop enregistre le client avec le groupe client.

    Puis

    – Le module se lance et vient regarder si le nouveau client répond au condition. Si oui il le change de groupe et supprime ou non le groupe client en fonction du paramétrage du module.

    Car j’ai un « logiciel » qui vient récupérer l’information du groupe client (entre autre) et a chaque fois il me retourne un 3 (ID du groupe client dans prestashop).

    Cordialement

  32. Bonjour Hervé,

    Je veux mettre un règle qui dit que si client a acheté un produit bien spécifique alors si il va dans un groupe. Comment faire ?

    Merci de votre aide, et pour ce module !

    1. Bonjour Marion,

      Cette fonctionnalité n’est pas disponible sur la version de base qui ne permets pas d’utiliser des conditions liées aux commandes.
      La version « dev » disponible sur github mais encore en beta permettra des conditions de commandes, mais votre demande spécifique n’est pas encore implémentée.
      Si nécessaire vous pouvez créer un ticket avec une demande d’évolution sur github :
      https://github.com/nenes25/prestashop_customerautogroups/issues

      Je suis un peu surbooké en ce moment, je n’aurais je pense pas le temps de bosser sur ce module avant le début de l’année prochaine.

      Cordialement,
      Hervé

  33. Bonjour,

    Je vais tester le module qui semble être intéressant.
    En suggestion d’amélioration, peut-être mettre une option d’alerte mail lorsque la condition est appliquée par exemple.

    En tout cas bravo pour ce module

    Ed

  34. c’est excatement ce qu’il me fallait mais impossible d’installer le module prestashop me dit que l’éditeur du module n’est pas reconnu et veut m’envoyer sur addon!!! Je suis verte!! Une idée?

    1. Bonjour,
      Bien que le module ne soit pas sur addons il devrait être possible de l’installer sans problème particulier.
      Quelle est votre version de prestashop ?

      Cordialement,
      Hervé

  35. Bonjour Hervé,

    Votre module est ce que je recherche, il est très clair ainsi que vos explications d’installation.

    Je souhaite insérer un « condition type » différent. J’ai ajouté des custom fields pour l’inscription et je souhaite que lorsque la valeur de la table « custom_field_option » = 2 le client soit lié à un groupe spécifique.

    Vos conseils sont les bienvenus. Merci à vous

    Cordialement,
    Raphael

  36. Bonjour Hervé,

    Je comprends que par « Classe » Customer vous vous référrez à l’entrée de la DB correspondante: Customer, et de même pour adresse.

    Le champs « custom_field_option » est une entrée séparée/propre dans ma DB, pour laquelle il faudra créer une nouvelle classe?

    Cordialement,

    Raphael

  37. Bonjour Hervé,
    Merci Hervé d’avoir pris le temps de répondre. J’ai installé le module dézippé bien entendu par le site dans le dossier module de prestashop. Quand je suis sur le back le module est bien là mais quand je veux l’intaller voilà ce que j’ai en fenêtre pop up:
    Ce module ne peut pas être installé
    Ce module n’a pas vu être vérifié par PrestaShop.
    Ceci se produit généralement lorsque le module n’est pas distribué via notre place de marché officielle PrestaShop Addons, ou quand votre serveur n’arrive pas à communiquer avec PrestaShop Addons.

    Module
    Customers Auto groups
    Auteur
    hhennes
    Retour à la liste des modules
    Il semblerait que nous n’ayez pas installé ce module depuis PrestaShop Addons, aussi nous ne pouvons garantir qu’il réponde à nos critères de sécurité (par ex. qu’il n’ajoute pas des fonctionnalités dissimulées comme de la publicité, des liens cachés, du spam, etc…).
    Vous pouvez rechercher des modules similaires sur la place de marché officielle.
    Cliquez ici pour parcourir le catalogue de PrestaShop Addons.
    Ma version de prestashop est la 1.6.1.3
    Je râle, je peste et je suis désespérée si vous avez une idée, une solution je prends.

    Bien cordialement,

    Peggy

    1. Bonjour,

      Utilisez-vous Prestashop Cloud ?
      A priori ce problème apparait sur cette version.
      Votre utilisateur dispose-t-il de tous les droits ( superAdmin ) ?

      Cordialement,
      Hervé

  38. bonjour hervé,

    oui j’utilise Prestashop cloud pour le moment. je suis l’utilisateur principale donc superadmin. Pouvez vous m’aidez?
    Merci de votre réponse en tout cas.

    cordialement,

    Peggy

    1. Bonjour Peggy,

      Comme évoqué sur la documentation prestashop : http://doc.prestashop.com/pages/viewpage.action?pageId=26149072
      Sur la version cloud il n’est malheureusement pas possible d’installer des modules hors addons ( çad gratuits )

      Par ailleurs, PrestaShop Cloud a une limitation que la version auto-hébergée n’a pas : vous pouvez utiliser les modules et thèmes de la place de marché Addons. Les modules et thèmes qui ne viennent pas d’Addons ne sont pas considérés comme sûrs, et ne sont donc pas autorisés sur la plate-forme PrestaShop Cloud.

      Je ne peux donc malheureusement pas plus vous aider :-/

      Cordialement,
      Hervé

  39. Bonjour Hérvé,
    je recherche aussi la possibilité de pouvoir attribuer un groupe en fonction d’achat spécifique.
    Exemple :
    a l’achat d’un produit, pour une durée x le groupe serais attribuer, passer se délai le groupe serais retirer

    Je peux donner un coup de main ponctuellement je suis dev web, tout fois peux de temps dispo en se moment car je monte mon entreprise de domotique

    1. Bonjour,

      La branche dev du module sur github permets des conditions de commandes.
      Vous pouvez sans doute vous baser sur ce socle, en revanche il n’y a aucune notion de périodicité ni de taches planifiées.
      Cependant vous baser sur cette version vous permettra peu être de gagner du temps 😉

      Cordialement,
      Hervé

  40. Bonjour,

    Merci pour votre module, il va m’être d’une grande utilité !

    Une question toutefois, est-il possible de créer une condition suivante :
    Si « Customer » possède une « Règle de panier » contenant le mot « X » alors le mettre dans le groupe « Y » ?

    Merci !
    Et joyeux Noël à tous.

    PFS

    1. Bonjour,

      Malheureusement ce type de conditions n’est pas possible avec le module actuellement.
      La notion de règle de panier n’est pas rattaché au client, mais au panier du client et ce type de conditions n’existe pas 😉

      Cordialement,
      Hervé

  41. Bonjour Hervé
    Je viens de passer du cloud à un hébergement mutualisé et je peux donc à présent utiliser votre module. Merci de votre travail c’est un module très pratique. Néanmoins j’ai un petit soucis à cause du groupe visiteur de prestashop. Comment puis-je faire pour attribué un groupe automatiquement à ce groupe visiteur? Avez vous une idée?

    Cordialement,

    Peggy

    1. Bonjour Peggy,

      Désolé mais je ne comprends pas votre problématique.
      « Comment puis-je faire pour attribué un groupe automatiquement à ce groupe visiteur? Avez vous une idée? »
      Le groupe visiteur est un groupe par défaut de prestashop, qui est utilisé pour gérer les droits ou les prix des visiteurs non connectés.

      Cordialement,
      Hervé

  42. bonjour Hervé,
    je n’ai pas été très claire effectivement. Est-il possible de passer le groupe visiteur dans un autre groupe automatiquement.
    Mon problème est le suivant j’ai un groupe nommé « tarif 7 » qui correspond à des tarifs par quantité grâce à votre module le groupe Customer passe directement dans le groupe « tarif 7 » et donc peux visualiser les différents tarifs. Le groupe visiteur n’a pas accès à ces tarifs car je ne peux pas les mettre dans le bon groupe.

    J’espère que c’est un peu plus clair.

    Cordialement,

    Peggy

  43. Bonjour,

    Le module marche bien voir très bien avec ps1.6.1.10. mais en tuilisant la fonction like% cela me met bien (en choisissant le siret pour entreprise par exemple)le nouvel inscrit dans le groupe désiré mais ps me le met également dans le groupe client. Donc le nouvel inscrit est dupliqué dans 2 groupe groupe entreprise et groupe client (personnes physiques). Comment remédier à ça ? Un grand merci

    1. Bonjour,

      Si vous souhaitez que le client soit uniquement ajouté au groupe choisi, il vous suffit de mettre les options : « stop processing further rules », »Default customer Group » et « Delete all others groups » à oui.

      Cordialement,
      Hervé

  44. Bonjour,
    merci pour ce module super efficace.

    Une petite question rejoignant la toute première des commentaires.

    Est il possible de déclencher l’action lors d’une modification d’adresse ?

    Ca serait particulièrement utile notamment pour pouvoir utiliser le processus d’inscription en 2 étapes ou pour ceux qui comme moi utilisent des facebookconnect par exemple.

    Si vous aviez une piste je veux bien tester cela (a mon petit niveau).
    Cordialement.

    1. Bonjour,

      Il n’existe malheureusement pas de possibilités de faire cela facilement après la création des adresses, les événements nativement présent ne le permettent pas.
      Ce serait possible via un développement spécifique mais la problématique est également que tout changement ou création d’adresse par le client entrainerait des changements de groupes pas forcément souhaités.
      Tout ça pour dire que ça ne pourra pas être géré nativement via ce module 😉

      Cordialement,
      Hervé

  45. Très intéressant, prestashop 1.7.0.4 Est-ce que cela fonctionne pour?

    Puis-je utiliser une case à cocher dans le Registre pour attribuer un certain groupe?

    1. Bonjour,
      Pour l’instant le module n’est pas compatible avec prestashop 1.7.
      J y travaille mais j ai encore des problèmes de gestion des traductions. Le nouveau système n’est pas totalement au point…
      J espère sortir une version stable dans les prochaines semaines.

      Cordialement,
      Hervé

  46. hi herve,
    thanks for this module, i was looking for this solution for ages but I don’t really understand how to set it up.

    I would like that all users that make a registration on my website to go to group1 automatically. After that, i would like to be able to move them from group1 to group2 whenever i want.
    Can you help me set it up? or where do I look to find a guide?
    thanks,
    lorenzo

    1. Hi Lorenzo,

      As told ( in french ) in one of my previous comment, if you want to add all the new registered customers in one group,
      you just need to create a rule which will be true each time.
      For example :
      active = 1

      For your second question, you can change customers group natively in prestashop at any time.

      Regards,
      Hervé

  47. Hi herve,
    thanks for your quick response.
    as you told me I set the module with these parameters:
    Condition Field: active
    Condition Operator: =
    Condition Value: 1
    Customer Group: group1
    Priority: 0
    When a new user registers himself, the module puts the new user in 2 gruops:
    Group1 (which I choose) and customer (default group in prestashop).
    How do I set the module to put new users only in group1?
    If you explained your module in one of your posts can you link it?(even if it is in french) I’ve looked for it but I didn’t find anything.
    Thanks,
    lorenzo

  48. ok now i get it you were talking about a post in this page, I thought there was a precise page in which there were all the instructions.
    Please don’t be offended by this, but it would be very useful to have all the instructions right after the big picture at the top of the page to be more faster to understand, clearer and you would’t get all the questions after. rather than that, great work, i am sure this saved a lot of us!!
    thanks
    lorenzo

    1. I agree that i need to make a documentation ^^.
      But time is missing for it, and it’s clearly not my priority now.
      By the way, i’ve activated the wiki on the github page of the module, i’ll try to put the basic information and some samples rules.

      Regards,

  49. Bonjour,

    Votre module semble parfait par rapport à ce que l’on recherche !
    Par contre, on arrive pas à l’installer 🙁 Il y a surement une étape qu’on loupe.

    on pose le fichier via ftp (filezilla) et lorsque l’on veut l’installer on a le message suivant :
     »
    Le ou les modules suivants n’ont pas été correctement installés :

    customerautogroups :
     »

    L’icone apparait malgré tout dans « client » et lorsqu’on clique on a le message :

    « Mauvaise requête SQL
    Table ‘ovh_prestashop.pss_autogroup_rule’ doesn’t exist
     »

    On est sur la version presta 1.6.0.9

    Y aurait-il une solution selon vous ?

    Merci beaucoup en tout cas !

    Arnaud

    1. Bonjour Arnaud,

      L’erreur signifie que le module n’a pas réussi à installer une des tables du module dans la base de données.
      Vous pouvez essayer de réinitialiser le module pour voir si cela corrige le problème.
      Dans le cas contraire vous pouvez toujours essayer d’exécuter manuellement les requêtes de création de table.
      Et voir si des erreurs apparaissent.
      Les codes sont visibles sur github : https://www.pierre-lannier.fr/en/montres-homme/automatique-homme/314b133-3/#L80
      Il faut juste remplacer le prefixe par celui utilisé par votre prestashop.

      Cordialement,
      Hervé

  50. Votre module est absolument ce que je cherche depuis pas mal de temps. J’ai téléchargé te lichier en mis le dossier « customerautogroups » , dans le dossier « modules » via FTP.
    Malheureusement, je ne vois pas apparaitre l’onglet dans mon menu « clients » (Prestashop 1.7).

    Je suis plustot nouveau en Prestashop, peut etre je ne fais pas comme il faut mais j’espere quand meme que vous pouvez me guider?

  51. J’ai installé le module correctement sur Presta 1.5.6.3, mais je devrais utiliser la condition vat_number sur le client. J’ai fait diverses tentatives avec l’opérateur et la valeur, mais rien.

    Alternativement, sur company.

    Pouvez-vous m’aider? Merci

  52. Bonjour,

    Je cherchais un module pour permettre aux visiteurs de s’inscrire en tant que pro et votre module est parfait pour ça, merci à vous pour le partage!

    Bien à vous,

    Julien

  53. Bonjour Hervé ! Je viens de découvrir ce super module, malheureusement je n’ai pas accès au FTP et aux fichiers, du coup je ne sais pas à quoi correspondent les id et quelle valeur attribuer pour les dates. Par exemple, j’aimerais faire un groupe spécifiquement avec l’id date_upd (date de dernière visite il me semble) >= 6 mois, quelle valeur inscrire ?
    Merci beaucoup !

    1. Bonjour Cyrielle,

      Malheureusement le champ date_upd n’est pas mis à jour à chaque connexion du client, mais uniquement lorsque celui-ci change des informations sur ce compte ( nom / prénom / mot de passe … )
      De ce fait ceci ne fonctionnera pas comme vous le souhaitez.
      Cette information est issue de la table des connections, et n’est donc pas gérée par le module :-/

      Cordialement,
      Hervé

  54. Bonjour Herve,

    Merci pour tout votre travail, je serais très intéressé par l’utilisation de votre module mais quand je l’ai téléchargé et essayé de le télécharger dans PS1.7.2.4, il me dit que le fichier zip n’est pas valide.
    Est-ce un problème qui n’est pas compatible ou est-ce mon problème?
    Merci

    1. Bonjour José,
      Le fichier zip généré par github n’est pas compatible avec l’installation par l’administration.
      Il faut l’extraire sur l’ordinateur et envoyer le contenu du dossier dans le dossier modules de votre site par FTP.

      Cordialement,
      Hervé

  55. Merci beaucoup, Hervé

    J’ai déjà réussi à l’installer, je n’avais pas lu la place du dossier extrait dans le dossier modules, mon français n’est pas très bon

    Désolé pour le dérangement

  56. Bonjour, Hervé

    Une fois mon module installé, j’ai créé 4 types de clients, auxquels je souhaite appliquer les frais de port en fonction du montant de la commande, à savoir:

    Type 4: Montant Frais de livraison
    Type 3: Montant Frais de livraison
    Type 2: Montant Frais de livraison
    Type 1: pas de frais d’expédition

    Lorsque j’essaie de mettre ces règles dans la section de Transporteurs ne me donne l’option aux clients, invité et visiteur, mais ne me laisse pas accéder aux 4 types précédents de client.

    Seriez-vous si aimable pour me guider sur la façon d’effectuer cette tâche?

    Merci beaucoup.

  57. Désolé Hervé

    Dans mon commentaire précédent, je n’ai pas bien défini les règles:

    Type de client 4: Frais de port gratuits
    si commande > 300 €
    Type de client 3: Frais de port gratuit si commande > 150 €
    Type de client 2: Frais de port gratuit si commande > 60 €
    Si le type de client 1: Frais de port gratuit toujours

    Comment puis-je accéder à ces 4 types de clients créés avec votre module?

    Merci

    1. Bonjour José,

      Je ne comprends pas trop votre problématique.
      Les groupes clients ne sont pas créés par mon module c’est une fonction native de prestashop.

      Cordialement,
      Hervé

    1. Bonjour,

      Votre question n’est pas assez précise pour me permettre de vous répondre.
      Quelle est la version de prestashop concernée ?
      Comment est configurée la règle ?
      Est-ce qu’il existe d’autres règles qui pourraient entrer en conflit ?

      Cordialement,
      Hervé

  58. Bonjour,

    Je souhaiterais classer les clients avec une certaine url exemple : a.fresneau@convergence.direct donc toute les personne en converence.direct seront automatiquement rangé dans le groupe client grand compte. quand je fais le traitement du script dans la base ça fonctionne parfaitement mais en réel j’ai pas de retour concluant.

  59. Bonjour,

    J’ai téléchargé votre module car je souhaitais classer les clients qui ont déjà passé une première commande dans un groupe spécifique.
    Cependant, je ne trouve pas comment préciser cette condition (j’ai installé la version DEV avec filtres sur la table commandes).

    Merci de votre aide

  60. Bonjour, j’essaie d’associé plusieurs condition à la regle, j’ai essayer de faire la fonction 1 OR 40 pour les id_country, mais cela ne fonctionne pas…

    Auriez vous une solution que je puisse ajouter plusieurs condition ?

    Merci d’avance !

    1. Bonjour,
      Il n’est pas possible d’ajouter plusieurs conditions.
      Cependant si vous souhaitez des pays différents, vous pouvez faire une condition « IN » sur le id_country

      Cordialement,
      Hervé

  61. Bonjour,

    Je viens de le transférer par ftp sur un Presta shop 1.7.4, hélas n’apparait pas sous la rubrique clients. Pas encore compatible ? Merci.

    1. Bonjour,
      La version 1.7 de prestashop à changé pas mal de chose dans le formulaire de création des clients.
      L’utilisation de ce module est donc moins intéressante car les adresses ne sont plus gérées.

      Je n’ai pas testé le module sur la dernière version de prestashop.
      Quelle est l’utilisation souhaitée ?

      Cordialement

  62. Vianney

    Le module fonctionne très bien sur prestashop 1.7.4 mais tu ne le verras que dans la section « sélections » des modules. Cliques sur « installer » et le tour est joué!Merci encore Hervé pour ce module!!!!

    Bien à vous

    Peggy

  63. Bonjour,

    Ce module a l’air super, je l’ai installé mais j’ai un problème avec: cela fonctionne bien quand un client passe une commande instantanée (car lorsqu’il rentre son mail il y a toutes les infos pour la restriction (en occurrence pour moi, restriction par clients FR uniquement).

    Mais le module ne fonctionne pas lorsqu’un client crée un compte client, car le seul champ possible sur prestashop est le champ email. Seulement après avoir avoir créer son compte via un email, prestashop propose de renseigner l’adresse et le pays et donc à ce moment la votre module ne prends pas en compte la restriction.

    Savez vous comment ajouter la restriction dès le mail renseigné au moment de l’inscription ?
    merci

    1. Bonjour Yann,

      Quelle est votre version de prestashop ?
      Avec la version 1.6 de prestashop, il est possible d’afficher les informations de l’adresse lors de la création du compte client.
      Avec la version 1.7 ce n’est plus possible ce qui réduit effectivement l’intérêt de ce module.

      Cordialement,
      Hervé

  64. Bonjour,
    Est-il possible d’attribuer les clients à un groupe en particulier en fonction du nom de domaine de leur mail ? Par exemple tous les clients qui s’inscrivent avec un mail en « @exemple.fr » seront attribués à un groupe ?

    D’avance merci,
    Cordialement,
    Pauline

  65. Bonjour,
    Je viens de tester votre module sur PS 1.7.5.0, en effet avec la nouvelle gestion des adresse ca perd de son intérêt mais tout de même joli travail pour toute les autres versions !
    J’ai lut une suggestion similaire plus haut dans les com : est-il envisageable de pouvoir activer l’envoi d’un email à un email précis par rule ? Je penses que cela va bien dans l’esprit du module. Merci encore pour ce module et les tutos.
    Cordialement,

  66. je souhaiterai déplacé un client dans un nouveau groupe en fonction de sont pays, j’ai rentré des conditions

    name UE
    description clients dont le pays est dans l’UE
    Condition type address
    Condition Field id_contry
    Condition Operator =
    Condition Value 8
    Customer Group UE
    Priority 10
    Active oui
    Stop processing further rules oui
    Default customer Group oui
    Delete all others groups oui

    Mais à la création d’une adresse rien ne change, est-ce normal ? Merci beaucoup

    1. Bonjour,
      L’intérêt de ce module a été réduit sous Prestashop 1.7
      Dans les versions précédentes, il était possible de créer son adresse client directement lors de son inscription sur le site.
      Les vérifications pouvaient donc être effectuées à la fois sur les informations de l’adresse et du client.
      Sous Prestashop 1.7 seules les informations du client ( nom, email, prénom .. ) sont disponibles, les possibilités de tri sont donc moindres.
      Votre règle ne peut donc malheureusement pas fonctionner

      Cordialement,
      Hervé

  67. Bonjour,

    Je cherchez désespérément ce module !
    Bravo !

    Voila ma question :

    Est-il possible d’ajouter une fonction d’ajout automatique des anciens clients suivant les règles ?

    1. Bonjour,
      Parfait si ce module correspond à vos attentes.

      Attention comme déjà évoqué dans des commentaires précédents son intérêt était plus important sur la version 1.6 de Prestashop.
      Concernant votre demande ceci pourrait être réalisable, par contre il y’aura un problème avec les clients qui possèdent plusieurs adresses.
      Il vous suffira de faire une boucle sur les clients existants, de les instancier et de les passer à la fonction _processGroupRules(Customer $customer)
      cf. https://github.com/nenes25/prestashop_customerautogroups/blob/master/customerautogroups/customerautogroups.php#L139

      Cordialement,
      Hervé

  68. Bonjour et merci pour ce module qui fonctionne parfaitement.

    J’utilise le champs Opt-in pour classer certains clients selon leur propre choix à la création de leur compte.

    Seulement si ils souhaitent modifier leur groupe sur la page identity le module n’est pas greffé sur l’action submitIdentity.
    Une idée?

    Merci d’avance

    1. Bonjour,
      Effectivement le module n’est pas greffé sur ce hook.
      Car il n’a vocation à ranger les clients que lors de leur enregistrement.
      Comme précisé lors de mon dernier commentaire le problème est que les règles d’adresses ne sont plus pertinentes dès lors que le client en possède plusieurs.

      Cordialement,
      Hervé

  69. Bonjour,
    La page identity ne concerne pas les adresses mais les nom, prénom et mot de passe… J’in finalement opté pour un override du controller identity qui met à jour le group client suivant la valeur du champs optin.

    Merci quand même.

    Kar

  70. Bonjour,
    Merci tout d’abord pour ce module !
    Est-ce que les dernières évolutions du module permettent d’inserer un client dans un groupe en fonction d’un produit acheté ?
    Le but est de permettre un accès réservé à une page en fonction de l’appartenance à un groupe.
    Merci

    1. Bonjour Pascal,
      Je n’avais pas finalisé cette partie car elle entraînait pas mal d’effets de bord.
      Du coup avec la version stable du module ce n’est pas possible.

      Cordialement,
      Hervé

  71. Merci beaucoup pour ce boulot ! Installé sur 1.7.4.4. Grâce aux échanges, j’ai compris qu’on le trouvait dans Sélection et non dans Modules installés. Par contre, j’aimerais créer une règle pour associer les clients hors zone Europe à un groupe spécifique (exonéré TVA). Est-ce possible ou dois-je procéder par élimination de tous les pays UE ? Merci !

  72. Sorry pour l’éventuel doublon, mais je ne vois pas mon post passer, j’ai peut-être fait une fausse manip. Tout d’abord merci beaucoup pour ce module, fonctionnel sur PS 1.7.4.4 (quoique j’ai dû chercher dans les commentaires pour savoir où le trouver, dans Modules > Sélections et non dans Modules installés). J’ai des groupes différents selon les pays : France BtoB et BtoC, clients EU avec et sans TVA hors France, et clients hors EU. Si j’ai bien compris, on ne peut pas ajouter plusieurs conditions. Donc comment puis-je ajouter les clients Fr avec TVA au groupe BtoB-fr, les Fr sans TVA au groupe BtoC-Fr, les clients de la zone Europe non EU au groupe correspondant (sans devoir faire une règle par pays) et les clients hors Europe là aussi sans devoir faire une règle par pays (car tous les pays sont acceptés). Est-il possible de créer une règle par zone par exemple ? Merci encore mille fois pour ce boulot !

  73. Désolée, je ne l’ai compris que juste après avoir posté le second message ! J’avais compris que pour 1.7 ça ne marchait pas lors de l’inscription. Mais si c’est au moment de remplir l’adresse pendant une commande ? Je cherche vainement quelque chose, un module, ou un exemple de code, pour réaliser cela, sans succès.

  74. Est-il prévu (et possible ^^) que ce module prennent en compte les nouveaux hook de PS 1.7 et vérifie à chaque création d’une adresse si les règles s’appliquent ou pas ?
    Cordialement,

    1. Il n’y a aucune évolution de prévue sur ce module dans les prochains temps car je n’ai pas spécialement de temps à y consacrer.
      Après je pense que c’est tout à fait possible d’y ajouter cette fonctionnalité, en se basant sur les hooks d’ajout et modification des adresses de l’évaluer pour changer le groupe du client à la volée.
      ( Ex : https://github.com/PrestaShop/PrestaShop/blob/develop/classes/ObjectModel.php#L610 )
      La seule problématique étant que un changement sur n’importe quelle adresse peut entrainer un changement de groupe.

      Cordialement,
      Hervé

  75. Ok, merci de cette clarification. L’idée étant en effet que chaque ajout d’adresse l’ajoute à un groupe client en plus avec les limites d’une telle méthode en effet.

    Pour info je viens de voir cet add-ons : https://addons.prestashop.com/fr/gestion-clients/24739-group-auto-assign-by-location.html
    qui semble faire la même chose pour ceux qui cherchent. Le votre avait plus de potentiel car multi champs mais c’est comme ca ^^.

    Merci encore.

  76. Bonjour,

    Le plugin a l’air super, cependant j’ai une erreur (The server returned a « 500 Internal Server Error ».) quand j’essaye d’accéder à la page de configuration…
    Je n’ai donc pas pu vraiment tester :3
    Ma version de prestashop est 1.7.5.1

    Cordialement

    1. Bonjour,
      Je ne rencontre pas d’erreur particulière dans la configuration du module sur cette version.
      Pouvez-vous afficher le mode debug pour voir à quoi correspond cette erreur ?
      Quelle est la version de php utilisée ?

      Cordialement,
      Hervé

    1. Bonjour,

      Effectivement la signature de la méthode setMedia a changé entre la version 1.6 et et 1.7 de prestashop.
      Avec php 7.2 cela semble poser problème.
      Pour corriger cela il suffit de rajouter le paramètre $isNewTheme = false dans la fonction setMedia du controller https://github.com/nenes25/prestashop_customerautogroups/blob/master/customerautogroups/controllers/admin/rules.php#L140

      Je vais voir pour fixer cela dans le module et voir comment conserver la compatibilité avec l’ensemble des versions de prestashop.

  77. Bonjour,

    Je suis en version 1.7.4.2. J’ai essayé d’installer le module en le chargeant par FTP dans le dossier module. Mais il n’appairait nul part.
    Je suis allée dans l’onglet « sections » , mais je ne le vois pas non plus.
    J’ai essayé de l’installer normalement depuis BO, en chargeant le zip et le chargement a échoué avec le message suivant : »Ce fichier ne semble pas être un fichier .zip de module valide. »
    Comment faire?
    est ce que je ne fais pas comme il faut ou est ce que ce n’est pas compatible avec ma version prestashop ou autre.

    Cordialement

  78. Bonjour,

    J’utilise la même version que Lucas, j’ai également une erreur 500 avec ce module après installation.
    L’erreur semble être liée au même paramètre mais l’ajout de $isNewTheme = false dans la fonction setMedia n’y change rien.
    Auriez vous une idée, s’il vous plait?

    Debug:
    Symfony\Component\Debug\Exception\FatalErrorException:
    Compile Error: Declaration of RulesController::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false)

    at modules/customerautogroups/controllers/admin/rules.php:23

    1. Bonjour Laurent,

      Il faut également faire la modification en ajoutant le paramètre dans la ligne en dessous :
      parent::setMedia($isNewTheme);

      Cordialement,
      Hervé

  79. Bonjour Hervé,

    Merci pour le retour mais hélas ce n’est pas ça.
    Le log de debug en ajoutant $isNewname = False; sans faire la dernière modif dont vous me parliez:

    Level Channel Message
    DEBUG
    19:33:53
    doctrine SELECT name FROM ps_module WHERE active = 1
    CRITICAL
    19:33:53
    php Fatal Compile Error: Declaration of RulesController::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false)
    DEBUG
    19:33:53
    doctrine SELECT name FROM ps_module WHERE active = 1
    INFO
    19:33:53
    php User Deprecated: Implementing « Symfony\Component\HttpKernel\DataCollector\DataCollectorInterface » without the « reset() » method is deprecated since Symfony 3.4 and will be unsupported in 4.0 for class « Csa\Bundle\GuzzleBundle\DataCollector\GuzzleCollector ».
    CRITICAL
    19:33:53
    request Uncaught PHP Exception Symfony\Component\Debug\Exception\FatalErrorException: « Compile Error: Declaration of RulesController::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false) » at /htdocs/Preprod/modules/customerautogroups/controllers/admin/rules.php line 23
    DEBUG
    19:33:53
    php Warning: highlight_file() has been disabled for security reasons

    —————————————————

    J’ai bien ajouté $isNewName pour parent::setMedia et j’ai maintenant ce message de débug:

    Level Channel Message
    DEBUG
    19:22:27
    doctrine SELECT name FROM ps_module WHERE active = 1
    CRITICAL
    19:22:27
    php Fatal Compile Error: Declaration of RulesController::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false)
    DEBUG
    19:22:27
    doctrine SELECT name FROM ps_module WHERE active = 1
    INFO
    19:22:27
    php User Deprecated: Implementing « Symfony\Component\HttpKernel\DataCollector\DataCollectorInterface » without the « reset() » method is deprecated since Symfony 3.4 and will be unsupported in 4.0 for class « Csa\Bundle\GuzzleBundle\DataCollector\GuzzleCollector ».
    CRITICAL
    19:22:27
    request Uncaught PHP Exception Symfony\Component\Debug\Exception\FatalErrorException: « Compile Error: Declaration of RulesController::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false) » at /htdocs/Preprod/modules/customerautogroups/controllers/admin/rules.php line 23
    DEBUG
    19:22:27
    php Warning: highlight_file() has been disabled for security reasons

    Cordialement,
    Laurent

    1. Bonjour Laurent,
      Remplacer l’ensemble de la fonction setMedia par ce code
      public function setMedia($isNewTheme = false)
      {
      parent::setMedia($isNewTheme);
      $this->addJS(_MODULE_DIR_.'customerautogroups/views/js/admin/customerautogroups.js');
      }

      De mon côté cela fonctionne parfaitement avec php 7.2

      Cordialement,
      Hervé

  80. Bonjour Hervé,

    Merci pour votre retour, effectivement c’est mieux, j’avais mal placé $isNewTheme = false dans la fonction. 🙂
    Cependant, je n’arrive pas à classer mes clients automatiquement.
    Je m’explique, au moment de l’inscription l’adresse n’est pas demandée en V1.7.5.1 et du coup ma règle basée sur le code postal ne fonctionne pas.
    Auriez vous une idée pour faire fonctionner ce module avec une règle basé sur le code postal?

    Cordialement,
    Laurent

    1. Bonjour Laurent,
      Effectivement l’intérêt de ce module est moindre pour la version 1.7 comme l’adresse n’est plus dans le formulaire d’inscription, comme je l’ai déjà signalé dans pas mal de commentaires :/
      Ce module n’est donc malheureusement pas adapté à ce que vous souhaitez faire.

      Cordialement,
      Hervé

  81. Bonjour Hervé,

    J’ai finis par m’en sortir en ajoutant un champs « postcode » dans le formulaire de création de compte (ajout en BDD également). 🙂
    Pour ceux qui aurait le même pb, j’ai croisé les infos trouvées sur 2 sites:

    https://prestapros.com/en/blog/additional-fields-for-registration-form-prestashop-1-7

    http://prestacraft.com/adding-new-fields-to-the-registration-form-in-prestashop-1-7

    Une fois modifié, le module fonctionne impec !
    Un grand merci pour ce module 🙂
    Laurent

  82. Bonjour,
    Je suis très vivement intéressé par ce module mais je n’arrive pas à l’installer. je suis en version 1.7.6.5 et j’ai bien transféré le dossier « customerautogroups » dans le dossier « modules » de mon prestashop mais je ne le vois nulle part dans l’interface d’administration. Pouvez vous m’aider ? Par avance Merci.

    1. Bonjour Marc,

      La procédure suivie semble bonne, je ne vois pas de raison que cela ne fonctionne pas.
      Comme vous le signalez si vous téléchargez le module sur github il faut bien envoyer uniquement le dossier « customerautogroups »
      Dans le catalogue de module vous devriez ensuite le trouver en cherchant « Groupes »
      Une autre solution est de zipper uniquement ce dossier est de l’installer via le backoffice.

      Attention comme déjà evoqué dans pas mal de commentaire récents, ce module est assez ancien et n’est plus pleinement fonctionnel sur prestashop 1.7
      Il y’a également des erreurs avec les versions de php 7.2 et supérieures, je vous renvoie vers les commentaires précédents pour voir comment les corriger.

      Cordialement,
      Hervé

  83. hello herve
    i have prestaship 1.7.6
    add a new field called postcode
    and it works perfectly for me on a pc but it doesn’t work from my cell phone
    Do you have any idea about this problem?

    1. Hello cristian,
      I’ve never face such an issue and that seems very weird as all the treatment is done on server side.
      So mobile and desktop should have the same behaviour.
      Maybe a cache issue on your phone ?

      Regards,

  84. Bonjour,
    je viens de l’installer sur presta 1.7.6.6, avec php 7.2 en faisant la modif dans le controller, cela fonctionne. Merci pour la contribution. Super fonctionnalité 😉

  85. bonjour, j’ai crié victoire trop vite.
    avec ps 1.7.6.6 je doit changer de groupe un client PRO basé sur le nom de la société ou du siret.
    Mais rien ne se passe. Je voudrais savoir comment configurer le module?
    car j’ai testé avec
    condition type: customer
    condition fiel: compagny
    condition operator: =
    condition valeur: (rien indiqué)

    merci pour votre aide

  86. Bonjour
    Je l’ai installé sur Prestshop 1.7.6.7 sans aucun problème. Merci beaucoup!
    Je souhaite faire des groupes de clients en fonction de leur code postal de façon à pouvoir afficher ou masquer certaines catégories.
    Je voudrais attribuer un groupe clients automatique aux intervalles ci-dessous, mais je n’arrive pas à faire les réglages. Pouvez vous m’aider?
    1 19999 France
    21000 29999 France
    30001 30099 France
    30101 30131 France
    30133 30189 France
    30191 30209 France
    30211 30229 France
    30231 30249 France
    30251 30259 France
    30261 30289 France
    30291 30319 France
    30321 30329 France
    30331 30339 France
    30341 30349 France
    30351 30359 France
    30361 30419 France
    30421 30519 France
    30521 30559 France
    30561 30579 France
    30581 30699 France
    30701 30729 France
    30731 30899 France
    30901 99999 France

    1. Bonjour Anne,

      Cet article date pas mal,et malheureusement sur une version 1.7 je ne pense pas que ce que vous souhaitez faire fonctionnera. ( Les adresses ne sont plus dans le formulaire de création de compte)
      De plus cette gestion de conditions n’est pas géré nativement par le module, il faudra lui ajouter le support d’expression régulières.
      N’hésitez pas à le faire si vous avez des connaissances techniques.

      Cordialement,
      Hervé

    1. Bonjour Anne,
      Je peux faire des développements mais j’ai malheureusement très peu de temps disponible en ce moment.
      Le développement spécifique étant également beaucoup plus cher qu’un module n’hésitez pas à regarder sur addons si un module existant ne pourrais pas correspondre à votre besoin 🙂

      Cordialement,
      Hervé

  87. Bonjour,

    Je viens de découvrir ce module qui et super,

    cependant je rame un peu au niveau des réglage avec les priorité etc ….

    nous avons une boutique PRO/Particulier.

    j’aimerais que les client sans numéro de TVa et avec TVA soit dissocier cela fonctionne mes par contre quand je le fait par pays cela ne fonctionne pas le résultat il me les mes dans les 2 groupe.

    Serai t’il possible de m’aiguiller ?
    Peut’on cumuler plusieurs filtre pour une inscription ?

    Cordialement

    1. Bonjour Charles,

      Comme vous avez sans doute pu le lire dans les différents commentaires, cet article est relativement ancien.
      Et le module fonctionnait plutôt bien avec prestashop 1.6, mais avec prestashop 1.7 son fonctionnement est beaucoup moins intéressant.
      ( Car les informations liées à l’adresses ne sont plus présentes dans le formulaire de création de compte )
      Quelle est votre version de prestashop ?
      Il est aussi relativement basique car il ne gère le matchage que d’une condition à la fois.

      Cordialement,
      Hervé

  88. Bonjour,

    J’ai la version 1.6.1.24.

    Enfaite on voulez mettre des condition si numéro de tva = groupe 4
    Sauf si client FR

    Donc j’ai crée 2 condition mes j’ai l’impression qu’il n’est pas possible de lui demande cela mes le module reste très correct.

    Cordialement

  89. Bonjour, je viens de migrer de 1.6 a 1.7 et ce logiciel fait partis des chose indépendante pour moi.

    j’ai également le champs adresse a l’inscription comme sur 1.6 mes pour au tend j’ai pas l’impression qu’il soit prise en compte.

    Quelqu’un aurai un retour sur expérience ?

    Bonne journée.

    Cordialement

  90. Bonjour, j’ai testé le module sur prestashop 1.7.7.3, installation clean. Cela donne une erreur lorsque je clique sur le lien du module pour le paramétrer :

    Oups… une erreur inattendue semble s’être produite

    Compile Error: Declaration of RulesController::setMedia() must be compatible with AdminControllerCore::setMedia($isNewTheme = false)

    [Symfony\Component\Debug\Exception\FatalErrorException 0]

    Voilà si vous pouvez vérifier

    Cordialement

  91. Ok, parfait ça fonctionne, merci bien.

    Pour le module sur ps 1.7.7.3 je l’utilise pour mettre les clients professionnels avec Siret automatiquement dans la catégorie pro. Après quelque test cela fonctionne avec 3 faux compte pro les clients sont bien enregistré dans la catégorie pro.

  92. Bonjour,

    Le module publié sur github, est il fonctionnel avec 1.7.4.4 ? je l’ai installé, configuré, je n’ai pas d’erreur même en debug mode mais aucune règle ne s’applique/fonctionne, règle simple si email = email@email.com

    faut il prendre une branche particulière ? selon la version 1.7 ?

    Merci d’avance de votre réponse.

    Cordialement,

    1. Bonjour Mathieu,
      Comme précisé dans pas mal de commentaires déjà, le module fonctionne sur prestashop 1.7
      Mais en raison de la disparition de l’option de création d’adresse directement lors de l’inscription, son intérêt est réduit.

      Cordialement,
      Hervé

      1. Bonjour,

        ok rien de gênant pour moi concernant la partie adresse, s’agissant d’un site fermé, les comptes sont crées par moi même et sans adresse, néanmoins j’offre des choix d’univers aux clients (champs ajouté à l’aide de votre au poste ajoutés des champs au formulaire clients 1.7) et je souhaite à l’aide du module qu’il actualise le groupe du client en fonction de ce nouveau champ client univers afin de lui afficher ou non certains produits/catégories donc rien de lié à l’adresse du client. néanmoins je ne comprends pas pourquoi ça ne fonctionne pas, pas d’erreur mais aucune actualisation du groupe.

        on est d’accord que mon fonctionnement est réalisable avec votre module ? l’actualisation automatique du groupe à l’aide d’une règle peut se faire à la mise jour du client en FO et pas uniquement à la création du client ?

        Je vais retirer du module tout de ce qui est lié à la partie adresse, cette dernière n’ayant pas de raison d’être pour ma version 1.7.4 de PS.

        En vous remerciant pour vos postes et contributions !

        1. ok j’ai retiré les élèments, fonctions liés aux adresses et modifié le hook appelé pour hookActionCustomerAccountUpdate.

          à présent ça fonctionnement parfaitement selon le choix de mon client sur le champ ajouté dans le formulaire du compte client, il est automatiquement placé dans le bon groupe par votre module.

          merci encore pour vos postes très bien produit.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *