2

我在我的网站上使用 Paypal Express Checkout API,在沙盒网站上遇到错误。USER、PWD 和 SIGNATURE 字段已经过验证并且是正确的。为了便于阅读,我用换行符替换了 & 符号。

首先,我的 SetExpressCheckout 请求:

USER=xxx
PWD=xxx
SIGNATURE=xxx
VERSION=76.0
METHOD=SetExpressCheckout  
RETURNURL=xxx
CANCELURL=xxx
REQCONFIRMSHIPPING=0
NOSHIPPING=1
LOCALECODE=FR
SOLUTIONTYPE=Sole
LANDINGPAGE=Billing
PAYMENTREQUEST_0_AMT=86.11
PAYMENTREQUEST_0_CURRENCYCODE=EUR
PAYMENTREQUEST_0_ITEMAMT=72.00
PAYMENTREQUEST_0_TAXAMT=14.11
PAYMENTREQUEST_0_INVNUM=1tyZq03X5c8
PAYMENTREQUEST_0_PAYMENTACTION=Sale
PAYMENTREQUEST_0_PAYMENTREQUESTID=1tyZx03f5c8

Paypal 的回复如下:

TOKEN=EC%2d9FE8384171515313J
TIMESTAMP=2011%2d08%2d24T08%3a44%3a36Z
CORRELATIONID=696e70dbd6086
ACK=Success
VERSION=76%2e0
BUILD=2055089

用户在 Paypal 网站上填写付款并返回到上面指定的确认 URL 后,我运行 GetExpressCheckoutDetails:

USER=xxx
PWD=xxx
SIGNATURE=xxx
VERSION=76.0
METHOD=GetExpressCheckoutDetails
TOKEN=EC-9FE8384171515313J

回应是:

TIMESTAMP=2011%2d08%2d24T08%3a45%3a56Z
CORRELATIONID=6a2bbe8363462
ACK=Failure
VERSION=76%2e0
BUILD=2055089
L_ERRORCODE0=10410
L_SHORTMESSAGE0=Invalid%20token
L_LONGMESSAGE0=Invalid%20token%2e
L_SEVERITYCODE0=Error

提供令牌的代码一个月没有改变(直到几分钟前它才正常工作)。从日志来看,我的请求结构没有变化,所以我假设这一定是 PayPal 端的配置问题。

一个可能很重要的细节:我在系统开始出现故障之前在沙箱中重置了卖家账户,但我确保 API 凭据是正确的(当我重置卖家账户时它们没有改变)。

任何想法为什么我突然收到这个错误?

4

2 回答 2

5

帐户重置操作似乎也禁用了 API 凭据,但是在此期间 API 凭据保持活动状态有一个小时左右的延迟,但使用它们时发生了奇怪的事情。

一个小时后,API 凭证被有效禁用,所以我只使用了新的凭证,一切正常。

简而言之:在沙箱中执行帐户重置时,请计划一小时的停机时间。

于 2011-08-25T09:27:58.327 回答
0

您必须在“网站付款首选项”的配置文件中定义一些选项

于 2012-08-20T14:25:42.063 回答