我正在尝试为我的网站设置多个定期付款,但是当我发布到Paypal时,只有最后一项显示在paypal付款屏幕上。所有其他项目都将被忽略。
以下是我正在使用的代码
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 :(得分:0)
您无法使用PayPal付款标准逐项列出PayPal上的订阅。以下是PayPal对item_name
参数(找到here)所说的内容:
正在销售的商品说明。如果您要收取汇总付款,则该值可以是所有购买商品的摘要,跟踪编号或通用术语,例如“订阅”。
item_name
参数仅用于每个事务一次。因此,它只采用最后一项的原因是因为您在URL中传递了同一参数的多个实例(传递&item_name=Listing Module
后跟&item_name=Database
)。如果您想为所有这些产品进行单一订阅,您需要计算所有内容的价格并将其分配给a3
并制作涵盖两者的item_name
。如果您希望每个项目都有不同的订阅条款,那么您需要为每个项目生成不同的订阅。