Jump to content

BUG PAYPAL 3.10.6 / 3.11


Recommended Posts

EDIT DU 08/10/2016 : Ne mettez pas à jour vers la 3.11, le bug TLS a été ré-intégré dans cette version !!!

 

EDIT DU 28/06/2016 : Ce post n'est plus d'actualité si vous avez mis à jour votre module dans la version 3.10.10

 

 

Attention si vous mettez à jour votre module Paypal avec cette dernière version!

 

(D'ailleurs, il est surprenant de passer de la 3.10.2 à la 3.10.6, mais bon...)

 

Ces guignols de 202ecommerce ont rajouté une vérification du protocole TLS en vue d'être  conforme avec les exigences Paypal mises en oeuvre à partir du 1er juillet 2016.

 

Problème: ils ne savent pas utiliser les fonctions php...

 

Pour résumer, ils testent une fois par jour si le protocole TLS est strictement égal à 1.2, sinon ils renvoient 1 et la belle alerte en rouge ci-dessous:

post-241780-0-33817400-1460713711_thumb.jpg

 

Mais comment interrogent-ils le serveur https://www.howsmyssl.com/a/check ?

 

Avec ceci, dans /modules/paypal/classes/TLSVerificator.php:

    private function _connectByCURL($url, $http_header = false, $sslversion = 1)
    {
        $ch = @curl_init();

        if (!$ch) {
            $this->_logs[] = $this->paypal->l('Connect failed with CURL method');
        } else {
            $this->_logs[] = $this->paypal->l('Connect with CURL method successful');
            $this->_logs[] = '<b>'.$this->paypal->l('Sending this params:').'</b>';
            $this->_logs[] = '<b>'.$url.'</b>';

            @curl_setopt($ch, CURLOPT_URL, $url);

            @curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            @curl_setopt($ch, CURLOPT_HEADER, false);
            @curl_setopt($ch, CURLOPT_TIMEOUT, 30);
            @curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            @curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
            @curl_setopt($ch, CURLOPT_SSLVERSION, $sslversion);
            @curl_setopt($ch, CURLOPT_VERBOSE, false);
            if ($http_header) {
                @curl_setopt($ch, CURLOPT_HTTPHEADER, $http_header);
            }

            $result = @curl_exec($ch);

Vous remarquerez le $sslversion = 1 

 

Pour contrôler réellement si votre serveur utilise TLS 1.2, commentez la ligne

// @curl_setopt($ch, CURLOPT_SSLVERSION, $sslversion);

et en base de données, table ps_configuration, supprimez la variable de configuration PAYPAL_VERSION_TLS_LAST_UPDATE

Enregistrez le tout et rafraîchissez la page de configuration du module Paypal. Si vous avez le message vert, tout est bon.

post-241780-0-75586300-1460713636_thumb.png

 

Le test continuera à être effectué tous les jours, mais bon, ils ont du croire que certains allaient retrograder leurs versions de protocole, qui sait...

 

Problème suivant:

Lors de la vraie connexion effectuée lors d'un paiement, maintenant le script envoie, dans /api/paypal_connect.php:

@curl_setopt($ch, CURLOPT_SSLVERSION, Configuration::get('PAYPAL_VERSION_TLS_CHECKED') == '1.2' ? 6 : 1);

Donc, tant que vous n'avez pas passé le test ci-dessus, le protocole utilisé sera TLS 1.0, (celui refusé par Paypal à partir de Juillet)

 

Prestashop ne doit pas forcer le sslversion, c'est votre configuration serveur qui l'envoie.

Doc php:

 

 

CURLOPT_SSLVERSION Une valeur parmi CURL_SSLVERSION_DEFAULT (0),CURL_SSLVERSION_TLSv1 (1), CURL_SSLVERSION_SSLv2 (2),CURL_SSLVERSION_SSLv3 (3), CURL_SSLVERSION_TLSv1_0 (4),CURL_SSLVERSION_TLSv1_1 (5) or CURL_SSLVERSION_TLSv1_2(6).

Note
:

Dans votre intérêt, il est préférable de ne pas définir cette valeur et utiliser la valeur par défaut. Définir à 2 ou 3 est très dangereux sachant le nombre de vulnérabilité présentes dans SSLv2 et SSLv3.
 

 

Un nouveau bug très pénalisant pour les commerçants ayant un serveur bien configuré, ou comment effondrer son chiffre à partir du 1er juillet :(

 

Pour être tranquille, commentez ces 2 lignes et NE FAITES PLUS JAMAIS DE MISE A JOUR DE CE MODULE SANS DEMANDER L'AVIS DE LA COMMUNAUTE !

 

 

PS: Extrait DOC RFC 2104

 

A typical connection example follows, illustrating a handshake where the server (but not the client) is authenticated by its certificate:

 
    Negotiation phase:
        A client sends a ClientHello message specifying the highest TLS protocol version it supports, a random number, a list of suggested cipher suites and suggested compression methods. If the client is attempting to perform a resumed handshake, it may send a session ID.
        The server responds with a ServerHello message, containing the chosen protocol version, a random number, CipherSuite and compression method from the choices offered by the client. To confirm or allow resumed handshakes the server may send a session ID. The chosen protocol version should be the highest that both the client and server support. For example, if the client supports TLS version 1.1 and the server supports version 1.2, version 1.1 should be selected; version 1.0 should not be selected.
Edited by Eolia (see edit history)
  • Like 6
Link to comment
Share on other sites

Eolia,

 

Tu viens de me foutre les chocottes là :)

j'ose même plus toucher à un Prestashop tellement j'ai peur que ça me pète à la goule :(

 

Amis e-commerçants, bon courage pour la suite.

 

V++

 

Atch

  • Like 2
Link to comment
Share on other sites

Encore une preuve que le neveu du beau frère du boucher du coin ne devrait pas s'approcher à moins de 2 ou 3 parsec d'un clavier.

A chaque fois ces types super intelligents vont googler et copier coller le code d'un tuto plus ou moins moisi au lieu de lire les documentations.

 

Le protocole TLS à une RFC-5246 depuis 2008! au moins, mais c'est sûr que c'est plus long de la lire que de copier une ligne qui traine sur le net.

C'est pareil pour la documentation curl de PHP (et celle de curl lui-même d'ailleurs... version <7.34 ne connait pas nativement TLS1.1 ou TLS1.2 mais fonctionne sans problème en 1.2 si le système lui négocie le canal).

On parle de la TLS1.3 de suite ?

Un serveur n'a pas que TLS1.2 sinon il aurait un peu de mal avec nombre de navigateurs anciens ou pas si anciens d'ailleurs

En lisant la documentation curl/ PHP on comprend que mettre une version du protocol va forcer le canal dans ce protocol et comme le serveur et le client (ici paypal et votre serveur) doivent parler la même langue ça ne peut pas fonctionner.

 

Si on réclame à notre serveur (ici client TLS) de parler TLS1 et qu'il n'a que TLS1.2, il est assez intelligent pour utiliser ce dernier mais si il connait 1.0 aussi il prendra celui-ci afin d'être le plus compatible. Bien évidement le serveur Paypal lui ne cause QUE 1.2

 

Pourquoi un serveur maintient le protocole TLS 1.0 vous allez demander? Bien que pas assez sécurisé pour une transaction il convient très bien pour transmettre une feuille de style CSS et si on ne l'a pas quelques navigateurs seront incapable de parler à notre serveur en https.

Au hasard, IE7-10 (Win7, WinPhone, Xp, Vista), Android < 4.4, Safari 6, ...

https://www.ssllabs.com/ssltest/analyze.html?d=enter-solutions.com

 

Tout ceci m'asticote parce qu'exactement les même remarques et les même impasses ont été déployées lors de l'abandon de SSL au profit de TLS mais il faut croire que ça ne changera pas.

  • Like 1
Link to comment
Share on other sites

IMPORTANT POUR CEUX QUI N'ONT PAS EFFECTUE DE MISE A JOUR

 

J'ai oublié de préciser: si vous utilisez une ancienne version du module, vous devez commenter la ligne de l'api car le TLS 1.0 est codé en dur et vos paiements seront systématiquement refusés.

  • Like 1
Link to comment
Share on other sites

 

IMPORTANT POUR CEUX QUI N'ONT PAS EFFECTUE DE MISE A JOUR

 

J'ai oublié de préciser: si vous utilisez une ancienne version du module, vous devez commenter la ligne de l'api car le TLS 1.0 est codé en dur et vos paiements seront systématiquement refusés.

 

 

Bonjour Eolia, alors si on est encore dans la 3.10.2 c'est dans quel fichier que on doit commenter la ligne de l'api?

 

Merci bcp!!

Link to comment
Share on other sites

Bonjour Eolia,

 

J'avais comme un idiot effectué la MAJ vers cette 3.10.6 mais j'avais effectué une sauvegarde du module en 3.10.2.

J'ai donc supprimé le module en 3.10.6 puis j'ai transféré la version 3.10.2 sur mon hébergement en ayant pris soin de commenter la ligne que tu as indiqué, ce qui du coup équivaut à une suppression de cette ligne du code de ce fichier.

Sachant que mon site n'est pas en https et si j'ai bien tout compris, cela aura pour effet de continuer à rendre fonctionnel le module paypal même après juillet, c'est bien cela ?

Merci pour ta réponse.

Link to comment
Share on other sites

 

IMPORTANT POUR CEUX QUI N'ONT PAS EFFECTUE DE MISE A JOUR

 

J'ai oublié de préciser: si vous utilisez une ancienne version du module, vous devez commenter la ligne de l'api car le TLS 1.0 est codé en dur et vos paiements seront systématiquement refusés.

 

 

 

Hello Eolia,

 

Es-tu sur que cette ligne code le TLS 1.0 en dur ?

 

J'utilise le module en version 3.6.1 et j'ai bien cette ligne, j'ai fait des essais, les infos de sécurité Firefox me donnent bien une connexion en TLS 1.2 sur Paypal et également sur la Sandbox ( la Sandbox a apparemment une connexion chiffrée légèrement différente de Paypal ).

 

J'ai testé avec ou sans la ligne de commentée et j'obtiens le même résultat, je joins des screens de Paypal et de la Sandbox.

 

Faut-il vraiment commenter cette ligne donc ?

 

Je ne comprends d'ailleurs pas pourquoi cela se connecte déjà en TLS 1.2, ce n'était pas cela le grand changement de Juin ou j'ai mal compris ?

post-603134-0-32221100-1460806806_thumb.jpg

post-603134-0-68195000-1460806815_thumb.jpg

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

Ne confond pas Firefox (ton nagivateur) et le serveur qui ouvre la connexion face à paypal.

Ton navigateur (Firefox) été codé par des gens compétent donc il amorce un dialogue sans trop préciser le protocole, le serveur Paypal fait de même et ils se mettent d'accord de choisir le protocole apportant le plus de sécurité, donc TLS1.2

Actuellement le serveur Paypal avec lequel ton serveur cause accepte TLS 1.0, 1.1 et 1.2

[email protected]:~/$ nmap --script ssl-enum-ciphers -p 443 api-3t.paypal.com
PORT    STATE SERVICE
443/tcp open  https
| ssl-enum-ciphers: 
|   SSLv3: No supported ciphers found
|   TLSv1.0: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA - strong
|       TLS_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_RSA_WITH_RC4_128_MD5 - strong
|       TLS_RSA_WITH_RC4_128_SHA - strong
|     compressors: 
|       NULL
|   TLSv1.1: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA - strong
|       TLS_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA - strong
|     compressors: 
|       NULL
|   TLSv1.2: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 - strong
|       TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 - strong
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA - strong
|       TLS_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA256 - strong
|     compressors: 
|       NULL
|_  least strength: strong

La même chose sur api-3t.sandbox.paypal.com qui est normalement le reflet de ce que sera paypal production après Juin

[email protected]:~/$ nmap --script ssl-enum-ciphers -p 443 api-3t.sandbox.paypal.com
PORT    STATE SERVICE
443/tcp open  https
| ssl-enum-ciphers: 
|   SSLv3: No supported ciphers found
|   TLSv1.0: No supported ciphers found
|   TLSv1.1: No supported ciphers found
|   TLSv1.2: 
|     ciphers: 
|       TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 - strong
|       TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 - strong
|       TLS_RSA_WITH_3DES_EDE_CBC_SHA - strong
|       TLS_RSA_WITH_AES_128_CBC_SHA - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA - strong
|       TLS_RSA_WITH_AES_256_CBC_SHA256 - strong
|     compressors: 
|       NULL
|_  least strength: strong

Supprime le forçage en TLS1 (en commentant les lignes) et ton serveur commencera son dialogue en négociant le protocole, exactement comme ton firefox et tout marchera comme sur des roulettes

Link to comment
Share on other sites

Merci doekia pour les explications :)

 

Pour tout t'avouer je n'y connais pas grand chose sur les connexions sécurisées arf !

 

J'ai tout de même une interrogation :

 

Sans commenter la ligne, j'arrive bien à payer via la Sandbox qui apparemment n'utilise plus que le TLS 1.2.

 

Comment est-ce possible si le module demande un forçage en TLS 1.0 ?

 

J'ai du mal à comprendre l'utilité de commenter la ligne si cela fonctionne tout de même avec.

Link to comment
Share on other sites

Bonsoir,

 

moi j'ai mis à jour le module paypal (pas encore configuré) et depuis impossible de me reloguer à mon admin j'ai le message suivant :

 

"[PrestaShop] Fatal error in module file :/var/www/xxx/xxx/xxx/web/modules/paypal/classes/TLSVerificator.php:

Call to undefined function curl_init()".

 

J'ai essayé de commenter comme dit plus haut pour contourner le pblm mais rien ne fonctionne.

 

j'ai essayé en supprimant le module depuis le ftp, mais pareil.

 

Une idée ?

Link to comment
Share on other sites

J'ai réussi en passant active à 0 dans "pst_module" sur la bdd.

 

Puis en renommant puis en supprimant le module.

 

Impressionnant même en recommençant, impossible d'aller plus loin ni d'accéder à l'admin entière de mon prestashop. Pas très rassurant quand-même.

 

Quelqu'un pourrait partager son ancienne version du module ? N°6 ça serait possible pour toi stp ?

Link to comment
Share on other sites

Sans commenter la ligne, j'arrive bien à payer via la Sandbox qui apparemment n'utilise plus que le TLS 1.2.

Comment est-ce possible si le module demande un forçage en TLS 1.0 ?

J'ai du mal à comprendre l'utilité de commenter la ligne si cela fonctionne tout de même avec.

C'est technique, en simplifiant a l'extrème , il n'existe pas a proprement parler de TLS1.2, c'est du TLS1 avec un série de cipher (algo de cryptage). Les 2 pairs ton serveur et le serveur paypal cherchent à négocier l'algo le plus pertinent. Si tu n'as pas de https pour des "vieux" (j'insiste sur les ") clients/navigateurs, il est fort probable que ton admin sys (ou toi sans le savoir) ne présente que des cipher acceptable au niveau 1.2 du peer (partenaire) dans ce cas, no problémo, le "protocole" deviendra TLS1.2. Ce n'est pas du tout ça (enfin pas absolument ça), mais le raisonnement te permettra d'appréhender.

Ce que tu dois retenir c'est que le client (dans ce cas ton serveur) négocie avec le serveur (ici le serveur prod ou sandbox de paypal) un protocole d'échange pendant ce que l'on appelle "tls handshake".

Si l'un parle anglais + français et l'autre anglais + chinois, il décient conjointement de parler ... anglais

 

Fonction de tes tests tu n'as pas vraiment besoin de patcher ton code ... enfin jusque TLS1.3 au moins

Link to comment
Share on other sites

Bonjour à tous, 

 

Nous sommes désolés de voir que cette mise à jour ait pu causer des soucis chez certains marchands. Nous avons fait le tests sur plusieurs environnements différents de notre côté (certains utilisant TLS1.2, certains n'ayant pas cette version du protocole) et nous n'avons pas rencontré les deux problèmes indiqués. 

 

Nous allons publier dès que possible une version corrective comprenant les modifications suivantes : 

 

- Vérification de la disponibilité de cURL, ce qui corrigera l'erreur rencontré par les marchands ne disposant pas cURL sur leur serveur. A noter que si cURL n'est pas disponible, le module PayPal ne sera plus utilisable à partir de Juillet.

- Suppression de la ligne forçant l'utilisation de TLS 1 lors du test, ce qui va corriger le message d'alerte affiché actuellement "abusivement".

 

Concernant le forçage du protocole SSL lors des vrais calls vers PayPal, cette modification a été réalisée à leur demande en décembre 2014 lors de la faille Poodle SSL. Il est vrai qu'en principe le serveur doit utiliser la dernière version disponible, mais compte tenu de l’hétérogénéité des plateformes, on risque de rencontrer des effets de bords en ne forçant plus. Nous échangeons actuellement avec PayPal afin de trouver la meilleure solution.

 

Thoma
Link to comment
Share on other sites

bonjour à vous tous, toutes,

 

j'ai un soucis avec Paypal et Chrome sur mon site. On ne peut plus cliquer sur le bouton Paypal dans le tunel de vente pour aller vers la page Paypal.

J'ai fait comme il ne faut pas faire, mettre à jour le module et je me suis retrouvé avec le meme soucis que vous autres.

 

Je suis repassé sur la version  v3.6.8  

Et j'ai tjrs le meme problème.

 

Sur IE, safari et FF ca marche. Sauf sur Chrome.

 

Avez vous rencontré ce soucis?

merci par avance.

cdlt

Link to comment
Share on other sites

 

Bonjour à tous, 

 

Nous sommes désolés de voir que cette mise à jour ait pu causer des soucis chez certains marchands. Nous avons fait le tests sur plusieurs environnements différents de notre côté (certains utilisant TLS1.2, certains n'ayant pas cette version du protocole) et nous n'avons pas rencontré les deux problèmes indiqués. 

 

Nous allons publier dès que possible une version corrective comprenant les modifications suivantes : 

 

- Vérification de la disponibilité de cURL, ce qui corrigera l'erreur rencontré par les marchands ne disposant pas cURL sur leur serveur. A noter que si cURL n'est pas disponible, le module PayPal ne sera plus utilisable à partir de Juillet.

- Suppression de la ligne forçant l'utilisation de TLS 1 lors du test, ce qui va corriger le message d'alerte affiché actuellement "abusivement".

 

Concernant le forçage du protocole SSL lors des vrais calls vers PayPal, cette modification a été réalisée à leur demande en décembre 2014 lors de la faille Poodle SSL. Il est vrai qu'en principe le serveur doit utiliser la dernière version disponible, mais compte tenu de l’hétérogénéité des plateformes, on risque de rencontrer des effets de bords en ne forçant plus. Nous échangeons actuellement avec PayPal afin de trouver la meilleure solution.

 

Thoma

De mémoire, lors de la faille Poodle nous sommes intervenus immédiatement, en attendant que vous publiez un correctif 4 jours plus tard. On expliquait déjà qu'il suffisait de commenter ou supprimer cette ligne.

 

Et, remettons les choses en place, Paypal n'a jamais demandé de forcer le sslversion, c'était votre choix. Paypal a juste demandé de supprimer tous les appels négociant en SSL 3 (code ajouté dans la version 2.8.6, bien avant la faille Poodle)

D'ailleurs, les anciennes versions qui ne forçaient rien du tout fonctionnent toujours aujourd'hui et n'ont jamais rencontré le bug.

 

Ne mélangeons pas admin serveur et module Prestashop, chacun à sa place et les oies seront bien gardées.

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

Je n'utilise plus Paypal depuis longtemps, mais par contre le forum depuis Janvier 2014  et je ne comprends pas comment on peut avoir que 239 messages en étant Partner Agency et avec des modules autant utilisés !

 

 

C'est simple : ils ne répondent que rarement aux questions/sollicitations qui leur sont posées ... même sur Twitter, rien n'y fait !

Link to comment
Share on other sites

bonjour a tous

 

j'ai pas trop suivi vos  discutions ... ça cause trop technique pour moi 

mais toujours est il que certains de me clients ne peuvent plus payer avec paypal ...... 

 

ils se retrouvent avec une page a la c.. et en cliquant sur le bouton PP il ne se passe rien 

 

y a pas d'autre solution que de bricoler le code ???

sachant que je n'y connais rien ...

Link to comment
Share on other sites

Bonjour,

 

Nous réalisons le module Paypal avec Paypal : chaque modification est conçue puis revue par leur équipe technique. Oui, le forçage de la version de SSL a été ajouté avant la faille Poddle, c'est d'ailleurs à cause de cela que nous avons dû mettre à jour le module suite à la découverte de la faille. Nous ne faisons pas ce que nous voulons sur ce module.

 

En plus des échanges avec Paypal, chaque nouvelle version du module est revue par PrestaShop (comme tous les modules diffusés sur Addons), ce qui créé systématiquement un délais entre l'identification d'un problème, la conception de la solution, et la diffusion.

 

Pour le support des modules eBay & Paypal, nous utilisons un système de gestion de ticket accessible ici sur support.202-ecommerce.com, en effet, un forum ne permet pas de suivre les différentes demandes d'un marchand, obtenir les accès au BO de la boutique, etc... 

 

@minimeca : nous publions une version correctrice dès que possible, pouvez-vous ouvrir un ticket sur support.202-ecommerce.com pour que nous confirmions que votre problème est bien celui que nous avons identifié ?

 

Pour les autres modules partenaire, il faut contacter le partenaire directement, qui nous contacte, si il le juge nécessaire.

 

Matthieu

Link to comment
Share on other sites

Bonjour

 

j'ai bien lu tous vos messages mais je ne comprend pas tous desolé je suis novice.

 

Je viens de créer ma boutique et j'ai voulu comme tous le monde mettre le module paypal pour que mes clients puissent payer.

Bien sur message d'erreur quand on clic sur paypal.(voir photo)

 

quelqu'un peut me dire quoi faire? en plus simplifié lol 

je vous en supplie car je sais plus quoi faire

 

Merci et bonne journée a vous

post-1237700-0-40575200-1461141390_thumb.jpg

Link to comment
Share on other sites

Je ne sais pas ou trouver cet emplacement

 

Dans /modules/paypal/api/paypal_connect.php vers la ligne 88

// @curl_setopt($ch, CURLOPT_SSLVERSION, defined('CURL_SSLVERSION_TLSv1') ? CURL_SSLVERSION_TLSv1 : 1);

 

 

Jai créé ma boutique avec prestashop cloud je sais pas si sa change quelque chose

Link to comment
Share on other sites

Télécharger le module dans le lien, allez dans votre BO > Module > ajouter un module et uploader le module. Le correctif est compris dedans il me semble...

ou

Pour le icloud, vous avez un accès FTP aussi, je suppose, je suis sur serveur dédié, donc si vous ne passez pas via le BO, vous connectez via votre FTP ou accès via interface d'administration, décompresser le module de votre ordi et le mettre dans le répertoire / modules, puis aller dans votre BO, chercher Paypal et activer et configurer, puis testez...

Link to comment
Share on other sites

moi  c'est hébergé je ne sais pas ou .....

 

Le cloud est hébergé chez OVH.

 

Pour avoir accès à votre répertoire /modules, vous devez activer l'accès de votre ftp dans votre compte Prestashop/boutique

Link to comment
Share on other sites

Pourquoi s'obstiner a déboguer l'indépannable.

 

1/ Le Cloud c'est le Cloud.

2/ Nous sommes en Avril, d'ici Juillet j'ose espérer que PrestaShop/202 aura mis à jour le module.

3/ Quel besoin quand on n'y connait rien d'aller bidouiller ?

4/ Si votre shop ne marche plus suite à une mise à jour d'un module PrestaShop Native Module de PrestaShop par PrestaShop pour PrestaShop, ouvrez un ticket vers PrestaShop pour le faire corriger, c'est tout

Link to comment
Share on other sites

excusez moi mais les tickets prestashop ou y répondent qu'il n'y a pas de soucis alors que sa ne fonctionne pas....

j'ai déjà donné et je trouve sa un peu abusé.

 

et oui j'essai de régler le soucis car paypal est le moyen de paiement préféré par mes clients et c'est plutôt prestashop qui devrait se dépêcher a réparer l'erreur plutôt que nous sa c'est sur.

Link to comment
Share on other sites

Pendant qu'on y est et vu qu'il parait que 202ecommerce travaille en collaboration étroite avec Paypal, il serait temps de créer une vérification sur les monnaies supportées par ce module (24 uniquement, voir https://developer.paypal.com/docs/classic/mass-pay/integration-guide/currency_codes/) et désactiver les options devise du client ou devise par défaut ou toute autre devise dans le cas où celles-ci ne sont pas supportées par Paypal.

Ceci pour éviter d'avoir ce genre d'erreur vraiment très explicite:

<b>PayPal response:</b>
TIMESTAMP -> 2016-04-20T09:14:26Z
L_ERRORCODE0 -> 10001
L_SHORTMESSAGE0 -> Internal Error
L_LONGMESSAGE0 -> Timeout processing request

Et devoir patcher le code pour forcer le paiement en €, $ ou toute autre monnaie reconnue...

  • Like 1
Link to comment
Share on other sites

@fred simiand, Quel soucis ? le serveur paypal de production (api-3t.paypal.com) fonctionne actuellement indifférement que tu sois en TLS1.0, TLS1.1 ou TLS1.2, Seulement à partir de Juillet l'obligation d'être en TLS1.2 sera, d'ici là, même mal fichu le module fonctionne. Après si tu y tiens tu regarde ton panel Cloud, récupère ton accès FTP, tu ouvre ton filezilla avec serveur "ton url de boutique" user et mot de passe précisé dans ton panel, tu vas dans le répertoire modules/paypal de ton FTP et tu procède à l'ajustement de ton choix. Ceci te fait sortir du cadre des CGV et PrestaShop aura beau temps de te faire payer ensuite pour corriger au prétexte que tu as touché le code que tu n'es pas censé toucher.

Link to comment
Share on other sites

faut savoir si c'est indépannable ou pas .... l'astuce de commenter la ligne 88 du module ça marche ou pas ??

 

moi je ne suis pas sur le cloud, et sur ma boutique, a 95% les gens payent en paypal .... j'ai pas les moyens d'attendre la saint glin glin

Link to comment
Share on other sites

@fred

10002 Authentication/Authorization Failed Username/Password is incorrect This error can be caused by an incorrect API username, an incorrect API password, or an invalid API signature. Make sure that all three of these values are correct. For your security, PayPal does not report exactly which of these three values might be in error.

 

Cette erreur provient d'autre chose que le fil de cette discussion il me semble

 

Tu as surement mal recopié tes identifiants dans la config module

Link to comment
Share on other sites

faut savoir si c'est indépannable ou pas .... l'astuce de commenter la ligne 88 du module ça marche ou pas ??

 

moi je ne suis pas sur le cloud, et sur ma boutique, a 95% les gens payent en paypal .... j'ai pas les moyens d'attendre la saint glin glin

 

Je n'ai pas l'habitude de donner des solutions qui ne marchent pas et si vous aviez lu les explications au début de ce post vous en auriez compris les raisons.

 

Vous n'avez peut-être pas de moyens mais vous me semblez bien exigeant.

La solution donnée ici fonctionne mais si elle ne vous plait pas ou vous effraye, voyez directement avec 202ecommerce ou Prestashop, c'est leur problème après tout.

  • Like 2
Link to comment
Share on other sites

Allons Eolia, maître Yoda, zen !

@minimeca

Lisez bien le topic et soyez un peu reconnaissant envers les personnes qui, de façon gracieuse et bénévole, pallient aux carences de certains développeur et de la team PS.

 

Merci encore Maître Jedi du code !! ;-)))

Link to comment
Share on other sites

 


Attention, ne changez le code du module que si vous savez ce que vous faites.

 

PrestaShop Cloud n'est pas concerné par le bug évoqué, et d'un manière générale, seul une configuration bien spécifique d’hébergement est concernée.

 

@fred simiand a très probablement mal recopié les identifiants.

 

On ajoute le problème des monnaies à la roadmap, mais on a déjà des grosses évolutions en cours / pour les 2 mois à venir.

 

Matthieu

Link to comment
Share on other sites

slt,

 

Je n'avais pas tout à fait le même message d'erreur.

Cela portait sur la reconnaissance du TLS v1.2, même si en back-office il le reconnaissait bien.

 

j'ai commenté les lignes suivantes :

/modules/paypal/classes/TLSVerificator.php  > ligne 90  > //@curl_setopt($ch, CURLOPT_SSLVERSION, $sslversion);

 

/modules/paypal/api/paypal_connect.php  > ligne 93   > //@curl_setopt($ch, CURLOPT_SSLVERSION, Configuration::get('PAYPAL_VERSION_TLS_CHECKED') == '1.2' ? 6 : 1);

 

Depuis aucun problème.

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

ce qui est assez bizarre c'est que j'ai certains clients qui arrivent a payer et d'autres ou c'est bloqué .....

 

Il ne faut pas tout mélanger et analyser les messages d'erreurs. Certains clients peuvent être bloqués pour insuffisance d'approvisionnement, identifiants incorrects, pb de communication avec leur banque,refus de carte, etc...

Link to comment
Share on other sites

Bonjour à tous
suite à la mise a jour du module paypal hier midi j'ai le bug suivant

- (le message d'erreur rouge que j'ai corrigé grace @Eolia MERCI BEAUCOUP)

- les paniers sont bien payés sur paypal (argent arrivé sur le compte) mais ils ne sont pas transformé en commande sur mon back office (ils restent en panier)

 

est-ce lié ? car les modification ne semble pas avoir resolu ce probleme.

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

je discutais avec un client pour qui sa déconnait, et il me disait que son PC a la maison était HS 

et que il avait essayé de passer la commande avec son PC de boulot ......

ça serait logique que sa boite ai mis des règles particulières pour les cookies ou les pop up et que ça bloque la page colissimo

Link to comment
Share on other sites

oui désolé ... :)

par contre dans le module paypal j'ai toujours le message a propos de la version TLS

mais ça ne semble pas affecter le fonctionnement

 

ce message n'est pas forcément fiable, tout dépend des cyphers utilisés. Dans le doute, demandez à votre hébergeur s'il gère bien le TLS 1.2 (je crois que 1&1 échoue à tous les coups à ce test)

 

Personne d'autre n'a mon bug de non création des commande depuis la mise a jour vers la version 3.10.6 ??

car ca commence a devenir handicapant ... si vous avez une idée je suis preneur

Non, et les raisons peuvent-être multiples, difficile de deviner.

Link to comment
Share on other sites

 

Bonjour à tous, 
 
Nous sommes désolés de voir que cette mise à jour ait pu causer des soucis chez certains marchands. Nous avons fait le tests sur plusieurs environnements différents de notre côté (certains utilisant TLS1.2, certains n'ayant pas cette version du protocole) et nous n'avons pas rencontré les deux problèmes indiqués.

...

 

Sans blague ? Même sur le cloud la vérification TLS fail :D

Link to comment
Share on other sites

Perso tous mes serveurs noté A+ par ssllabs.com ratent ce test mal codé.

 

Ce qui est pathétique c'est que ce bug détecté/reporté il y a 9 jours  et étant un composant critique d'un nombre incalculable de petit marchand, n'a toujours pas été corrigé.

Link to comment
Share on other sites

Bonjour,

 

Je commence avec mon nouveau site et quelques problèmes surviennent 

(le stress à J-7 jours de l'ouverture)

 

Module Paypal :

Je suis novice et sans compétences pour ce type de problème. Que dois-je faire ? Payer une hot line ?

Merci de votre retour

Gilles

 

Message sur le module après paramètrage selon mon compte Paypal

 Your configuration use version 1.0 to communicate with PayPal.From July, all payments will be blocked.Thank you to approach your hosting company to enable the TLS version 1.2

 

Link to comment
Share on other sites

Bonjour,

 

Je commence avec mon nouveau site et quelques problèmes surviennent 

(le stress à J-7 jours de l'ouverture)

 

Module Paypal :

Je suis novice et sans compétences pour ce type de problème. Que dois-je faire ? Payer une hot line ?

Merci de votre retour

Gilles

 

Message sur le module après paramètrage selon mon compte Paypal

 Your configuration use version 1.0 to communicate with PayPal.From July, all payments will be blocked.Thank you to approach your hosting company to enable the TLS version 1.2

désinstallez votre module Paypal et installez la version corrigée: http://devcustom.net/public/paypal-eolia.zip

Link to comment
Share on other sites

ben je peux charger un module quand y a écrit "nouvelle version" , mais sinon je ne sais pas comment faire ..

Oulà, on part de loin là...

 

Dans la page Modules, en haut à droite il y a un "+" (ajouter un module)

Link to comment
Share on other sites

Il y a 2 lignes à commenter si vous avez conservé la version 3.10.6

 

Faut vraiment apprendre à lire, aussi:

 

 

et en base de données, table ps_configuration, supprimez la variable de configuration PAYPAL_VERSION_TLS_LAST_UPDATE

Autrement la vérification ne sera effectuée que dans 24h.

 

Si le message est toujours rouge, voyez avec votre hébergeur

Link to comment
Share on other sites

Bonjour,

 

Merci pour ces infos. J'ai bêtement fait la MAJ en oubliant mes réflexes de base: ne jamais faire de MAJ avant d'éplucher le forum.

 

J'ai fais les modifs du post 1 et... on fait quoi quand on a le bon message mais pas la bonne couleur ??  :D

 

post-15820-0-14082600-1461773269_thumb.jpg

 

Sinon, juste pour etre sûr: c'est juste la valeur associée à PAYPAL_VERSION_TLS_LAST_UPDATE (ex: 20160427) qu'il faut supprimer, ou la variable+la valeur ?

 

Merci !

Link to comment
Share on other sites

bonsoir

 

au risque de passer pour un neuneu,  ... la ligne 88 est commenté, la variable est supprimé ..... j'ai toujours le message TLS

et j'ai toujours un fonctionnement aléatoire de paypal .....

 

désolé  :ph34r:

Dans paypal/classes/TLSVerificator.php c'est la ligne 89 à supprimer

Dans paypal/api/paypal_connect.php c'est la ligne 93

 

Bonjour,

 

Merci pour ces infos. J'ai bêtement fait la MAJ en oubliant mes réflexes de base: ne jamais faire de MAJ avant d'éplucher le forum.

 

J'ai fais les modifs du post 1 et... on fait quoi quand on a le bon message mais pas la bonne couleur ??  :D

 

attachicon.gifscreenshot-pp2.jpg

 

Sinon, juste pour etre sûr: c'est juste la valeur associée à PAYPAL_VERSION_TLS_LAST_UPDATE (ex: 20160427) qu'il faut supprimer, ou la variable+la valeur ?

 

Merci !

La couleur vient de votre version Prestashop^^

 

Vous pouvez supprimer les 2 elle sera recrée.

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...