API разрешений PayPal
Я пытаюсь настроить разрешения таким образом, чтобы, когда клиенты захотят использовать мой сервис интеграции PayPal, я проводил их через процесс предоставления моему программному обеспечению разрешения на проведение экспресс-платежей от их имени.
До сих пор я следовал этим шагам (я использую SDK разрешений PayPal для.Net):
- Используйте requestPermissions, чтобы добавить разрешение "EXPRESS_CHECKOUT" для возврата токена доступа.
- Используйте getAccessToken (передав токен и код подтверждения), чтобы получить секрет токена
- Затем я сохраняю токен и секрет токена для будущих платежей.
- Я пытаюсь протестировать платеж, используя среду песочницы, используя ProfileFactory.createPermissionAPIProfile() и генерируя подпись, используя "com.paypal.sdk.core.OauthSignature.getAuthHeader". Одна вещь, в которой я не совсем уверен, это то, что передается как URL API, я передаю "https://api.sandbox.paypal.com/2.0/"
Теперь, когда я делаю это и вызываю SetExpressCheckout, я получаю сообщение об ошибке, в котором говорится, что у меня нет разрешения.
Итак, я хотел отладить это, чтобы проверить, какие у меня есть разрешения, поэтому я вызываю GetPermissions, передавая токен, но объект ответа равен null? Это действительно странно, я ожидал бы ошибку, если бы была проблема, я не вижу никакой причины, почему возвращается нулевое значение?
Кто-нибудь может помочь указать мне правильное направление? Заранее спасибо.
1 ответ
Мы используем API-интерфейс NVP, и для выполнения вызовов API от имени третьей стороны необходимо отправить идентификатор PayPal третьей стороны в теме запроса API. API-интерфейс SOAP имеет тот же элемент.
Документ API говорит, что это - адрес authorizing_account_emailad, хотя мы отправляем идентификатор PayPal, и это работает.