在我的應用程序中,我需要使用paypal高級設置定期結算部分,並使用付款部分來執行相同操作。我需要Pay with PayPal按鈕流程(快速結帳流程)和信用卡付款才能創建定期配置文件。我最初的要求是這樣的:Paypal高級定期結算使用快速結帳和使用託管頁面的信用卡付款
public static PayPalRedirectAdv PayFlow()
{
NameValueCollection requestArray = new NameValueCollection()
{
{"PARTNER", "PayPal"}, // You'll want to change these 4
{"VENDOR", "merchantname"}, // To use your own credentials
{"USER", "username"},
{"PWD", "abcdenfg"},
{"TRXTYPE", "A"},
{"AMT", "1.00"},
{"CURRENCY", "USD"},
{"CREATESECURETOKEN", "Y"},
{"SECURETOKENID", "tokenId generated"},
{"RETURNURL", UrlReturn},
{"CANCELURL", UrlCancel},
{"ERRORURL", lUrlError},
{"BILLINGTYPE","RecurringBilling"}
};
NameValueCollection resp = run_payflow_call(requestArray); // Will call the payflow end point via HttpWebRequest
if (resp["RESULT"] == "0")
{
string mode = "TEST";
return new PayPalRedirectAdv
{
Url = "https://payflowlink.paypal.com?SECURETOKEN=" + resp["SECURETOKEN"] + "&SECURETOKENID=" + resp["SECURETOKENID"] + "&MODE=" + mode
};
}
else
{
return new PayPalRedirectAdv { Url = string.Empty };
}
}
一旦這個過程完成後,我已經設置了網址的iframe,它被嵌入在我在我的MVC項目的景色之一。當IFrame被加載時,它有兩個問題。
1)頁面被重定向到頂層。這意味着瀏覽器窗口被重定向到IFrame url。我選擇了佈局C作爲託管結帳頁面。當我使用演示項目中提供的憑證時,瀏覽器導航已解決;即Iframe在我的視圖中正確加載。 Paypal管理員設置中是否有任何設置來防止這種情況發生?我試圖通過沙盒頂級導航來解決這個問題,但是這不會讓我通過點擊「使用PayPal簽出」按鈕重定向到PayPal網站。
"TRXTYPE=R&TENDER=C&PARTNER=PayPal&VENDOR=Acme&USER=Acme&PWD=a1b2c3d4&ACTION=A&PROFILENAME=RegularSubscription&ORIGID=<PNREF>&START=12012002&PAYPERIOD=
WEEK&TERM=12&OPTIONALTRX=S&OPTIONALTRXAMT=2.00&COMMENT1=First-time
customer&AMT=42.00"
這工作得很好,並在創建重複配置文件:
2)用信用卡付款,一旦交易成功,我將在現有的交易通過轉換爲輪廓。
但是,當我點擊「使用PayPal簽出」按鈕時,這將帶我到PayPal頁面,在那裏我可以使用我的Paypal憑證登錄到PayPal,然後當我點擊「paynow」按鈕時,它會從我的帳戶中扣除資金。這也有一個PNERF值,當我使用上面相同的代碼通過將Tender替換爲P來將事務轉換爲循環配置文件時,但它向我顯示了一條響應消息,即「找不到與此id對應的事務ID」。 PayPal結帳過程不顯示任何有關用戶要進入付款部分的信息。
此外,我跟着Express Checkout with recurring billing來完成任務,但我在DoExpressCheckout步驟中將BAID作爲空值。
我需要同時使用paypal付款和使用我的網站上的信用選項付款,因此我應該使用哪些參數來完成此操作?
在此先感謝。
我只是告訴你我做了什麼,因爲我沒有完全遵循你所說的話。我爲客戶創建了一個網站和一個網絡應用程序,並且該用戶在網站上註冊,並使用貝寶定期付款進行支付。 PayPal的服務器將IPN(即時付款通知)發送回我網站託管的監聽器URL。此監聽器URL(Listener.aspx.cs)後面的代碼負責從PayPal響應中提取數據,包括姓名,電子郵件地址等。然後,我的代碼根據該信息創建了一個用戶並將其插入到數據庫中。 –
現在,鑑於我所說的話,我不太清楚我的理解你的問題。 –
如果您想要特定的步驟說明我是如何做到這一點的,我會很樂意做到這一點 - 只需告訴我! –