【发布时间】:2014-09-28 15:55:13
【问题描述】:
有很多关于类似问题的讨论,但我找不到确切的答案。
问题来了:
我正在尝试使用最新的 PayPal MSDK 库在 Android 操作系统中集成应用内支付。集成很简单,我可以成功完成单笔付款,收到正确的响应,一切都很好,直到我不得不verify the mobile payment
在移动应用程序中(使用 PayPalConfiguration.ENVIRONMENT_SANDBOX),我收到以下响应:
{
"client": {
"environment": "sandbox",
"paypal_sdk_version": "2.2.2",
"platform": "Android",
"product_name": "PayPal-Android-SDK"
},
"response": {
"create_time": "2014-08-05T19:49:19Z",
"id": "PAY-0D205735ER3716140KPQTKPY",
"intent": "sale",
"state": "approved"
},
"response_type": "payment"
}
如您所见,交易ID为:PAY-0D205735ER3716140KPQTKPY
当我尝试通过使用此交易 ID 从我的服务器向 PayPal 发出请求来验证付款时,响应始终相同:
{
"Errors":
[
{
"L_ERRORCODE":"10004",
"L_SHORTMESSAGE":"Transaction refused because of an invalid argument. See additional error messages for details.",
"L_LONGMESSAGE":"The transaction id is not valid",
"L_SEVERITYCODE":"Error"
}
]
}
当我签入PayPal Sandbox test account site -> Notifications 时,测试事务 ID 完全不同。对于上述交易,交易id为: 5DY75733624918945
如果我在验证请求中使用此交易 ID - 来自 PayPal 的响应是正常的。
根据文档,我应该使用移动应用响应中的 id(此外——我不知道其他方法来检索交易 id……)。
我正在使用测试沙盒帐户,尝试了不同类型的付款(PayPal 按钮和 CC),甚至尝试了真实交易 - 结果是一样的。
你们知道他们为什么不一样吗?
【问题讨论】:
-
请查看here
标签: php android paypal transactions