PHPascal.com
Accueil Programmation web Optimisation Liens Fonctionnement du site À propos de l'auteur Plan du site
Programmation web CSS HTML PHP RSS SQL Outils

Modifier la couleur:

Style du site en bleu
Style du site en orange
Style du site en mauve
Style du site en noir
Style du site en rouge
Style du site en vert


Valid XHTML 1.0 Transitional

CSS Valide !

Programmation web / PHP / Installer IPN de paypal

Mettre en place la notification instantané avec Paypal

Voici comment faire pour obtenir la notification instantané avec Paypal. (IPN en anglais instant payment notification).

L'installation de l'IPN permet a un site marchand de savoir quand une commande est payé et permet de faire les étapes relative qui suit le payement d'une commande.

Il y a deux étapes pour mettre en place ce système de confirmation en temps réel des achat sur PayPal:

  1. Créé un script qui va être appeler par PayPal lors d'un achat
  2. Configurer le compte PayPal en activant l'IPN en spécifiant l'url de votre script

Voici le code source d'un script qui permet la récupération des information sur un achat d'une commande:
<?php

// read the post from PayPal system and add 'cmd'
$req = 'cmd=_notify-validate';

foreach ($_POST as $key => $value) {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
}

// post back to PayPal system to validate
$header .= "POST /cgi-bin/webscr HTTP/1.0\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
$fp = fsockopen ('www.paypal.com', 80, $errno, $errstr, 30);

// assign posted variables to local variables
$item_name = $_POST['item_name'];
$item_number = $_POST['item_number']; // id commande
$payment_status = $_POST['payment_status']; // Completed,
$payment_amount = $_POST['mc_gross']; //0.01
$payment_currency = $_POST['mc_currency']; //CAD
$txn_id = $_POST['txn_id'];
$receiver_email = $_POST['receiver_email'];
$payer_email = $_POST['payer_email'];

if (!$fp) {
// HTTP ERROR
} else {
fputs ($fp, $header . $req);
while (!feof($fp)) {
$res = fgets ($fp, 1024);
if (strcmp ($res, "VERIFIED") == 0) {

// check the payment_status is Completed
// check that txn_id has not been previously processed
// check that receiver_email is your Primary PayPal email
// check that payment_amount/payment_currency are correct
// process payment


if ($payment_status == "Completed")
    {
    // si le payment est accepter  traitement de l'information
   
   
    }


}
else if (strcmp ($res, "INVALID") == 0) {
// log for manual investigation
}
}
fclose ($fp);
}
?>


Vous n'avez qu'a rajouter votre programmation si la transaction est complété ("Completed")


Une fois ce fichier créé il ne reste plus qu'a indiquer son url à Paypal:
  • Ouvrer votre compte paypal et cliquer dans le menu du haut sur 'Solution e-commerce'
  • Cliquer dans le menu de côté sur 'Paiements sur site marchand' puis sur 'Liste de fonctions'
  • Dans cette page trouver 'Notification instantanée de paiement' puis cliquez sur configuration.

Par la suite: cocher la case, entrer l'url de votre page script et cliquer sur enregistrer.

L'installation est maintenant terminer et votre script va être automatiquement appeler à chaque transaction Paypal.

installation notification paypals



Choisir url INP paypal
Articles écrit le 2008-07-21



Autres articles sous la même catégorie

  • Redimentionner une image avec Imagemagik avec un script php
  • Ré-écriture des url - 'RewriteRule' - url pour moteur de recherche
  • Faire des includes php - inclure des pages en php
  • Requête sql en php - Faire une requete sql avec PHP
  • Fichier de connexion sql
  • Gestion des erreurs en PHP avec une fonction
  • Comment mettre des commentaires dans une page PHP

  • ADMIN | © PHPascal.com 2008
    Fait au Québec