Bonjour, tout d'abord je suis pas sur d'être dans la bonne section, si je suis dans la mauvaise section veuillez m'excuser.
Voilà mon problème : j'ai besoin d'utiliser l'API Paypal NVP, donc j'ai mis au point un script pour simuler l'achat d'un produit de prix 62.00 € :
La requete sous forme d'URL qui sera lancée ensuite via Curl se présente comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $prixrequete = 23.00; //La déclaration de la variable du prix avec 2 décimales séparées par un point comme l'exige l'API Paypal NVP.
Alors le seul truc qui ne fonctionne pas c'est le prix, a chaque fois il est fixé à 10.00 €, je ne sais pas pourquoi, pourtant tous les autres trucs marchent comme l'image de bannière, la description...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 $requete = 'https://api-3t.sandbox.paypal.com/nvp?'; $requete = $requete.'VERSION='.$version.'&USER='.$user.'&PWD='.$pass.'&SIGNATURE='.$signature; $requete = $requete."&METHOD=SetExpressCheckout". "&CANCELURL=".urlencode("http://XXXXX.com/index.php?opt=cancelpaypal"). "&RETURNURL=".urlencode("http://XXXXX.com/index.php?opt=successpaypal"). "&AMT=".$prixrequete. //C'est la que le prix est défini dans la requete Paypal. "&CURRENCYCODE=EUR". "&INVNUM=".urlencode($rand). "&DESC=".urlencode($description). "&LOCALECODE=FR". "&HDRIMG=".urlencode("http://www.XXXXX.com/images/banner.png");
Voilà le resultat :
Bien entendu j'ai fait tous ces tests dans la sandbox Paypal.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 Array ( [TOKEN] => EC-6S849552XL839273E [SUCCESSPAGEREDIRECTREQUESTED] => false [TIMESTAMP] => 2010-01-29T20:59:44Z [CORRELATIONID] => 91ecd706cb3d0 [ACK] => Success //Succès de l'achat [VERSION] => 61 [BUILD] => 1157804 [TRANSACTIONID] => 21X83276TM306413L [TRANSACTIONTYPE] => expresscheckout [PAYMENTTYPE] => instant [ORDERTIME] => 2010-01-29T20:59:43Z [AMT] => 10.00 [FEEAMT] => 0.59 [TAXAMT] => 0.00 [CURRENCYCODE] => EUR [PAYMENTSTATUS] => Completed [PENDINGREASON] => None [REASONCODE] => None [PROTECTIONELIGIBILITY] => Ineligible [INSURANCEOPTIONSELECTED] => false [SHIPPINGOPTIONISDEFAULT] => false ) Array ( [TOKEN] => EC-6S849552XL839273E [GIFTWRAPAMOUNT] => 0.00 [CHECKOUTSTATUS] => PaymentActionCompleted [TIMESTAMP] => 2010-01-29T20:59:44Z [CORRELATIONID] => 3394517e5a400 [ACK] => Success [VERSION] => 61 [BUILD] => 1157804 [EMAIL] => XXXXXXXX@XXX.XX [PAYERID] => XXXXXXXXXXXX [PAYERSTATUS] => verified [FIRSTNAME] => Test [LASTNAME] => User [COUNTRYCODE] => FR [SHIPTONAME] => Test User [SHIPTOSTREET] => Av. de la Pelouse, 87648672 Mayet [SHIPTOCITY] => Paris [SHIPTOSTATE] => Alsace [SHIPTOZIP] => 75002 [SHIPTOCOUNTRYCODE] => FR [SHIPTOCOUNTRYNAME] => France [ADDRESSSTATUS] => Unconfirmed [CURRENCYCODE] => EUR [AMT] => 10.00 //Voila le prix était fixé a 62.00 et la il apparait a 10.00 et le compte a été crédité de 10.00 non pas de 62.00 comme prévu ce qui est plutot embetant ! [SHIPPINGAMT] => 0.00 [HANDLINGAMT] => 0.00 [TAXAMT] => 0.00 [DESC] => Ceci est un produit TEST [INVNUM] => 10304260711132279592 [INSURANCEAMT] => 0.00 [SHIPDISCAMT] => 0.00 [TRANSACTIONID] => 21X83276TM306413L [INSURANCEOPTIONSELECTED] => false [SHIPPINGOPTIONISDEFAULT] => false )
Et après de très nombreux essais je ne trouve pas d'ou vient le probleme, ni comment le regler !
En esperant que vous pourrez m'aider !
Merci à vous !
Partager