Jump to content

Recommended Posts

Merci Gaëlle,

Alors, je viens d’ouvrir un compte chez PayPal, et de l’integrer au PrestaShop en saisissant son adresse dans le module.
J'ai également configuré les préférences selon consignes du module:
Dans Mon compte > Préférences > Préférences de réception de paiements sur site marchand, réglez : – Retour automatique : Off, – Payment Data Transfer à Off.
Dans Mon compte > Préférences > Calcul des frais de livraison – check Cliquez ici afin de permettre les transactions avec prise en charge des frais de ports afin d‘écraser les paramètres du profile de transport

Mais, à l’essai, le message d’erreur m’averti que mon panier est vide.

Impossible d'en trouver la raison, malgré mon poste recent "Integrer Paypal" sur ce forum.

Me reste-t-il une dernière chance?

Share this post


Link to post
Share on other sites

Merci Gaëlle
Type de compte: Premier. Celui qui permet de vendre par internet.
J'ai bien saisi l'adresse de mon compte dans le module paypal integré au Prestashop
Le panneau d'erreur apparait au moment ou le client choisit le mode de payement Paypal.
Et voici l'adresse de ma boutique www.jafr.fr pour exemple.

Share this post


Link to post
Share on other sites

Si j'ai bien compris, Paypal Sandbox est une interface pour simuler une opération d'achat. Pour cela Paypal Sandbox m'a fait créer deux comptes factices celui de vendeur et celui de client. Or je ne peux pas effectuer d'opération factice.
A votre avis il me suffit de désactiver le Sandbox? Mais dans ce cas là, chaque essai sera une vraie opération et donc payant...
Impossible de faire des essais sans payer?

Share this post


Link to post
Share on other sites

Je viens de désactiver le Sandbox, mais le même message d'erreur (sans le logo de Sandbox) m'averti que mon panier est vide.
Qu'est-ce qu'il cloche :question: :roll:

Share this post


Link to post
Share on other sites

Je viens de faire un test en local avec un compte paypal business, chez moi ça fonctionne avec le module de base de presta. Par contre on demande toujours à nos clients d'ouvrir un compte business, peut-être est-ce le problème vu que vous avez un compte premium.... le plus simple serait peut etre de prendre contact directement avec paypal : 0821 230 291.... ce n'est pas facile de les joindre mais ils pourront peut etre vous en dire plus... ;)

Share this post


Link to post
Share on other sites

Merci Gaëlle, merci Eltitos!
Mon image d'erreur apparait quand, à la page de choix de mode de payement, je clique pour payer par paypal. Et c'est paypal qui m'envoie le message d'erreur. Et c'est pareil quand j'utilise un autre nom de client depuis un autre ordinateur. (un Macintosh aussi)
Et je n'ai rien parametré du tout. Et qu'est-ce que l'on pourrait parametrer?
Paypal Support me dit qu'il peut m'aider à installer un bouton Paypal mais ne peut rien pour moi si j'en ai déjà un!
Je veux bien tout reinstaller, mais qu'est-ce qu'il faudrait reinstaller surtout?

Share this post


Link to post
Share on other sites

En fait, ce dont il faudrait être sûr c'est que l'erreur ne provienne pas de votre compte paypal lui-même.... est ce la bonne offre? Est ce bien configuré sur votre interface paypal? Honnêtement je ne saurais pas vous guider de ce côté....
Maintenant au niveau de la boutique, d'après ce que je vois, c'est un presta classique sans spécificité. Si on part de ce principe, chez moi ça fonctionne ;)

Share this post


Link to post
Share on other sites

L'image d'Eltitos demontre quelle situation? Il a déjà appuyé sur le bouton "payer avec paypal" ou c'est juste avant. La difference de deux images est si enorme (sans doute parque j'utilise Macintosh) que je du mal à me repérer.
Dois-je par ailleurs comprendre, qu'il vous est actuellement possible à vous et à Eltitos de faire un achat avec la Paypal dans ma boutique? Cela voudrait dire que ça marche pour certains et pas pour d'autres.
De mon coté je vais changer mon offre. Et je vous tiens au courant....
Merci Gaëlle pour aujourd'hui et bonne soirée.

