2014-09-22 32 views
1

我已閱讀了很多關於此處的PayPal問題,以及在線的各種網頁,但我很困惑。我找到了幾種不同類型的付款的例子,但是很多都很老舊,我不確定它們有多相關,因爲我被告知最近有一些變化。不幸的是,在開發人員/沙箱PayPal網站上似乎沒有任何有用的示例或文檔,或者我無法找到它們!如何在MVC4網站中集成和測試PayPal:我真的需要公開自己的開發環境嗎?

我想知道如果任何人都可以點我一些很好的例子,文檔或教程,這將有助於我有以下:

我是在想,糾正如果我願意做任何後期處理使用PayPal事務,即更新我的數據庫中的事務(成功等),我需要使用IPN/PDT,並使用這些我需要暴露一個監聽器到PayPal?

如果這是真的,我很困惑這麼多開發人員可以使用這個系統,因爲我無法想象爲了測試和調試將我的開發/測試環境暴露給外部世界。我甚至看過一個視頻,這是在asp.net網站上完成的,這個網站就是這樣做的http://www.asp.net/mvc/videos/mvc-1/aspnet-mvc-storefront/aspnet-mvc-storefront-part-22-restructuring-rerouting-and-paypal這並不是我在工作環境中真正考慮的事情。

我也在努力尋找任何文檔或例子,當我指定IPN的URL時,實際返回給我的是什麼。目前我假設它是類似myurl.com/?item=blah&item1=blah&item2=foo等,但這並不是我能找到的任何地方。返回的項目也未指定。目前我假設我可以作爲表單數據訪問這些項目,但沒有這方面的示例(除了上述視頻中的MVC1示例)。

我也相信我需要使用IPN,因爲如果用戶使用信用卡,然後不點擊返回到賣家的網站按鈕,PDT甚至不會傳回。這是真的?

我想要做的就是在我的網頁上放置一個按鈕,這將允許用戶支付年度訂閱費用。我想向PayPal傳遞一個唯一的交易ID,他們將返回給我,說明成功或失敗。然後,我將更新我的數據庫,以便用戶將收到他們的訂閱。

我曾經想過,當我爲SagePay(我們目前的供應商 - 我們只是爲了能夠在不擁有不同的貨幣銀行賬戶的情況下進行國際支付)做這件事時已經夠糟糕的了,但PayPal似乎是平等的更差。對於SagePay,我只需要更改我提交的URL,從測試到現場。簡單來說,他們給我發回了一個加密的回覆,並且實際上有關於迴應中的內容的文檔。

我真的很希望我剛剛在這裏遇到了問題,並且有一個明智的方法可以將貝寶整合到我的網站中。目前看來,我將不得不在PayPal可以訪問的當前實時服務上設置一個URL,然後調試實時服務器以查看我收到的內容並調試我的代碼。這似乎很錯誤。

非常感謝您的幫助!

回答

0

你真的需要看看貝寶的官方網站:https://developer.paypal.com/webapps/developer/docs/classic/products/instant-payment-notification/ 他們有一個非常詳細的解釋。按照他們的指示一步一步。當你真正遇到問題時詢問問題。

我曾經使用之前是另一個網站:http://www.codeproject.com/Tips/84538/Setting-up-PayPal-Instant-Payment-Notification-IPN

併爲您的問題: 「我需要暴露一個監聽到PayPal?「 是的,你需要的。貝寶在這一部分中,C#還教程。

‘PDT甚至可能不會得到可能傳回’ ,但IPN也有失手機率。

1

的PayPal實際上是優於最重要的是你可以測試,有一個完整的測試沙箱解決方案(support document),當你添加/編輯你的REST API應用程序時,你可以點擊「應用程序重定向URL」旁邊的「編輯」鏈接並指定一個測試網址和生產網址,這應該會給你所有需要在本地進行測試而不會將你的網站暴露給外部世界的問題。

如果它確實結束了你p給你適合使用本地主機,總是有服務,如localtest.me,可以讓你解決它。

相關問題