Я провожу тестовый платеж ЯндексКассы (интеграция API). ЯндексКасса должна перенаправить на мою страницу json - данные.
Но этого не происходит. Почему ? Не понятно.
Если я сама перенаправляю пользователя на другую страницу вместе с json - данными, то и пользователь переходит на новую страницу и данные передаются на эту страницу.
Может что-то надо запретить/открыть ? Из тех.поддержки мне пишут, что они перенаправляют на мою страницу пользователя, но с моей страницы поступает redirect с кодом 302. Но я не вижу перехода на мою страницу.
Может кто-то что-то подскажет по этому вопросу. Пожалуйста.
Не происходит redirect
Re: Не происходит redirect
Яндекс отправляет вам json в теле запроса, и ловить его нужно соответстующе: Yii::$app->getRequest()->getRawBody()
Re: Не происходит redirect
В теле запроса яндекс отправляет мне json при оформлении платежа. Я по полученному адресу перенаправляю пользователя. Затем яндекс должен перенаправить на мою страницу уведомление, т.е. json данные. Никакого запроса с моей стороны на данном этапе нет. Я просто не получаю уведомление.
В этом и вопрос - почему ? Почему из тех.поддержки мне пишут, что они перенаправляют на мою страницу пользователя, но с моей страницы поступает redirect с кодом 302, но я не вижу перехода на мою страницу. Я на данном этапе пока ничего не передаю.
В этом и вопрос - почему ? Почему из тех.поддержки мне пишут, что они перенаправляют на мою страницу пользователя, но с моей страницы поступает redirect с кодом 302, но я не вижу перехода на мою страницу. Я на данном этапе пока ничего не передаю.
Re: Не происходит redirect
Яндекс шлет скрытый запрос сначала после оплаты. Он никак не редиректит. Я не помню как у них. Что-то типа result url
Вот в нем необходимо получить все данные. В этот момент он как бы говорит, что человек оплатил, делай со своим платежом, что нужно.
А редирект после платежа уже не говорит ни о чем, и обрабатывать его, как результат платежа уже не обязательно. Редирект у них происходит в 2-х сценариях: если платеж успешный (от result url пришел утвердительный ответ, платеж совершен), или если ответ не успешен, или клиент отказался от платежа (просто отказался, или денег нет например), то в зависимости от этого ответа просто тупо показать клиенту результат (вы отказались, или ошибка, или платеж успеешен)
А именно обрабатывать платеж нужно в result url
Вот в нем необходимо получить все данные. В этот момент он как бы говорит, что человек оплатил, делай со своим платежом, что нужно.
А редирект после платежа уже не говорит ни о чем, и обрабатывать его, как результат платежа уже не обязательно. Редирект у них происходит в 2-х сценариях: если платеж успешный (от result url пришел утвердительный ответ, платеж совершен), или если ответ не успешен, или клиент отказался от платежа (просто отказался, или денег нет например), то в зависимости от этого ответа просто тупо показать клиенту результат (вы отказались, или ошибка, или платеж успеешен)
А именно обрабатывать платеж нужно в result url
Re: Не происходит redirect
Это сравнительно новый вариант проведения платежа - интеграция API. В документации говорится как надо провести платеж:
1. Создаем запрос на платеж.
2. В этом запросе получаем адрес, по которому надо перенаправить пользователя.
3. На указанной странице пользователь вводит тестовые данные.
4. На адрес, указаный в настройках магазина, должно прийти уведомление о платеже.
5. На данном этапе я должна отравить запрос либо о подтверждении платежа, либо об отказе от платежа.
Но пункт 4 не выполняется. Я не попадаю на эту страницу. На даный момент я просто сделала вывод на экран json данных, если происходит обращение к моей странице. И все. Но ничего не выводится.
Как мне выполнить п.4. Я запуталась.
1. Создаем запрос на платеж.
2. В этом запросе получаем адрес, по которому надо перенаправить пользователя.
3. На указанной странице пользователь вводит тестовые данные.
4. На адрес, указаный в настройках магазина, должно прийти уведомление о платеже.
5. На данном этапе я должна отравить запрос либо о подтверждении платежа, либо об отказе от платежа.
Но пункт 4 не выполняется. Я не попадаю на эту страницу. На даный момент я просто сделала вывод на экран json данных, если происходит обращение к моей странице. И все. Но ничего не выводится.
Как мне выполнить п.4. Я запуталась.
- proctoleha
- Сообщения: 298
- Зарегистрирован: 2016.07.10, 19:00
Re: Не происходит redirect
4. На адрес, указаный в настройках магазина, должно прийти уведомление о платеже.
.Но пункт 4 не выполняется. Я не попадаю на эту страницу.
Вы и не должны попадать на эту страницу. В этом контроллере, в конкретном экшене, согласно url, вы должны принять запрос, проверить его, и дать ответ. Почитайте про Rest Full Api. Что это вообще такое.
Вот за что я не люблю линукс, так это за свои кривые, временами, руки
Re: Не происходит redirect
Я пишу, что п. 4 не выполняется. А про страницу указываю для того, чтобы показать, что уведомление не приходит. С ЯндексКассой уже разобрались почему не приходит уведомление. Спасибо за желание помочь, но надо внимательнее читать вопрос.
Re: Не происходит redirect
Обычно п.4 можно отследить в личных кабинетах, обычно предоставляют историю таких отправок. Там видно статус с которым запрос на ваш адрес завершён.
Re: Не происходит redirect
Я это все знаю. И отслеживаю платежи. И в истории видно, что платеж не завершен. С ЯндексКассой мы уже разобрались. Дело было не в моем коде. Спасибо за желание помочь.