@EpicUsaMan

Invalid_request Yandex Money?

https://github.com/yandex-money/yandex-money-sdk-php

В этой реализации API есть метод
API::buildObtainTokenUrl($client_id, $redirect_uri, $scope);


У меня это реализовано так:

$scope = array('account-info', 'money-source("wallet","card")', 'payment.to-account("'.ACCOUNT.'","account").limit('.$_POST['limit_time'].','.$_POST['limit'].')');
$auth_url = API::buildObtainTokenUrl(CLIENT_ID, REDIRECT_URI, $scope);


Все параметры заносятся, ссылка генерируется, там даже вполне можно авторизироваться и оно понимает что за сайт запрашивает данные, а значит CLIENT_ID верный.

Пробовал REDIRECT_URI и $scope внутри метода в последнем sprintf() преображать и в urlencode() и в rawurlencode()

Но бесполезно.

Поддержка яндекса молчит, а помощь нужна срочно.

На scope по видимому тоже не жалуется, ибо тогда бы вернуло другую ошибку.
  • Вопрос задан
  • 1168 просмотров
Пригласить эксперта
Ответы на вопрос 1
@z0ddak
Мордор напоминает о себе
"Redirect URI в настройках приложения и Redurect URI в запросе должны быть одинаковыми." - это так, но и ко всему где у вас экранирование кавычек: money-source("wallet","card") и т.д.? Вот что по этому поводу советует Яндекс.Деньги:

...могут быть символы, нарушающие синтаксис scope, например двойная кавычка.
Для таких символов следует применять backslash escaping согласно формату JSON. Например: \"
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы