我目前正在处理一个需要在某些 非洲国家 中使用PayPal帐户实现付款的项目。我可以开发一个演示项目,通过在https://developer.paypal.com/developer/中注册的测试帐户,我可以与API进行交互。制作一些测试用例我试图指定一个非常长的量(在U $ S 中),以便了解如何处理抛出的错误。 所以,看一下这个例外,我看到以下内容:
{ “名称”: “VALIDATION_ERROR”, “细节”:[{ “字段”: “交易[0] .amount.details.subtotal”, “问题”:“货币 金额必须是非负数,可以选择恰好包含2 小数位用'。'分隔,可选千位分隔符',', 小数点前限制为7位数 点 “},{” 场 “:” 交易[0] .item_list.items [0]。价格 “ ”问题“:” 值 太长(最大长度 10)“},{”field“:”transactions [0] .amount.total“,”issue“:”值太长 (最长长度 10)“},{”field“:”transactions [0] .amount.total“,”issue“:”货币金额 必须是非负数,可以选择包含正好2位小数 以'。'分隔的地方,可选千位分隔符',',限制为 小数点前7位数 点 “},{” 场 “:” 交易[0] .item_list.items [0]。价格 “ ”问题“:” 货币 金额必须是非负数,可以选择恰好包含2 小数位用'。'分隔,可选千位分隔符',', 小数点前限制为7位数 点 “},{” 场 “:” 交易[0] .amount.details.subtotal “ ”问题“:” 值 太长(最大长度10)“}],”消息“:”无效请求 - 请参阅 详情”, “information_link”: “https://developer.paypal.com/webapps/developer/docs/api/#VALIDATION_ERROR”, “debug_id”: “12d1b9e203241”}
查看 information_link 中提到的文档,我看到了这一段:
值太长(最大长度为10)
提供10个字符或更少的值。
重要的是要说我用美元作为货币(ISO代码:美元),所以,此时我想知道:其他货币怎么样? 正如我所说,我的申请将与尼日利亚(即)的非洲国家合作,其货币为Naira,每个国家的估值为0.005013美元,这可能使10位小数不够。 有人有这个问题吗?不管货币,我总是限于10位小数?
(我无法实现货币转换!)
答案 0 :(得分:3)
......所以,此时我想知道:其他货币呢?
可以找到REST API支持的PayPal货币列表here。
正如我所说,我的申请将与尼日利亚(即)的非洲国家合作,其货币为Naira,每个国家的估值为0.005013美元,这可能会使10个小数位不够。有人有这个问题吗?
不幸的是,PayPal目前不支持尼日利亚奈拉货币。如果您确实需要在USD
中操作,那么您只能以最多2位小数运行。
不管货币,我总是限于10位小数?
如果你看一下错误的详细信息,可以通过说 "货币金额必须是非负数来澄清这一点,可以选择包含2个小数位,用'分隔。 。',可选的千位分隔符',',限制在小数点前的7位数" 。
总的来说,金额可以是10 个字符,而不是小数位。例如," 1234567.90"是有效的,其中小数包含在字符数中。此最大字符数与here概述的受支持货币的最大PayPal交易限额一致。