Aller au contenu

Paypal : Etre sur que le paiement a été effectué ?


LauBelette

Sujets conseillés

Slt à tous,

J'ai développé une solution d'e-commerce sur mon site avec paypal mais j'ai une question :

Comment être certain que le paiement par paypal a bien été effectué ?

Je génère de manière dynamique (en php) un bouton "Acheter maintenant".

Dans cette génération, je met une adresse de retour avec un paramètre me permettant d'identifier le paiement en question. Lors du retour, je récupère ce paramètre afin de savoir quel est le paiement en question.

Cette méthode est-elle acceptable et assez sécurisée ou pas ?

Donnez votre avis et éventuellement une autre manière de faire.

Merci beaucoup

PS : J'ai vu sur le site de PayPal qu'il y avait moyen d'avoir les informations sur paiements en retour mais comment cela marche t-il ?

Modifié par LauBelette
Lien vers le commentaire
Partager sur d’autres sites

  • 1 month later...

Bonjour,

Les deux façons d'avoir une notification automatique de PayPal sont décrites dans les bibles situées à:

- https://www.paypal.com/fr_FR/FR/pdf/PP_Orde...rationGuide.pdf

- https://www.paypal.com/fr_FR/FR/pdf/PP_Webs...rationGuide.pdf

- Le "Transfert des données de paiement" (TDP ou PDT en Anglais). C'est un processus synchrone: l'utilisateur paie, son navigateur le redirige vers votre site, la requete inclut un "token" que vous envoyez au serveur PayPal pour avoir toutes les infos sur la transaction.

- La "Notification instantanée de paiement" (NIP ou IPN en Anglais). C'est un processus asynchrone: l'utilisateur paie, revient (ou non) sur votre site. En parallele, le serveur paypal appelle votre serveur à une URL que vous avez spécifiée et vous envoie toutes les données sur les transactions.

D'un point de vue sécurité, les deux sont équivalentes. Elles sont complètement sûres, à condition que vous les implémentiez exactement comme décrit dans le guide et que vous vérifiez dans les paramètres envoyés par paypal que le montant (et la devise!) sont ce à quoi vous vous attendiez.

Idéalement, vous implémentez les 2 et vous gérez ça correctement sachant que dans la majorité des cas (mais pas toujours, e.g. si l'utilisateur ferme son navigateur avant de revenir sur votre site, vous n'aurez pas de TDP), vous recevrez 2 notifications par transaction, dans un ordre arbitraire.

Sinon si vous ne vous sentez pas d'attaque pour faire les deux, à vous de voir, sachant que:

- le défaut de TDP c'est que si l'utilisateur ne retourne pas sur votre site (il ferme son navigateur), vous n'aurez pas de notification automatique

- le défaut de NIP, c'est que c'est asynchrone, donc sans garantie que ça arrive tout de suite.

Bon, ça a peut-etre l'air complique, mais en fait si vous copiez et collez le code d'exemple qui se trouve sur les pages - https://www.paypal.com/fr/cgi-bin/webscr?cm...l/rec/ipn-intro

et https://www.paypal.com/fr/cgi-bin/webscr?cm...l/rec/pdt-intro, vous verrez que c'est assez simple :)

a votre dispo si vous avez d'autres questions ou si ceci n'est pas clair.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...