Créer le bouton “Acheter maintenant”
Avant il est nécessaire d’être passé par l’étape 1 : Création des comptes de tests Paypal
Pour commencer les fichiers.
Voici la structure des fichiers.
Un fichier item.php qui va contenir le bouton de l’objet ou du service à vendre
Un fichier notify.php qui va recueillir les informations IPN de paypal pour ensuite mettre à jour votre base de donnée.
Dans le fichier item.php :
A l’endroit ou vous voulez générez votre bouton vous allez insérer le code suivant :
-
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
-
<input name="cmd" type="hidden" value="_xclick" />
-
<input name="business" type="hidden" value="informatique_1203193464_biz@votremail.com" />
-
<input name="item_name" type="hidden" value="nom de l’objet vendu" />
-
<input name="amount" type="hidden" value="30.00" />
-
<input name="shipping" type="hidden" value="0.00" />
-
<input name="no_shipping" type="hidden" value="0" />
-
<input name="custom" type="hidden" value="unevaleurpersonnalisée" />
-
<input name="return" type="hidden" value="http://www.monsite.com/paypal/finpaiement.php" />
-
<input name="cancel_return" type="hidden" value="http://www.monsite.com/paypal/annuler.php" />
-
<input name="notify_url" type="hidden" value="http://www.monsite.com/paypal/notify.php" />
-
<input name="no_note" type="hidden" value="1" />
-
<input name="currency_code" type="hidden" value="EUR" />
-
<input name="tax" type="hidden" value="0.00" />
-
<input name="lc" type="hidden" value="FR" />
-
<input name="bn" type="hidden" value="PP-BuyNowBF" />
-
<input alt="Effectuez vos paiements via PayPal : une solution rapide, gratuite et sécurisée" name="submit" src="https://www.paypal.com/fr_FR/FR/i/btn/btn_buynow_LG.gif" type="image" /><img src="https://www.paypal.com/fr_FR/i/scr/pixel.gif" border="0" alt="" width="1" height="1" />
-
</form>
Correspond à l’url paypal ou on envoie les données de paiement
-
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post"></form>
-
-
<span style="color: #000080;"><strong> correpond au boutton achat immédiat</strong></span>
-
<pre lang="html"><input name="cmd" type="hidden" value="_xclick" />
ici votre adresse fictive de paiement
-
<input name="business" type="hidden" value="informatique_1203193464_biz@votremail.com" />
très important il vous faut générer un nom suffisament explicite pour votre vente
-
<input name="item_name" type="hidden" value="nom de l’objet vendu" />
prix de l’objet
-
<input name="amount" type="hidden" value="30.00" />
prix des frais d’envoie (s’il y en a)
-
<input name="shipping" type="hidden" value="0.00" />
une fois payé l’utilisateur retournera sur cette page
-
<input name="return" type="hidden" value="http://www.monsite.com/paypal/finpaiement.php" />
page sur laquelle retourne l’utilisateur s’il décide d’annuler son achat. Peut être equivalente à la page qu’il avait quitté pour aller payer soit : item.php
-
<input name="cancel_return" type="hidden" value="http://www.monsite.com/paypal/annuler.php" />
très important! c’est la page où paypal va retourner l’IPN
-
<input name="notify_url" type="hidden" value="http://www.monsite.com/paypal/notify.php" />
la valeur dans laquelle vous souhaitez être payé
-
<input name="currency_code" type="hidden" value="EUR" />
la tva s’il y en a une
-
<input name="tax" type="hidden" value="0.00" />
la langue par défaut
-
<input name="lc" type="hidden" value="FR" />
Une variable très importante voir même la plus importante pour vous en effet vous allez faire passer dans cette variable l’identifiant du client qui à acheté le produit + l’identifiant unique du produit+ tout autre valeur que vous jugerez nécessaire
-
<input name="custom" type="hidden" value="unevaleurpersonnalisée" />
le reste c’est pour le bouton
-
<input name="bn" type="hidden" value="PP-BuyNowBF" />
-
<input alt="Effectuez vos paiements via PayPal : une solution rapide, gratuite et sécurisée" name="submit" src="https://www.paypal.com/fr_FR/FR/i/btn/btn_buynow_LG.gif" type="image" /><img src="https://www.paypal.com/fr_FR/i/scr/pixel.gif" border="0" alt="" width="1" height="1" />
Je vous invites pour plus d’option à visiter ce lien qui contient une description des variables.
Pour chacune des variables du formulaire si vous voulez créer un bouton dynamiquement il vous faudra
faire un echo de la valeur à entrer
exemple pour le prix :
-
<input name="amount" type="hidden" value="<? echo $prix;?>" />
Si vous avez x articles présent dans une table et que vous les avez sélectionnez il suffira donc de faire
-
$result=mysql_query("votre SELECT")while ($row=mysql_fetch_array($result)){?>…… votre code html de vos boutonsexemple :
-
<input name="amount" type="hidden" value="<? echo $row[’price’]; ?>" />
Retour sur la variable custom
Celle-ci comme expliqué plus haut permet de faire passer des données personnelles nécessaire au traitement
on peut donc lui faire passer des variables que l’on sépare par un séparateur ici /:
-
<input name="custom" value="<? echo $id_user." />" type="hidden" />
-
où
$id_user est l’identifiant du client qui achète
$id_objetachete est l’objet qu’il va acheter en cliquant sur le bouton paypal.
On peut ainsi ajouter autant de paramètre que l’on veut séparé par /
Dans le fichier notify.php on récupèrera chaque paramètre en faisant un explode de la valeur $custom
-
-
…………..
-
-
……………….
Passons maitenenant à l’étape 3 : La récupération des données par IPN

un erreur :
la langue par défaut
1.
2.
c’est le pays par défaut, ce champs n’est pas obligatoire, le client aura dans ce cas à le choisir pour obtenir la page dans sa langue ; voici un exemple des valeurs possibles :
Afrique du Sud
Albanie
Algérie
Allemagne
Andorre
Angola
Anguilla
Antigua et Barbuda
Antilles néerlandaises
Arabie Saoudite
Argentine
le code html a été filtré… Résumé : le champs LC est celui du pays et pas celui de la langue