Jump to content

Code promo selon choix du transporteur


Recommended Posts

Hello @all,

 

 

J'aurais besoin que vous m'ôtiez d'un doute... à savoir si le problème via de Prestahshop, ou de moi qui n'est pas bien compris le principe, ou mal configuré...

 

Explication :

Je souhaiterai créer un code promo pour offrir les frais de ports UNIQUEMENT sur un transporteur précis.

 

Donc dans l'admin, pour la gestion des codes promo :

• Onglet CONDITIONS "Selection d'un transporteuré", la partie "Transporteurs sélectoinnés", je laisse uniquement le transporteur à qui je veux attribuer ma réduction

• Onglet ACTIONS, j'indique frais de port gratuit

 

Jusque là, tout me semble bon... n'est-ce pas ?

 

Mais en testant bon code promo, lors du l'étape1 du tunnel d'achat, au récap panier, j'ai droit à l'erreur :

Vous devez choisir un transporteur avant de pouvoir appliquer ce bon de réduction à votre commande

 

Alors oui, logique.

Mais alors comment on fait ?

Il y a un système de conditions du choix de transporteurs, mais que finalement on ne peut pas appliquer ? À quoi cela sert alors ?

 

Il y a forcément quelque chose qui m'échappe.

Ou alors Prestashop a un aspect illogique sur ce point :)

 

Merci d'avance pour vos retours.

 

 

 

 

 

 

Link to comment
Share on other sites

tout simplement d'accord avec vous..

Avec l'ancien prestashop, la case "promotion" apparaissait après le choix du transporteur, donc le problème ne se posait pas.

Avec la nouvelle version, la case est au tout début du processus d'achat, donc avant que le client ne choisisse son mode d'expédition.

Du coup ce type de promo n'est pas fonctionnel. J'ai tout essayé et je n'ai pas trouvé de solution, c'est une énorme erreur de conception de la part de prestashop...

Link to comment
Share on other sites

OK. Donc il y a bien un problème de "logique".

Pourtant la 1.6 est sorti il y a près d'un an.

 

J'essaye de modifier le code pour permettre l'application d'un code promo à la fin de l'étape de paiement, mais le soucis, c'est que ca renvoi automatique tout au début du panier, donc l'utilisateur est obligé de tout refaire.

Link to comment
Share on other sites

et oui, je sais, j'ai aussi tenté de modifier le code, mais sans succès.

Alors que je suis persuadé qu'en 10 minutes, un développeur de prestashop peut remettre le code promo à l'étape 5..

 

Pourquoi diable ne pas avoir laisser cette zone de saisie du code à cette étape. C'est totalement incohérent..

Link to comment
Share on other sites

  • 7 months later...
  • 2 months later...

Toujours aucune, il faut croire que le forum n'est pas lu par les concepteurs ou que les infos ne sont pas remontées.

 

L'étape 5 ne contient toujours pas la case de bon de réduction, et il n'y a aucun paramètre permettant de personnaliser le tunnel d'achat. (Comme proposer de commencer directement par le choix du transporteur, basculer la case promo de l'étape2 à l'étape 5 etc.. ).

Prestashop devient comme apple :), très fermé lol

Link to comment
Share on other sites

  • 7 months later...

idem sur un presta 1.6.1.4
impossible d'utiliser un bon de réduction lié à un transporteur

Même erreur, on bloque à la commande 

peut être doit on regarder dans les templates order ??

 

ce serait pas mal que les developpeurs presta nous mettent sur la piste  !

Link to comment
Share on other sites

  • 2 months later...

Bonjour à tous!

 

même problème pour moi... pas possible d'offrir les frais de port sur un seul transporteur parce qu'on nous demande d'en chosir un avant d'appliquer le code promo.

 

SOS si quelqu'un à la solution....

Link to comment
Share on other sites

  • 4 weeks later...

un prestateam pourrait nous éclairer svp !!  :huh:

 Si par "prestateam" vous entendez "un employé de Prestashop" vous risquez d'attendre longtemps, ils ont abandonné le community management depuis quelques temps déjà...

 

En revanche pour contourner le problème, je pense que choisir le transporteur lié à la règle de panier en tant que transporteur par défaut pourrait fonctionner.

 

A tester

Edited by BeComWeb (see edit history)
Link to comment
Share on other sites

@be.com.web :

 

Merci pour cette réponse, mais cela ne règle pas mon problème, notament à cause d'une contrainte "pays" supplémentaire.

La seule solution je pense serait effectivement de pouvoir gérer le code à l'avant-dernière ou dernière étape du tunnel, moment où toutes les contraintes des codes sont résolues..

 

Vraiment navrant de voir les équipes PS se détourner de la communauté ... ils lèvent des millions, dépensent bcp en marketing et autre, mais oublient un peu vite que sans la communauté, ils n'en seraient pas là ... où comment dévoyer l'esprit de l'open source ... mais c'est un autre débat. 

Link to comment
Share on other sites

  • 2 weeks later...

Honnêtement je me demande si ce problème sera résolu un jour.

Sauf à modifier profondément l'ergonomie du tunnel de commande...

Selon moi la team PS ne le fera pas, le risque d'effets de bord est assez élevé.

 

En revanche si on se fie au commentaire laissé sur la forge le fait de passer en one-page-checkout résoudrait le problème

Link to comment
Share on other sites

  • 7 years later...

Si jamais, encore des personnes sur prestashop 1.6 :  ;)

vous pouvez commenter ce code de la classe cartRule et ça marchera ;)

 

  // Check if the carrier chosen by the customer is usable with the cart rule

        if ($this->carrier_restriction && $check_carrier) {

            /*

           if (!$context->cart->id_carrier) {

                return (!$display_error) ? false : Tools::displayError('You must choose a carrier before applying this voucher to your order');

            }

           

            $id_cart_rule = (int)Db::getInstance()->getValue('

            SELECT crc.id_cart_rule

            FROM ' . _DB_PREFIX_ . 'cart_rule_carrier crc

            INNER JOIN ' . _DB_PREFIX_ . 'carrier c ON (c.id_reference = crc.id_carrier AND c.deleted = 0)

            WHERE crc.id_cart_rule = ' . (int)$this->id . '

            AND c.id_carrier = ' . (int)$context->cart->id_carrier);

            if (!$id_cart_rule) {

                return (!$display_error) ? false : Tools::displayError('You cannot use this voucher with this carrier');

            }

             */

        }

 

 

Edited by Green69 (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...