Domanda

Sto lavorando all'integrazione di PayPal nel mio sito Web, seguendo le specifiche API di PayPal. Lo sto testando in una sandbox e dopo aver inviato un SetExpressCheckout Richiesta come questa:

CURRENCYCODE=EUR
&RETURNURL=http%3A%2F%2Fwww.xxxxxxxx
&CANCELURL=http%3A%2F%2Fwww.xxxxxxxx
&PAYMENTACTION=Sale
&L_PAYMENTREQUEST_0_NAME0=T-shirt+ring-spun+attillata%3B+taglia+L%3B+colore+Navy
&L_PAYMENTREQUEST_0_NUMBER0=0LLR7IQ-B0SIE+%28Product+%230LLR7IQ-B0SIE%29
&L_PAYMENTREQUEST_0_DESC0=160+g%2Fm%C2%B2%2C+100+%25+cotone+ring-spun%2C+pre-ristretto%2C+simple+jersey%2C+scollatura+arrotondata%2C+maniche+corte%2C+impunture+sulla+scollatura%2C+sul+bordo+delle+maniche+e+sulla+base%2C+cuciture+laterali.
&L_PAYMENTREQUEST_0_AMT0=1.90
&L_PAYMENTREQUEST_0_QTY0=1
&L_PAYMENTREQUEST_0_NAME1=T-shirt+ring-spun+attillata%3B+taglia+M%3B+colore+Dark+Heather
&L_PAYMENTREQUEST_0_NUMBER1=0LLR7IQ-2KEI1+%28Product+%230LLR7IQ-2KEI1%29
&L_PAYMENTREQUEST_0_DESC1=160+g%2Fm%C2%B2%2C+100+%25+cotone+ring-spun%2C+pre-ristretto%2C+simple+jersey%2C+scollatura+arrotondata%2C+maniche+corte%2C+impunture+sulla+scollatura%2C+sul+bordo+delle+maniche+e+sulla+base%2C+cuciture+laterali.
&L_PAYMENTREQUEST_0_AMT1=1.90
&L_PAYMENTREQUEST_0_QTY1=1
&L_PAYMENTREQUEST_0_NAME2=T-shirt+ring-spun+attillata%3B+taglia+S%3B+colore+White
&L_PAYMENTREQUEST_0_NUMBER2=0LLR7IQ-TFOHI+%28Product+%230LLR7IQ-TFOHI%29
&L_PAYMENTREQUEST_0_DESC2=160+g%2Fm%C2%B2%2C+100+%25+cotone+ring-spun%2C+pre-ristretto%2C+simple+jersey%2C+scollatura+arrotondata%2C+maniche+corte%2C+impunture+sulla+scollatura%2C+sul+bordo+delle+maniche+e+sulla+base%2C+cuciture+laterali.
&L_PAYMENTREQUEST_0_AMT2=1.59
&L_PAYMENTREQUEST_0_QTY2=1
&ITEMAMT=5.39
&TAXAMT=1.08
&SHIPPINGAMT=0.00
&AMT=6.47
&ALLOWNOTE=1
&USER=XXXXXXXX
&PWD=XXXXXXXX
&SIGNATURE=XXXXXXXX
&METHOD=SetExpressCheckout
&VERSION=53.0

Inoltro l'utente a qui, che è il token Paypal mi restituisce in risposta alla mia prima richiesta.

Il problema è che, nonostante la richiesta di successo con tutti i prezzi impostati, ho una pagina di revisione PayPal vuota, senza assolutamente prezzi.

Cosa mi manca?

È stato utile?

Soluzione

Attacco dei poveri documenti API! Paypal sicuramente ha provato duramente, ma non sono all'altezza. Ho combattuto questa API e ho vinto! :)

Cambia questi valori in quello che hai già ... fammi sapere se si prende cura del problema

&PAYMENTREQUEST_0_PAYMENTACTION=Sale [[ <--- payment action ]]
&PAYMENTREQUEST_0_CURRENCYCODE=EUR [[<-- currency code]]
&PAYMENTREQUEST_0_ITEMAMT=5.39  [[<---- subtotal here]]
&PAYMENTREQUEST_0_TAXAMT=1.08 [[<---- tax here]]
&PAYMENTREQUEST_0_SHIPPINGAMT=0.00 [[<---- shipping here]]
&PAYMENTREQUEST_0_AMT=6.47 [[<---- grand total here]]
&PAYMENTREQUEST_0_ALLOWNOTE=1

Altri suggerimenti

Questo mi ha infastidito anche per un paio di giorni.

Usando l'SDK Java da sviluppatore.paypal.com (a partire dal 2008), mi sono finalmente imbattuto in una nuova versione dell'SDK (novembre 2011) https://www.x.com/developers/paypal/documentation-tools/sdk#3

Utilizzando il nuovo SDK (in particolare, il paypal_base.jar aggiornato) non ha ancora risolto il mio problema.

Devi capire la stringa della versione API corretta per eseguirla. Con la versione "51.0" (come in alcuni dei miei codici di esempio), la chiamata non è riuscita. Come con la versione "78.0", il nuovo SDK ha fatto il lavoro.

Cheerio ....

Oltre agli altri commenti qui, assicurati di utilizzare l'opzione non documentata di "UserAction" quando si reindirizza a PayPal dopo aver ottenuto la risposta da SetExpressCheckout:

? cmd = _express-checkout &useraction = commit& token = The-Returned-Token

(Il link in basso non funziona più)

Ecco il riferimento del forum PayPal a questo parametro

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top