Paypal 贝宝错误“;货币金额必须为非负数“;
我正在尝试实现以下CFC(coldfusion)代码: 我仍处于测试阶段,甚至没有尝试传递自己的变量,只是使用提供的CFSET示例Paypal 贝宝错误“;货币金额必须为非负数“;,paypal,coldfusion,Paypal,Coldfusion,我正在尝试实现以下CFC(coldfusion)代码: 我仍处于测试阶段,甚至没有尝试传递自己的变量,只是使用提供的CFSET示例 <cfset response = paypal.capture( card_type = "visa" , card_number = "4556747948786484" , card_exp_month = "12" , card_exp_year = "2018" , card_firstname =
<cfset response = paypal.capture( card_type = "visa"
, card_number = "4556747948786484"
, card_exp_month = "12"
, card_exp_year = "2018"
, card_firstname = "Bob"
, card_lastname = "Smith"
, amount = 15.25
, description = "Order 1011"
)>
我得到了这个错误:
{“name”:“VALIDATION\u ERROR”,“details”:[{“field”:“transactions[0]。amount.total”,“issue”:“Currency”
金额必须为非负数,可以选择正好包含2
小数位数以“.”分隔,可选千位分隔符“,”,
限制为小数点“}]”前7位,“消息”:“无效”
请求-参见
详细信息,“信息链接”:“调试id”:“dfb7b0588d38e”}
这毫无意义,因为我传递的货币值不是负数,只包含两位小数。我传递的“amount”值没有明显的错误
所以我被卡住了。以下是我解决问题的方法 我发现在我的PayPal开发者帐户中,我可以进入菜单“沙盒/交易”,获得更多关于交易尝试的详细信息 通过这个,我发现我实际传递给total的值是“15.25 | | |” 贝宝收到:“总计”:“15.25 | | |” 经过进一步调查,在CFC的第57行,我发现 “总计”=(NumberFormat(arguments.amount,“9.99”)&“| | |” 我删除了:&“| | |”
并且从PayPal的沙箱中得到了成功的响应。您的请求是什么样子的?此时,我只是发送了示例CFSET,因此,我刚刚发现我可以进入我的PayPal开发者帐户,在沙箱菜单和事务下,获取我传递的更多详细信息。对于总计,我通过了:“总计”:“15.25 | | |”。。。所以不知怎的,我在那里有额外的空间。。。目前还不知道为什么,但似乎是这样。在CFC第57行,设置并格式化了total变量,部分格式化包括:&“| | |”我删除了该位,事务处理成功。如果您认为该解决方案对其他人有帮助,则应合并最后两条注释并将其作为回答“。(S.O.允许回答您自己的问题。)