使用 rest api 捕获付款时发生 Paypal 内部服务器错误
Posted
技术标签:
【中文标题】使用 rest api 捕获付款时发生 Paypal 内部服务器错误【英文标题】:Paypal Internal Server Error when capturing payment with rest api 【发布时间】:2013-08-12 01:41:22 【问题描述】:我在基于 C# 的项目中遇到了这个问题,但我也可以使用 curl 重现它。代码几天前还可以工作,但现在不行了,我很确定我没有更改它。
我有一笔已获授权的付款,并且我的 ID 是正确的(当我使用他们的在线工具关闭交易时,我收到 AUTHORIZATION_ALREADY_COMPLETED 而不是 Server 500 错误)。
这是我用 curl 复制它的方法,敏感信息已编辑:
// check if the AUTHIDHERE code is correct:
curl -v -X GET https://api.paypal.com/v1/payments/authorization/AUTHIDHERE -H "Content-Type:application/json" -H "Authorization:Bearer BEARER123"
上述调用有效并返回: "id": "AUTHIDHERE", "create_time": "2013-07-17T21:17:58Z", "update_time": "2013-07-17T21:18:00Z", “状态”:“授权”, “数量”: “总计”:“1.35”, “货币:美元”, “细节”: “小计”:“1.35” , "parent_payment": "PAY-SOMELONGIDHERE", "valid_until": "2013-08-15T21:17:58Z", “链接”:......这里的一大堆]
然后我调用捕获
curl -v https://api.paypal.com/v1/payments/authorization/AUTHIDHERE/capture \
-H "Content-Type:application/json" -H "Authorization:Bearer BEARER123" \
-d '"amount":"currency":"USD","total":"1.32","is_final_capture":true
我得到这个 HTTP 500 状态:
"name": "INTERNAL_SERVICE_ERROR",
"message": "An internal service error has occurred",
"information_link": "https://developer.paypal.com/webapps/developer/docs/api/#INTERNAL_SERVICE_ERROR",
"debug_id": "7edadeba20509"
其他一些 debug_id 值为:062fc6964d9a8、6eebc751504eb
【问题讨论】:
【参考方案1】:快速更新:有趣的是,他们都在潜在的收购方调用中失败了——试图找出问题所在。
这些 debug_id 是否都与同一个 authorization_id 相关联?
【讨论】:
是的。我有一些 30 多个失败的授权 ID 的列表。在过去 7 天内,我使用完全相同的代码进行了 2 次付款,但大多数都失败了。如果您需要更多调试 ID 或与不同授权关联的调试 ID,请告诉我。 再多一些将有助于验证它们是否都与我们看到的同一问题有关。基本上,我们发现您的 PayPal 帐户没有用于信用卡处理。您是否在 developer.paypal.com 网站上为您的应用启用了付款功能? 是的,它是在我们启动产品的 beta 测试时启用的,并且一些付款已经完成。这里还有一些: [auth= 5XB80...; debug_id=e04caeb4fbf5c] [a=9871...;调试=0d9554f0fca0a] [a=9163...;调试=04fb789dfc54d] [a=49W9 ...;调试=a62f6b4bfd264] 我刚刚与 developer.paypal 核对过,该帐户已“批准”,卡和 paypal 付款都带有绿色复选标记,说明“已启用测试和实时” 感谢 @StenPetrov 向我发送详细信息(抱歉,由于我输入了工作电子邮件 ID,因此不得不删除我之前的评论)。发现代码中的错误 - 提交并升级以尽快修复它。会尽快给你更新。很抱歉给您带来麻烦,感谢您帮助我解决此问题。以上是关于使用 rest api 捕获付款时发生 Paypal 内部服务器错误的主要内容,如果未能解决你的问题,请参考以下文章
PayPal Rest API - 使用更新的交易信息执行付款