Paypal Express Checkout: 10410 Неверный Токен


Я использую API Paypal Express Checkout на своем веб-сайте и сталкиваюсь с ошибкой, находясь на сайте sandbox. Поля 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 являются правильными (они не изменились, когда я сбросил учетную запись продавца).

Есть идеи, почему я вдруг получаю эту ошибку?

2 2

2 ответа:

Похоже, что операция сброса учетной записи также отключает учетные данные API, но произошла задержка примерно на час, в течение которой учетные данные API оставались активными, но при их использовании происходили странные вещи.

Через час учетные данные API были фактически отключены, поэтому я просто использовал новые, и все работает нормально.

Короче говоря: при выполнении сброса учетной записи в песочнице запланируйте час простоя.

Вы должны определить некоторые параметры в профиле в разделе "Настройки оплаты веб-сайта"