【发布时间】:2020-06-16 20:36:42
【问题描述】:
我尝试通过https://api.paypal.com/v1/payments/payment 为不同的用户发出付款请求,但对于某些请求,40% 的 PayPal api 返回 HTTP 400 响应,其余的都很好。请求的主体类似于:
{
"intent": "sale",
"payer": {
"payment_method": "PAYPAL",
"funding_instruments": [
{
"billing": {
"billing_agreement_id": "B-XXXXX"
}
}
]
},
"transactions": [
{
"amount": {
"currency": "EUR",
"details": {
"subtotal": "11.99",
"tax": "0.0",
"shipping": "0.0",
"handling_fee": "0.0",
"shipping_discount": "0.0",
"insurance": "0.0"
},
"total": "11.99"
},
"invoice_number": "pp_XXXX",
"custom": "\"{\"payment_id\": \"6102645598795\", \"user_id\": \"28233184743\", \"cid\": \"DE:282331858548:30\"}\""
}
],
"redirect_urls": {
"return_url": "https://example.com/return",
"cancel_url": "https://example.com/cancel"
}
}
并且响应类似于
{
"name": "TRANSACTION_REFUSED",
"message": "The request was refused",
"information_link": "https://developer.paypal.com/docs/api/payments/#errors",
"debug_id": "8e0a927a12",
"code": "TRANSACTION_REFUSED"
}
响应不是信息性的。 有什么想法吗?
【问题讨论】:
-
这可能不是付款拒绝,例如格式错误的请求。但如果是这种情况,您需要共享实际请求和响应以进行故障排除。完整、准确的请求正文和完整的准确响应正文——不是“类似于”
-
@PrestonPHX,我发送了提供的请求并得到了确切的响应。有意义的数字只是改变了。
-
如果您发布一个实际错误,这不是真正的 debug_id,有人可能会提供帮助
-
@PrestonPHX,如何使用 debug_id 进行检查?
标签: python paypal httprequest