2013-10-22 5 views
6

PayPal REST APIリファレンス()に従って、支払いを作成して実行しています。PayPal REST APIでカスタマイズされた配送先住所が取得されない

お支払いを作成するには、次のデータをPayPalに送信します。データには「shipping_address」が含まれています。支払いは正常に作成されます。

{ 
"intent": "sale", 
"payer": { 
    "payment_method": "paypal" 
}, 
"redirect_urls": { 
    "return_url": "http://www.somethingabc.com/approve", 
    "cancel_url": "http://www.somethingabc.com/cancel" 
}, 
"transactions": [{ 
    "amount": { 
     "currency": "USD", 
     "total": "10.00", 
     "details": { 
      "shipping": "0.00", 
      "subtotal": "10.00", 
      "tax": "0.00" 
     } 
    }, 
    "item_list": { 
     "items": [{ 
      "quantity": "1", 
      "name": "Apples", 
      "price": "10.00", 
      "currency": "USD" 
     }], 
     "shipping_address": { 
      "recipient_name": "John", 
      "type": "residential", 
      "line1": "441 Waterdale RD", 
      "city": "Heidelberg West", 
      "country_code": "AU", 
      "postal_code": "3081", 
      "state": "VICTORIA" 
     } 
    } 
}] 

}

そして、私がログインして支払いを承認するユーザのためのPayPal応答して与えられるapproval_url(例えば、https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-343434SADSDSAD34)にウェブブラウザをリダイレクトします。ユーザーログインとPayPalレビューWebページが表示されます。私はこのレビューページに、以前に支払いが作成されたときに提供したカスタマイズされた配送先住所が表示されるはずです。ただし、PayPalレビューWebページには、代わりにPayPal所有者の住所が表示されます。

私の質問は、PayPalのオーナーのアドレスの代わりにカスタマイズした配送先住所を表示するようにPayPalのレビューWebページを強制する方法です。これができない場合は、ユーザーがPayPalレビューWebページで選択した配送先住所を取得するにはどうすればよいですか(支払いを実行するAPIを呼び出すと、選択した配送先住所はpayer_infoオブジェクトには含まれません)。 。

ありがとうございました。

+0

私はあなたのコードをテストしましたが、実際に上書きして強制的にデフォルトの配送先住所を指定します。しかし、これが米国の住所に限られているのかどうかはわかりません。なぜなら、試験所の証明書は米国であり、オーストラリアに発送させてくれないので、米国の住所に変更しなければならないからです。 – Aaron

答えて

0

コードをテストしたところ、エラーは見つかりませんでした。支払いが完了したときに応答が私が取得:

{ 
    "id": "PAY-xxxxxxx", 
    "create_time": "2014-05-01T23:54:00Z", 
    "update_time": "2014-05-01T23:59:35Z", 
    "state": "approved", 
    "intent": "sale", 
    "payer": { 
    "payment_method": "paypal", 
    "payer_info": { 
     "email": "[email protected]", 
     "first_name": "John", 
     "last_name": "Smith", 
     "payer_id": "GPV2878GCMNGE", 
     "shipping_address": { 
     "line1": "441 Waterdale RD", 
     "city": "Heidelberg West", 
     "state": "Victoria", 
     "postal_code": "3081", 
     "country_code": "AU" 
     } 
    } 
    }, 
    "transactions": [ 
    { 
     "amount": { 
     "total": "10.00", 
     "currency": "USD", 
     "details": { 
      "subtotal": "10.00" 
     } 
     }, 
     "item_list": { 
     "items": [ 
      { 
      "name": "Apples", 
      "price": "10.00", 
      "currency": "USD", 
      "quantity": "1" 
      } 
     ], 
     "shipping_address": { 
      "recipient_name": "John", 
      "line1": "441 Waterdale RD", 
      "city": "Heidelberg West", 
      "state": "VICTORIA", 
      "postal_code": "3081", 
      "country_code": "AU" 
     } 
     }, 
     ..... 
} 

私はPaypal's Technical Supportに手を差し伸べると、トラブルチケットを提出でしょうあなたはこれを見ていないが場合。これがあなたが得るべき応答です。

0

address_overrideオプションを1に設定してExperienceプロファイルを作成する必要があります。お客様はPayPalに渡した配送先住所を変更できなくなります。

販売開始時にJSONリクエストにexperience_profile_idを含めます。

関連する問題