2

PAY 取引後の IPN コールで購入者の氏名を取得することはできますか? 単純なチェーン PAY 呼び出しから、payType を「CREATE」に設定し、payKey を使用して「requireShippingAddressSelection」を true に設定して「setPaymentOptions」API から住所を取得するまで、あらゆることを試しました。どちらも機能していません。買い手に関して私が受け取る唯一の情報は、「sender_email」としての彼らの電子メール アドレスと、どのように電話をかけても支払った金額だけです。

「getShippingAddresses」API も試しましたが、うまくいきませんでした。ドキュメントに具体的なものは見つかりませんでした。これは IPN 応答のサンプルです。リダイレクト URL などの不要な部分を削除しました。 transaction: '0': .is_primary_receiver: 'true' .id_for_sender_txn: TXN_CODE .receiver: RECEIVER_EMAIL .amount: USD 10.00 .status: Completed .id: TRANS_ID .status_for_sender_txn: Completed .paymentType: SERVICE .pending_reason: NONE '1': .paymentType: SERVICE .id_for_sender_txn: TXN_CODE .is_primary_receiver: 'false' .status_for_sender_txn: Completed .receiver: RECEIVER_EMAIL .amount: USD 10.00 .pending_reason: NONE .id: TRANS_ID .status: Completed log_default_shipping_address_in_transaction: 'false' action_type: CREATE charset: windows-1252 transaction_type: Adaptive Payment PAY notify_version: UNVERSIONED sender_email: SENDER_EMAIL fees_payer: EACHRECEIVER reverse_all_parallel_payments_on_error: 'false' pay_key: 'PAY_KEY' status: COMPLETED test_ipn: '1'

そして、電話をかけるには:

pay_request = PaypalAdaptive::Request.new

data = {
"returnUrl" => "", 
"requestEnvelope" => {"errorLanguage" => "en_US"},
"currencyCode"=>"USD",  
"receiverList"=>{"receiver"=>[{"email"=>"", "amount"=>"10.00"},{"email"=>"", "amount"=>"10.00"}]},
"cancelUrl"=>"",
"actionType"=>"PAY",
"ipnNotificationUrl"=>""
}

pay_response = pay_request.pay(data)

//OTHER ATTEMPT: was to grab payKey here and try setting payment options with another request call, but that didn't work either

if pay_response.success?
  redirect_to pay_response.preapproval_paypal_payment_url
else
  puts pay_response.errors.first['message']
  redirect_to failed_payment_url
end

この行を取得する可能性があると思いました-> log_default_shipping_address_in_transaction: 'false' を true に設定すると名前が取得されますが、何を試しても false から変更できません。何が起こっているのか、また PayPal Adaptive を使用して購入者の名前を取得することさえ可能かどうかについて、何か考えがある人はいますか? 私は非常に単純なものを見逃しているに違いありません...ありがとう!

4

1 に答える 1