Version complète: sur le forum Webmaster Hub : Le système NIP de paypal
Webmaster Hub > Création et exploitation de Sites Internet > E-commerce
Dadou
Bonjour, j'intègre pour le compte d'un client le bouton "Payez maintenant" de paypal, mais voila, après avoir intégré ledit bouton, j'aurais aimé testé mon script nip afin de vérifier que ma mise à jour de BDD se fait bien, et que les mails d'informations aussi

j'ai bien essayé de me connecter à la centrale des dev de paypal, mais rien ne semble fonctionner

Merci d'avance
marcb
Quelle solution as-tu choisi ?

Solution 1 : le bouton crypté

Solution 2 : vérification manuelle des données avec les 3 fichiers php :
- le script avec le bouton 'paiement immédiat'
- la page de retour de l'internaute (un simple message)
- la page nip appelée 'secrètement' par paypal



M
Dadou
La solution 2.

J'ai essayé de créer un compte sur la sandbox, mais à chaque fois j'ai un message d'erreur (et j'avoue pas trop envie de faire un test en "direct")
marcb
A quel moment tu as une erreur ?
Et quel message d'erreur ?

Un test indispensable (mais absolument pas suffisant) consiste à appeler depuis un navigateur la page
nip 'secrètement' appelée par paypal. En ajoutant
CODE
error_reporting(E_ALL);
au début de la page.

M
Dadou
Je n'ai pas de message d'erreur sur la page en elle même, mais je n'arrive pas à me créer un compte sur la sandbox ni comprend comment elle fonctionne.


Sinon, j'ai appelé directement la page nip avec l'info que tu as donné, et voila ce que j'obtient :
CITATION
Notice: Undefined index: mc_gross in /home/www/client/www/passeport76/paypal/nip.php on line 28

Notice: Undefined index: invoice in /home/www/client/www/passeport76/paypal/nip.php on line 29
marcb
Dadou,

Il faut d'abord créer un compte ici : https://developer.paypal.com/devscr?cmd=_signup-run
Après, tu dois te créer au moins deux comptes de test (create test account) :
- un compte type business pour simuler le vendeur
- un compte type personal pour simuler un acheteur

Configurer le script nip à partir des informations du compte 'business'.
Se connecter à ton site, et simuler un achat avec le compte 'personnal'.

En ce qui concerne les Notices de ta page nip.php, peux tu afficher les lignes 28 et 29 stp ?

M
Dadou
J'ai bien créé le compte dev à l'adresse que tu donnes, mais pour créer les deux comptes de test, j'ai un message d'erreur :

CITATION
Sorry, an error has occurred
ConnectionManagerError: Cannot connect to 1:10.6.192.91:30913 (unknown user). Gave up after 1 try. Backtrace: aea6b89 aea6b19 ae838ba aec5ce7 aec9904 aec823d adb4c78 ba72469 b751eb1 bb782a7 b635029 b621ba6 b660fa3 8aba77a 8abc08b a05a8f2 9fea067 9fe92dd 807a299 80acbd5 808efac 805fe57 40d819cb 805f8e1


Sinon, au niveau des lignes 28 et 29 :
CODE
$mc_gross = $_POST['mc_gross'];
$invoice  = $_POST['invoice'];



Du coup, ce que j'ai fait, j'ai testé la partie d'actualisation de mon site en forçant ces deux valeurs et en mettant en commentaire tout le code nip. mon code de traitement fonctionne, maintenant, me manque la confirmation que la page nip va bien récupérer les bonnes infos
marcb
CITATION(Dadou @ mardi 28 août 2007 à 11:30) *
J'ai bien créé le compte dev à l'adresse que tu donnes, mais pour créer les deux comptes de test, j'ai un message d'erreur :
[...]


Alors là je ne vois pas... Tu es sûr d'être bien connecté ?
Tu es bien sur cette page-là lorsque tu cliques sur 'Create test account' : https://developer.paypal.com/cgi-bin/devscr...ox-acct-session ?

CITATION(Dadou @ mardi 28 août 2007 à 11:30) *
Sinon, au niveau des lignes 28 et 29 :
CODE
$mc_gross = $_POST['mc_gross'];
$invoice  = $_POST['invoice'];

Du coup, ce que j'ai fait, j'ai testé la partie d'actualisation de mon site en forçant ces deux valeurs et en mettant en commentaire tout le code nip. mon code de traitement fonctionne, maintenant, me manque la confirmation que la page nip va bien récupérer les bonnes infos


Tu n'as pas assez de contrôles sur ton retour nip. Il faut tester l'ensemble des variables concernant la transaction si tu
veux être certain que personne ne tente de falsifier un élément du paiement. Ca devrait donner ça :

CODE
$invoice          = $_POST['invoice'];
$last_name        = $_POST['last_name'];
$item_number      = $_POST['item_number'];
$payment_status   = $_POST['payment_status'];
$payment_amount   = $_POST['mc_gross'];
$payment_currency = $_POST['mc_currency'];
$txn_id           = $_POST['txn_id'];
$receiver_email   = $_POST['receiver_email'];


Marc
Dadou
Oui, oui je suis allé au bon endroit, je viens encore de le faire regarde le résultat : http://www.normandie-creation.com/test/paypalsandbox.swf

je vais rajouter les variables que tu indiques pour valider les test
marcb
CITATION(Dadou @ mardi 28 août 2007 à 22:23) *
Oui, oui je suis allé au bon endroit, je viens encore de le faire regarde le résultat :


Effectivement il y a un message d'erreur, mais en même temps le compte semble correctement
créé à la fin. Essaie de créer un compte buyer et d'effectuer ton test complet.

M
Dadou
Oui créé bien les compte, mais pas de carte associée sad.gif
marcb
Bonsoir,

Tu n'as pas besoin de générer un numéro de carte, puisque ton compte 'buyer' a un
crédit (fictif) sur paypal. Tu peux te servir de ce montant pour simuler des achats.

M
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.