2013-03-27 6 views
5

Sto utilizzando API REST per creare un pagamento (in ambiente sandbox) con payment_method = "paypal". Per qualche motivo, non ricevo l'indirizzo di spedizione nell'oggetto payer_info nella risposta. Inoltre, non sono sicuro di come ottenere "note al venditore" tramite l'API REST. Qualsiasi suggerimento sarebbe molto apprezzato.Indirizzo di spedizione mancante e nota al venditore nella risposta di pagamento di creazione

+1

Sto avendo esattamente lo stesso problema. Aiuta qualcuno ?? – spadeworkers

+0

@ user1886877 Hai trovato una soluzione a questo? Sto avendo lo stesso problema. – That1Guy

+0

Non proprio ... Alla fine uso Stripe. – user1886877

risposta

1

I dati sugli indirizzi di spedizione non sono attualmente restituiti per le transazioni PayPal nelle API REST che offriamo, a meno che inizialmente non sia stato inviato un indirizzo di spedizione insieme alla richiesta.

Le nostre nuove API REST si stanno evolvendo mentre parliamo, tuttavia, sto vedendo tutte le richieste per questo, quindi sto definitivamente trasmettendo queste informazioni.

Nel frattempo potresti prendere in considerazione l'idea di effettuare un'altra chiamata alla nostra classica API GetExpressCheckoutDetails. Questo richiede solo il token Express Checkout (EC-xxxxx), il nome utente API classico, la password API e la firma API e restituisce i dati relativi all'indirizzo di spedizione (tra le altre cose) nella risposta (docs).

+0

Grazie! Ho finito per creare il mio modulo di indirizzo di spedizione. Cosa intendi quando dici "a meno che inizialmente non sia stato inviato un indirizzo di spedizione insieme alla richiesta"? Ho provato a fornire uno su payerInfo e non era valido. È il posto giusto? – Phil

+1

Qualunque possibilità voi ragazzi (PayPal) potete ottenere l'API BETA per inviare l'indirizzo di spedizione delle informazioni di pagamento, senza che sia richiesto per primo? Ogni checkout express paypal mostra chiaramente l'indirizzo di spedizione dell'utente PayPal, quindi le informazioni di spedizione sono già disponibili su PayPal ... perché non fornirle semplicemente all'interno dell'oggetto payer_info? Non ci potrebbe volere più di un giorno per implementare/test/rilasciare, giusto? È una di quelle cose che sembra renderebbe o rompere l'adozione della nuova API REST. Solo i miei due centesimi, il mio rispetto per i peeps che ci lavorano. :-) –

+0

@PayPal_Robert Almeno aggiornerai i documenti con una nota? Ho sprecato un'intera settimana a spese della compagnia prima che tu rispondessi a una email. Inoltre ... Mi hai detto che era un bug. Da allora sono stato informato che potrebbe richiedere più di un anno per "risolvere" in quanto non è stato ancora implementato. Qual è la vera storia? – That1Guy

0

L'indirizzo di spedizione è ora supportato sull'API REST di Paypal. Impostare l'oggetto shippingAddress e quindi aggiungere all'oggetto ITEMLIST

$shippingAddress = new ShippingAddress(); 
$shippingAddress->setLine1($_POST['shipstreet']) 
->setCity($_POST['shipcity']) 
->setState($_POST['shipstate']) 
->setPostalCode($_POST['shipzip']) 
->setCountryCode($_POST['shipcountry']) 
->setRecipientName($_POST['shipname']); 

$itemList = new ItemList(); 
$itemList->setItems($itemsarr); //my array of items 
$itemList->setShippingAddress($shippingAddress); 

Si potrebbe desiderare di disinfettare tuo post vars prima di inviarle. Altre note interessanti, puoi impostare il nome e il cognome payer_info e l'indirizzo email.

$payerinfo = new PayerInfo(); 
$payerinfo->setEmail($_POST['email']) 
->setFirstName($_POST['firstName']) 
->setLastName($_POST['lastName']); 

$payer = new Payer(); 
$payer->setPaymentMethod("credit_card") 
->setPayerInfo($payerinfo) 
->setFundingInstruments(array($fi));