2012-02-24 102 views
2

我在ASP.NET MVC 3應用程序中使用我的PayPal Sandbox帳戶,並且我在想一個問題。付款完成後,我在服務器中收到IPN響應。PayPal IPN數據 - 如何驗證?

如何檢查in my app如果該響應字符串不是假的/被黑的?換句話說,我想確保回覆是原始PayPal的回覆,然後我得到用戶支付的東西。

SUCCESS 
mc_gross=10.00 
protection_eligibility=Eligible 
address_status=confirmed 
payer_id=RV2RBQBZDK6N6 
tax=0.00 
address_street=1+Main+St 
payment_date=13%3A55%3A37+Feb+24%2C+2012+PST 
payment_status=Completed 
charset=windows-1252 
address_zip=95131 
first_name=tony 
mc_fee=0.59 
address_country_code=US 
address_name=tony+a 
custom=Registration+started%3A+2012-02-24+22%3A54%3A59 
payer_status=verified 
business=seller_1330118126_biz%40gmail.com 
address_country=United+States 
address_city=San+Jose 
quantity=1 
payer_email=buyer_1330118087_per%40gmail.com 
txn_id=9V8712675P592753E 
payment_type=instant 
last_name=a 
address_state=CA 
receiver_email=seller_1330118126_biz%40gmail.com 
payment_fee=0.59 
receiver_id=R35PLL9VN3UFY 
txn_type=web_accept 
item_name=My+painting 
mc_currency=USD 
item_number= 
residence_country=US 
handling_amount=0.00 
transaction_subject=Registration+started%3A+2012-02-24+22%3A54%3A59 
payment_gross=10.00 
shipping=0.00 
+2

我沒有用的,而API,但我相信你應該將數據發回PayPal,它會向你發送一個迴應,說明數據是有效的。 – 2012-02-24 22:07:30

回答

7

您將交易提交到https://www.paypal.com/cgi-bin/webscr,它將驗證交易是否合法。 PayPal提供了一個沙盒測試模式,您應該編寫代碼來正確處理這些事務。

下面是關於如何通過IPN測試交易的一些文檔: https://www.paypal.com/cgi-bin/webscr?cmd=p/sell/ipn-test-outside

這裏有各種各樣的代碼示例,實際上驗證交易: https://www.paypal.com/us/cgi-bin/webscr?cmd=p/pdn/ipn-codesamples-pop-outside