我是很新的PayPal和我目前在我們的網站整合鏈接的自適應付款。已通過.NET SDK成功調用了PAY API調用。資金(沙盒環境)將被正確轉移到該付款的每個參與者(發件人,主要和次要接收者)。
要求
我的目標是執行重要任務後付款成功(更新數據庫,發送郵件,...)或者已經取消(收拾東西。 ..)。
可能的解決方案
1) 第一種方法是創建與actionType
集中支付CREATE
,將用戶重定向到paypal.com(等待批准),重定向用戶返回到網站和execute the payment,然後執行重要任務。但它似乎不起作用,付款將被支付,並在第二次重定向前爲COMPLETED
。
2) 另一種可能的解決辦法是從用戶那裏得到的preapproval,重定向回網站,並執行付款。還沒有嘗試過這個解決方案,不要認爲這是最佳實踐。
3) 呼叫PAY與actionType
設置爲"PAY"
,等待IPN。還沒有嘗試過,因爲它很難在本地測試(儘管我已經發現這個問題:Paypal Sandbox Test Tool IPN Simulator in Localhost)。
問題(S)
哪種解決方案是最好的做法?我想推薦的解決方案是等待IPN?
如果我使用IPN付款完成後的平均響應時間有多長?秒,分鐘,小時?我知道這取決於PayPal網絡服務器的負載,並且在4天內有15次重試,但真實世界的數字是多少?
我可以在付款(除了備註字段之外)中存儲關於發件人的附加信息(例如UserId),然後我可以在IPN中找到該信息?