我在我的项目中使用PayPal定期付款。我希望在一段时间内免费试用一次,初始订单总数应为零,一旦免费试用完成,实际订单金额将从账户中扣除。
例如,用户购买一件产品(100美元)并申请折扣代码免费试用,然后第一笔订单应该是0美元,一旦试用结束,$ 100美元周期将会运行。
为此,我通过" 0" setup_fee
中的MerchantPreferences
:
merchant_preferences = new MerchantPreferences
{
return_url = url,
cancel_url = url,
auto_bill_amount = "YES",
setup_fee = new PayPal.Api.Currency
{
currency = currency != null ? currency.CurrencyCode : null,
value = "0.00"
}
}
但它给了我一个错误:
付款错误:PayPal错误:请求无效。查看详细信息。 (VALIDATION_ERROR)
付款错误:注意请求中缺少注释或注释长度太长
付款错误:amount.currency缺少必填字段。
如果我传递了一些值而非0.00
它正常工作,但我想将初始数量作为零。
有谁能告诉我我的代码有什么问题?
答案 0 :(得分:0)
这些错误描述了一个缺失的注意事项'参数和无效的货币'。您是否检查过您在null
时未发送currency
值,或者在Note
值时跳过发送0
参数?从您的代码中可以看出,如果currency
为null
或currency.CurrencyCode
为null
,则您发送null
值,而PayPal不允许这样做
另一方面,我知道许多财务驱动的网站使用的存款价值约为1美分而非0,以验证资金是否已正确转移。