Share this post


Link to post
Share on other sites

l'image que j'ai poste, c'est une capture du site de paypal, donc pour ma part je peux payer sur ta boutique avec paypal sans probleme.

Je suis mac moi aussi avec chrome.

Share this post


Link to post
Share on other sites

Merci Gaëlle d'avoir pensé à moi.
Ce matin le support Paypal m'a contacté pour prendre en charge mon bug. Je vous tiendrai au courant...

Share this post


Link to post
Share on other sites

Bonjour,

Le problème vient du fait que les informations transmises à PayPal sont erronées.


Pourquoi ?

Le nom de l'objet est transmis par la variable "item_name_n" dans l'input du formulaire HTML. Cet input est généré par Smarty dans le fichier "redirect.tpl" qui se trouve dans "prestashop→modules→paypal".

Dans le cas qui nous occupe, le nom de l'objet est par exemple : "Concerto pour le premier âge" d'Ameller.
Vous pouvez remarquer que ce nom comporte des guillemets. Ces derniers ont une signification en PHP et sont donc interprétés par Smarty.

Je vous mets un petit exemple pour illustrer mon propos du fichier "redirect.tpl" de la version de Prestashop 1.3.1.1.
La ligne de redirect.tlp qui généré l'input "item_name_1" est :

<input type="hidden" name="item_name_{$k+1}" value="{$product.name}{if isset($product.attributes)} - {$product.attributes}{/if}" />



Ce qui va générer (pour notre exemple: "Concerto pour le premier âge" d'Ameller) en sortie l'input "item_name_1" du formulaire HTML qui POST les données à PayPal :

<input name="item_name_1" value="" concerto="" pour="" le="" premier="" âge="" d="" ameller="" type="hidden">



Voyez le problème, l'input est complètement faux avec des attributs incohérents car les guillemets sont interprétés comme du code alors qu'ils font juste partis du nom de notre objet.


Quelle solution ?

Il nous faut indiquer à Smarty que tout ce qui est contenu dans la variable "$product.name" ou "$product.attributes" ne doit pas être interprété en temps que code.
Pour cela on utilise le modificateur de variables "escape".

Le code du fichier "redirect.tpl" va donc être modifié de la manière suivante :

<input type="hidden" name="item_name_{$k+1}" value="{$product.name|escape:'htmlall':'UTF-8'}{if isset($product.attributes)} - {$product.attributes|escape:'htmlall':'UTF-8'}{/if}" />



Ce qui va générer, pour notre exemple ("Concerto pour le premier âge" d'Ameller), en sortie l'input "item_name_1" du formulaire HTML qui POST les données à PayPal :

<input type="hidden" name="item_name_1" value=" "Concerto pour le premier âge" d'Ameller" />



Voilà notre input correctement formaté et qui sera donc compris par PayPal.

Le fait est qu'il y a plusieurs inputs qui doivent être modifiés afin que les caractères spéciaux sont correctement formatés. Je vous mets le fichier "redirect.tpl" modifié en pièce-jointe qu'il faudra aller mettre à jour dans "prestashop→modules→paypal".

En espérant avoir été suffisamment clair,
Bonne journée à tous.

PS : Ce problème est résolu dans la version 1.4 (qui est encore en Alpha), c'est là où j'ai récupéré le fichier. :)

redirect.zip

Share this post


Link to post
Share on other sites

Re-merci Alexkid !
Pour un Beginner t'es pas en retard ! (c'est de l'humour)
Je vais donc échanger le fichier redirect. Mais quant au " plusieurs inputs qui doivent être modifiés afin que les caractères spéciaux sont correctement formatés" comment dois-je faire?

Share this post


Link to post
Share on other sites

Yes ! Pour moi ça marche ! Ça m'a pris 3 jours mais ça marche ! ! !
Merci Alexkid ! Tu es un grand Manitou !
Et merci à la bonne fée qui à pris de son temps pour modifier le titre de ce sujet et lui ajouter le Résolu. Comme ça je n'ai plus à le faire.

Share this post


Link to post
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...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More