C# を使用して、asp.net の Web サイトに PayPals IPN を実装しようとしています。ここにある PayPal 提供のサンプル コードを使用しています: https://cms.paypal.com/cms_content/GB/en_GB/files/developer/IPN_ASP_NET_C.txt
サイトの IPN の URL を使用して、アカウントで IPN を有効にしました。上記のリンクでわかるように、コードで使用されている URL は、paypal テスト用のサンドックス URL です。
IPN シミュレーターを使用していますが、「IPN が正常に応答を送信しました」というメッセージが表示されますが、私の Web サイトでは毎回無効と表示されます。
また、ラベルに strRequest 文字列を表示しようとしましたが、引用符なしで「&cmd=_notify-validate」と表示されるだけです。その部分をPayPalから返された残りのデータに追加することを意図していると思いました.
これが私のボタンです:
私が使っているボタンです
<script src="paypal-button.min.js?merchant=myemail"
data-button="buynow"
data-name="name"
data-quantity="1"
data-amount="00.50"
data-currency="GBP"
data-shipping="0"
data-tax="0"
data-env="sandbox"
data-return="http://site.net/thankyou.aspx"
></script>
何がうまくいかないのですか?
アップデート:
要約すると。私は 2 つのサンドボックス アカウントを持っています。1つはビジネスで、もう1つは個人です。ビジネスアカウントでipnを有効にしました。私のウェブサイトには、上記のボタンがあります。IPN ページには、paypal の asp.net で IPN 用に指定されたサンプル コードとまったく同じコードがあります。ウェブサイトにアクセスし、[今すぐ購入] ボタンをクリックして、個人アカウントからサンドボックス ビジネス アカウントを使用して購入します。支払いは完了として表示され、ビジネス アカウントの IPN 履歴にコード 200 で送信されたと表示されますが、IPN ページに入力したラベルを確認すると、無効という単語が表示されます。
ありがとう!