2

私のサイトは Python でコーディングされており、私のサイトでペイパル経由で支払いを受け付ける機能を提供したいと考えています。無料のペイパル サービス (月額料金なし) を使用して、ユーザーがペイパル サイトにリダイレクトされ、ログインして支払うようにしたいと考えています。ワークフローを次のように動作させたい:

  • ユーザーがペイパル経由でクリックして支払う
  • ユーザーが「PayPal で支払う」ボタンをクリックする
  • ユーザーはペイパルのウェブサイトにリダイレクトされてログインします
  • 支払いが成功した後、ユーザーは私のサイトにリダイレクトされ、確認ページが表示されます。

Paypal が自分のサイトにリダイレクトすること以外はすべて理解しています。ペイパルが成功したかどうかを判断し、支払いが成功した場合にのみ確認ページを処理できるようにコーディングするにはどうすればよいですか?

注意

  • 定期決済は利用しない
  • 小さなタスクのように見えるので、可能であれば、これに大きな扱いにくいライブラリを使用したくありません
4

1 に答える 1

4

PayPalのPDTを使用して、トランザクションが有効かどうかを確認できます。Payment Data Transfer(PDT)は、PayPalトランザクションの詳細を取得して、顧客に表示できるようにするための安全な方法です。これは、Webサイト支払い標準と組み合わせて使用​​されるため、顧客がPayPalサイトで支払いを行った後、Webサイトに戻った後、取引の詳細が記載された確認メッセージを即座に表示できます。PDTは、クレジットカードまたはエクスプレスチェックアウトトランザクションでの使用を目的としたものではありません。このページでは、PDTの仕組みと、PDTを使用するようにアカウントを構成する方法について説明します。

PDTの仕組み顧客があなたに支払いをするとき、PayPalはあなたのアカウントプロファイルで指定したURLにトランザクションIDを追加することによってあなたに支払いのトランザクションIDを送信します。この情報は、HTTPGETを介して次の名前/値ペアとして送信されます。

tx=transactionID 

トランザクションIDを取得したら、トランザクションIDとIDトークン(PayPalに対してアカウントを識別する文字列値)を含むフォームをPayPalに投稿します。IDトークンを取得する方法を説明する以下の手順があります。フォームは次のようになります。

<form method=post action="https://www.paypal.com/cgi-bin/webscr"> 
<input type="hidden" name="cmd" value="_notify-synch"> 
<input type="hidden" name="tx" value="TransactionID"> 
<input type="hidden" name="at" value="YourIdentityToken"> 
<input type="submit" value="PDT"> 
</form> 

あなたの投稿に対するPayPalの返信では、最初の行はSUCCESSまたはFAILになります。

PDTのアクティブ化PDTを使用するには、PayPalアカウントプロファイルでPDTと自動返品をアクティブ化する必要があります。また、PayPalに送信するすべてのPDT通信で使用されるPDTIDトークンを取得する必要があります。

次の手順に従って、アカウントをPDT用に構成します。

1.PayPalアカウントにログインします。2.[プロファイル]サブタブをクリックします。3.[販売者設定]列の[ウェブサイト支払い設定]をクリックします。4. [Webサイト支払いの自動返却]で、[オン]ラジオボタンをクリックします。5.返品URLには、顧客の支払い後にPayPalによって投稿されたトランザクションIDを受け取るサイトのURLを入力します。6. [支払いデータの転送]で、[オン]ラジオボタンをクリックします。7.[保存]をクリックします。8.[販売者設定]列の[ウェブサイト支払い設定]をクリックします。9.ページの[支払いデータ転送]セクションまで下にスクロールして、PDTIDトークンを表示します。

以下のリンクも役立ちます。

返送可能なPDT変数

PDTの説明

サンプルコード

PDTトラブルシューティングのヒント

于 2013-03-13T14:35:01.520 に答える