2014-03-06 171 views
0

我想爲我的網站設置多個定期付款,但是當我發送到貝寶時,只有最後一個項目顯示在貝寶付款屏幕上。所有其他項目都被忽略。貝寶訂閱/定期付款

這裏是我使用

String url; 
url = "https://www.paypal.com/us/cgi-bin/webscr?";  
url += "cmd=_xclick-subscriptions"; 

url += "&business=" + ConfigurationManager.AppSettings["paypalemail"].ToString(); 
url += "&src=1"; 
url += "&sra=1"; 

if (!chargedListings && chkListingModules.Checked) 
{ 

       url += "&item_name=Listing Module"; 
       url += "&a3=" + listingCharges; 
       url += "&p3=1"; 
       url += "&t3=M"; 
       url += "&item_number=1"; 
       i++; 
} 

if (!chargedDB && chkDB.Checked) 
{ 
       sendToPaypal = true; 
       url += "&item_name=Database"; 
       url += "&a3=" + emailCharges; 
       url += "&p3=1"; 
       url += "&t3=M"; 
       url += "&item_number=2"; 

       i++; 
} 

不是真的知道我做錯了這裏的代碼。我查看了paypal文檔,但迄今沒有發現任何有用的東西。

任何幫助將不勝感激。在此先感謝

回答

0

您無法使用PayPal付款標準逐項列出PayPal上的訂閱。下面是貝寶說,有關item_name參數(發現here):

項目的描述被出售。如果您正在收集彙總付款,則該值可以是購買的所有物品的摘要,追蹤號碼或通用字詞,如「訂閱」。

item_name參數僅用於每次交易使用一次。所以它只需要最後一個項目的原因是因爲您在URL中傳遞了多個相同參數的實例(傳遞&item_name=Listing Module後跟&item_name=Database)。如果您想爲所有這些產品訂購單一訂閱,則需要計算所有產品的價格,並將其分配到a3並製作一個涵蓋兩者的item_name。如果您希望這些項目中的每一個具有不同的訂閱條款,那麼您需要爲每個訂閱項目生成不同的訂閱。

+0

那種不好,我猜。如果有人想退出一個訂閱,如果他們訂閱了多個項目,我將不得不取消整個訂閱並創建一個新條目。無論如何感謝澄清這一點。 – dogwasstar

+0

@ user767018你可以設置ExpressCheckout,它允許你設置多個訂閱(每次結帳最多10個)。 Express Checkout的一般集成是[這裏](https://developer.paypal.com/webapps/developer/docs/classic/express-checkout/integration-guide/ECGettingStarted/)和使用ExpressCheckout的重複設置是[here] (https://developer.paypal.com/webapps/developer/docs/classic/express-checkout/integration-guide/ECRecurringPayments/)。 –