Obtenir des informations de la part de PayPal après une opération
Je veux créer une simple opération sur mon Site Web où la personne, après la transaction est terminée, je veux paypal pour rediriger l'utilisateur vers d'aller à un endroit sur mon site et je veux PayPal pour me fournir des détails si je peux utiliser le PHP pour l'analyser et de les envoyer par email le lien vers leur achat. Je ne suis pas sûr de ce que notify_url n'? Grâce
Vous devez vous connecter pour publier un commentaire.
PayPal fonctionne comme ceci:
Vous disposez d'un formulaire avec un bouton "acheter". Lorsque cela est cliqué, il transmet l'information (le produit, le prix, le nom de votre compte, etc) à PayPal.
L'acheteur s'engage à verser, et lorsque la transaction est terminée, PayPal envoyer un "IPN" (instant payment notification) à votre notifier URL - il envoie les données POST à l'URL de votre serveur. Vous répondez à PayPal pour demander si ils ont envoyé le POST de données (plutôt que d'un imposteur) et si ensuite, ils répondent que c'est une transaction immobilière, vous pouvez relâcher le produit au client. Notez que tout cela se passe en arrière-plan pendant que votre acheteur est toujours "à" le site de PayPal.
Il y a une dernière étape facultative, qui est que PayPal renvoie à l'acheteur de votre site web. Dans ce cas, il envoie à l'acheteur de retour à votre "retour" de l'url, et ils peuvent (éventuellement) transmettre les données de transaction de nouveau, (ils appellent cela PDT). Et vous pouvez encore vérifier avec Paypal si c'est une transaction valide et de proposer un téléchargement, etc à ce stade.
La plus difficile que personne n'explique, c'est que le acheteur ne pas être redirigé vers votre notifier URL. c'est à dire le "visiteur" à votre site web de l'informer de l'URL est PayPal, pas l'acheteur, de sorte que cela ne se produise pas dans le cadre de votre acheteur de session. Si vous souhaitez conserver une session à travers les trois parties de ce processus, alors vous avez besoin pour créer un moyen de suivi de l'acheteur dans le formulaire, et le passer à PayPal dans un champ de la forme dite "personnalisée". Ces données sont passées de nouveau à vous dans l'IPN et PDT de données, et vous pouvez l'utiliser pour re-établir une connexion avec l'original de la session de l'utilisateur.
Vous avez vraiment besoin de mettre en œuvre les deux IPN et PDT - si l'IPN e-mail échoue, alors vous avez PDT comme une sauvegarde. Et si l'utilisateur ferme son navigateur web avant qu'ils ne soient redirigés vers votre PDT de la page, puis vous avez envoyé un IPN e-mail comme une sauvegarde.
De recherche sur IPN et PDT et vous trouverez beaucoup d'information. PayPal ont également toute la documentation et les exemples de scripts.
The buyer then agrees to pay you and when the transaction is completed, PayPal send an "IPN" (instant payment notification) to your notify URL
bien un IPN est de l'envoyer, même si la transaction n'est pas terminée (comme dans le paiement est en attente). Aussi,Note that this all happens in the background while your buyer is still "at" the PayPal website
n'est pas techniquement vrai, Paypal envoie des notifications à l'auditeur (ou le gestionnaire) de temps après (quelques jours après) de l'utilisateur revient sur le site, dans deux cas au moins: gestionnaire ne répond pas ou lorsque vous traitez avec les abonnements etc.Informer URL devrait conduire à l'script qui enregistre les données renvoyées de PayPal, tels que:
Vous pouvez également choisir de vérifier une commande plus tard:
Lors de l'analyse du PDT de réponse, je suis en utilisant parse_str. Depuis le corps de la réponse est encodée url, il suffit juste de remplacer les sauts de ligne avec des arobases - comme ce
selon l'application, vous pouvez même laisser le second paramètre ($this->détails) et les valeurs sont définies comme des variables globales.