hishikdi Posted December 11, 2014 Share Posted December 11, 2014 Bonjour à tous, Je vous fait part d'une erreur actuellement sur le module Paypal (3.8.1) de Prestashop. Personnellement j'ai le souci sur un Prestashop 1.4.8.2. Voici le cas qui se présente : - Un client s'inscrit sur votre site - Prépare sa commande - Choisis son mode de livraison (Payant ou non payant) - Choisis son mode de paiement (Paypal en l’occurrence) - Le client entre ses informations Paypal et paie, Mais il ne paye que les produits hors frais de port. Suite à un appelle de ma part vers Paypal, le conseiller m'indique que ce problème est connu est date déjà depuis le 3 décembre 2014 (Date à laquelle nous devions faire la mise à jour du module Paypal suite à l’arrêt de la prise en charge de SSL 3.0 par Paypal) et qu'il ne sais pas quand le module sera mis à jour (Le module étant crée par Prestashop). Suite à une question de ma part, le conseiller m'indique que les anciennes versions du module fonctionnant avec SSL 3.0 fonctionneront encore jusqu'au 15 décembre (pour ceux qui recherche un solution de type "pansement à court terme") De manière technique et de ce que j'ai pu voir, j'ai l'impression que lorsque le client achète via Paypal, le module renvoi l'adresse de livraison modifiant le département du client le passant à 0 (aucun département sélectionné). Dans un premier temps, je voudrai savoir si d'autres personnes avait constaté ce problème ? Dans un second temps, j'aurai aimé savoir si quelqu'un aurait une idée pour régler se souci ? Merci de votre lecture, Hishikdi. Link to comment Share on other sites More sharing options...
sunzoo Posted December 11, 2014 Share Posted December 11, 2014 même pb depuis l'update 3.8.1 prestashop 1.4.7 Link to comment Share on other sites More sharing options...
hishikdi Posted December 12, 2014 Author Share Posted December 12, 2014 Bonjour, Une solution serait de repasser sur une ancienne version du module Paypal par exemple la 2.8.7 et de faire une modification sur le protocole utilisé voir ici : http://www.prestashop.com/forums/topic/380185-paypal-modification-ssl-v3-to-tls/?p=1870415 Link to comment Share on other sites More sharing options...
hishikdi Posted December 15, 2014 Author Share Posted December 15, 2014 Bonjour, Je relance un peu le sujet, Quelqu'un a-t-il trouvé une solution ou aurait testé la solution que je proposais? Link to comment Share on other sites More sharing options...
gawell Posted December 19, 2014 Share Posted December 19, 2014 Bonjour. Nous sommes exactement dans le même cas de figure. Après une requete SQL sur ps_adress on se rend compte que le champ id_state est passé à '0' au lieu d'avoir l'id du departement. Peut-être qu'il faudrait mettre un peut la pression aux développeurs du module car pour l'instant on juste le choix de désactiver ce moyen de paiement... Link to comment Share on other sites More sharing options...
sunzoo Posted December 23, 2014 Share Posted December 23, 2014 Bonjour, En faisant des tests sur la sandbox paypal, les frais de port apparaissent bien. l'adresse n'est pas modifiée Je pense que le pb vient de Paypal qui vérifie l'Etat qui dans mon cas est détourné pour saisir le département (seul moyen de calculer les frais de port) Pas encore réactivé le module, Est-ce corrigé ? Link to comment Share on other sites More sharing options...
gawell Posted January 5, 2015 Share Posted January 5, 2015 Un petit Up. QQ1 a eu des news ? Link to comment Share on other sites More sharing options...
gawell Posted January 6, 2015 Share Posted January 6, 2015 On viens de tester une chose toute bête, et qui semble fonctionner : Vider le cache du site pour forcer la recompilation des Tpl. Là, on vient de réactiver et ça semble Ok. Faites le test aussi pour voir si c'est bon pour vous aussi... Link to comment Share on other sites More sharing options...
gawell Posted January 7, 2015 Share Posted January 7, 2015 Et non... ca merde encore. Je viens de le re-désactiver. Quelqu'un à une idée ? Link to comment Share on other sites More sharing options...
hishikdi Posted January 9, 2015 Author Share Posted January 9, 2015 Le module n'as pas l'air d'avoir été mise à jour depuis décembre. Je pense faire le teste de juste changer le protocole de la version 2.8.7 du module Paypal à partir de Dimanche ou Lundi matin. En effet, nous devons trouver une solution avant le 12/01/15 9h01 CET, date butoir à laquelle Paypal désactivera intégralement la prise en charge du SSL 3.0. Je vous tiens au courant si la modification fonctionne. Link to comment Share on other sites More sharing options...
gawell Posted January 16, 2015 Share Posted January 16, 2015 Les tests sont concluants ? Link to comment Share on other sites More sharing options...
abarge Posted February 3, 2015 Share Posted February 3, 2015 Bonjour, Depuis la mise en place du module Paypal 3.8.0, je rencontre le problème similaire : les frais de port se calculent bien et apparaissent sur l'écran du client, mais dès qu'il paye avec Paypal les frais de port disparaissent et on retrouve l'adresse de livraison modifiée avec suppression du département. Existe-t-il une solution ? J'utilise la version 1.4.9 de Prestashop. André BARGE Link to comment Share on other sites More sharing options...
gawell Posted February 5, 2015 Share Posted February 5, 2015 Problème réglé ! Je suis parti d'un modul paypal ancienne version dont j'ai changé les protocoles en TSL. Ma version de presta est la 1.4.10. Bref, je le mets en pièce jointe au cas ou ca pourrait vous dépanner paypal.zip Link to comment Share on other sites More sharing options...
sunzoo Posted February 23, 2015 Share Posted February 23, 2015 J'ai corrigé le dernier module 3.8.1 (nov 2014) j'ai fait en sorte de n'envoyer l'info "state" que si le pays est US dans le fichier modules/paypal/express_checkout/process.php dans la méthode setShippingAddress /* désactivé if ($address->id_state) { $state = new State((int)$address->id_state); $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code; } */ $country = new Country((int)$address->id_country); if ($country->iso_code == "US" && $address->id_state) { $state = new State((int)$address->id_state); $fields['PAYMENTREQUEST_0_SHIPTOSTATE'] = $state->iso_code; } Link to comment Share on other sites More sharing options...
sunzoo Posted March 2, 2015 Share Posted March 2, 2015 (edited) Le pb n'est toujours pas résolu mais j'avance. Il semble que dans certains cas (non définis) le module ne connait pas l'adresse de livraison et doit la reconstruire. Il se base sur le retour de getExpressCheckoutDetail il possède toutes les informations, y compris le codeiso de l'Etat pour récupérer l'Etat (US State = département), le module appelle la méthode State::getIdByIso($ppec->result['PAYMENTREQUEST_0_SHIPTOSTATE'], $address->id_country) mais pour les versions <1.5 de prestashop cette méthode ne prend qu'un seul paramètre, le code iso l' id_state ne peut donc pas être récupéré. Pour corriger ça, on peut simplement corriger la ligne 102 du fichier modules/paypal/express_checkout/payment.php $address->id_state = (int)State::getIdByIso($ppec->result['PAYMENTREQUEST_0_SHIPTOSTATE'], $address->id_country); devient $address->id_state = (int)State::getIdByIso($ppec->result['PAYMENTREQUEST_0_SHIPTOSTATE']); la modif indiquée précédemment du fichier process.php n'a plus lieu d'être puisqu'il faut bien envoyer l'état à Paypal. Autre soucis le code-iso de l'état doit être unique, chez moi les départements ont des codes sur 3 lettres (générés par prestashop, il me semble) il n'y a donc pas de conflit possible avec les états US qui sont sur 2 caractères, par contre je trouve LOI pour Loire et LOI pour Loiret !!! Si vous avez le même soucis, il faut en modifier un des deux. Si vous savez comment identifier les clients qui ont payé avec leur CB sur Paypal plutôt qu'avec leur compte Paypal merci de me l'indiquer Cordialement Sunzoo Edited March 2, 2015 by sunzoo (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now