5

イベントを開催するウェブサイトを作成しており、ユーザー「ユーザー A」がイベントを開始できるようにしたいと考えています。ペイパル アカウント情報を入力し、価格を設定します。その後、他のユーザーはイベントに登録し、ユーザー A に直接支払うことができます。クレジット カードを処理する必要はありません。ペイパル アカウントを持っていないユーザーがクレジット カードで支払いできるようにしたいと考えています。

Paypal の Adaptive Payment は、これを達成するために使用するのに最適な API のようです。サンドボックス環境で動作させています。私の問題はこれです-ユーザーがクリックしてユーザーAのイベントに登録し、すべての情報(名前、住所、会社など)を入力します。この情報をデータベースに保持する必要があるため、これを最初に行う必要があります。次に、「PayPal で支払う」というボタンをクリックします。これによりペイキーが作成され、ユーザーは 2 つのオプションがある Paypal ログイン ページにリダイレクトされます (a. Paypal にログインする、または b. 個人情報とクレジット カード情報を再度入力する)。

ユーザーがすべての情報を再度入力する必要がないように、Paypal ページのすべてのフィールドに既に入力済みの状態にする方法を知りたいです。請求先住所が異なる場合は、テキスト ボックスのデータを削除できます。しかし、私が今まで見たすべての Web サイトでは、ユーザーが同じ情報を 2 回入力することはありませんでした。他のサイトがそうしているのを見たので、これが可能であることがわかりました。私は SetPaymentOptions API を調べましたが、それがどのように機能するかはあまり明確ではありません.Paypalにまだ知られていない場合でも、ユーザー情報を渡す必要があります.

このようなPaypalチュートリアルで提案されているように値を追加してみました

<INPUT TYPE="hidden" NAME="first_name" VALUE="John">
<INPUT TYPE="hidden" NAME="last_name" VALUE="Doe">
<INPUT TYPE="hidden" NAME="address1" VALUE="9 Elm Street">

しかし、それはうまくいきませんでした。リクエストからの Fiddler からの生データは次のとおりです。

POST https://svcs.sandbox.paypal.com/AdaptivePayments/Pay HTTP/1.1
Content-Type: text/xml;charset=utf-8
X-PAYPAL-SECURITY-USERID: scotts_XXXXXXXXX_biz_api1.live.com
X-PAYPAL-SECURITY-PASSWORD: 1344XXXXX
X-PAYPAL-SECURITY-SIGNATURE: AOLbPDojAEUdeQJ3wXagJXkxYeJDARg4IXXXXXXXXXXXXXXXXXXX
X-PAYPAL-SERVICE-VERSION: 1.1.0
X-PAYPAL-APPLICATION-ID: APP-80W2844XXXXXXXXX
X-PAYPAL-REQUEST-DATA-FORMAT: XML
X-PAYPAL-RESPONSE-DATA-FORMAT: XML
Host: svcs.sandbox.paypal.com
Content-Length: 810
Expect: 100-continue
Connection: Keep-Alive
4

4 に答える 4

1

PayPalからの公式の回答:

「AdaptivePaymentsには、これを行う機能がドキュメントにありません。ご不便をおかけして申し訳ありません。」

誰かが私が質問で説明したことを達成するために行くためのより良いルートを持っている場合に備えて、私はこの質問を開いたままにしておきます。

編集:

他の誰かがこれに遭遇した場合、それは公式には100%不可能です-私はExpress Payment APIを使用することになりました。これを使用すると、ユーザーパラメータを渡すのは非常に簡単です。

于 2012-08-16T00:35:47.770 に答える
1

あなたにとって問題は、実際にはポップアップでペイパルにログインすることではなく、クレジットカードで支払うことができるようにするためのペイパル登録プロセスだと思います。アダプティブ ペイメント API には、ユーザーに代わって登録を処理できる API 呼び出しがあります。

独自のデザインを使用して、ページにペイパル情報を直接事前入力できます。送信時に、アダプティブ ペイメント API を使用してペイパル アカウントを作成します。このプロセスの最後のステップでは、パスワードとクレジット カード情報を追加して登録を完了するようユーザーに求めるペイパル ポップアップを開く必要があります。

この時点で、単純なペイパル ログインを使用した場合と同じ支払い方法が戻ってきます。


Paypal を介してすべての Web サイトをさらに統合するには、事前承認を追加できます。その後、ユーザーは一度だけ Paypal Web サイトを表示します: 事前承認を受け入れるとき (軽い Paypal ポップアップの 2 つのステップ: ログイン > 受け入れる)。

ユーザーが初めてチェックアウトするとき:

  1. アカウントの作成 (上記で説明した方法を使用) または Paypal での支払いのいずれかを選択します。
  2. 事前承認キーを作成します (API のドキュメントを参照してください。ユーザーのペイパル ログインを知る必要はありません)。returnUrl として、ローカルの user_id で URL を指定します。
  3. 前の手順で返された URL を使用して、PayPal ポップアップ クライアント側を開きます。ユーザーは自分のペイパル アカウントでログインし、事前承認の特徴 (時間の制限、金額の制限) に同意する必要があります。
  4. Paypal は step2 の returnUrl にリダイレクトします。ページを閉じる js で「このウィンドウは自動的に閉じます」と言うだけのページである可能性があります。
  5. 事前承認キーを使用して、ユーザーに代わって支払いを行うことができるようになりました

ユーザーが初回以降にチェックアウトするとき:

  1. 「リンクされたペイパル アカウントで XX ドルが請求されます」という確認を求める
  2. 事前承認キーを使用して支払い、完了です。

それが役立つことを願っています!

于 2012-08-20T17:33:25.950 に答える
-1

こんにちは、次のリンクが役立つと思います

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_APIIntro

于 2012-08-15T08:26:40.983 に答える