daramal Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 Приветствую, друзья! Возможно прозвучал подобный вопрос, но к сожалению не нашел ясного ответа на форуме. Дело в том, что коллега настраивает сайт под Яндекс.Директ и необходимы кое-какие настройки. На данный момент возник такой вопрос:"На какую страницу должна перенаправлять система после успешной оплаты клиентом заказа? То, что везде называется “Success URL”? так как сама ссылка на страницу заказа имеет вид: http://наш-сайт.com/order/xxxxxxxxx Подскажи, пожалуйста, что именно указать в таком случае? Возможно кто-то сталкивался с Яндекс.Директ?! Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 /order Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 10 мая, 2018 Автор Жалоба Поделиться Опубликовано 10 мая, 2018 /orderСпасибо за ответ.Но почему, когда перехожу по ссылке http://наш-сайт.com/order откывается пустая (белая) страница, даже когда пользователь авторизован ? Цитата Ссылка на сообщение Поделиться на другие сайты
osben Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 Спасибо за ответ.Но почему, когда перехожу по ссылке http://наш-сайт.com/order откывается пустая (белая) страница, даже когда пользователь авторизован ?Когда покупатель делаем заказ, ему в сессию записывается ид заказа, и при открытии /order будет открываться его последний заказ Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 10 мая, 2018 Автор Жалоба Поделиться Опубликовано 10 мая, 2018 Благодарю Maksclub и osben за ответ. Цитата Ссылка на сообщение Поделиться на другие сайты
daramal Опубликовано 10 мая, 2018 Автор Жалоба Поделиться Опубликовано 10 мая, 2018 Начал проверять ссылку на другом браузере, а там выдает "белую" страницу ))Я на счет сессии забыл совсем )) Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 Насколько я понимаю, Вы обнаружили очередную ошибку.Как правильно заметил Osben, "Когда покупатель делаем заказ, ему в сессию записывается ид заказа, и при открытии /order будет открываться его последний заказ". А что будет проходить при других, чуть более сложных, сценариях? Пример 1. Покупатель сделал сразу друг за другом ДВА заказа. После этого в сессии хранится, конечно второй. Если он после этого будет оплачивать первый заказ, то обратный переход с платежной системы на /order покажет не тот заказ, который он оплачивал. Если этот пример покажется Вам слишком экзотичным и надуманным, то следующий пример - вполне реальный и жизненный. Пример 2. Покупатель сделал заказ. Попробовал сразу оплатить - не вышло, например, не хватило денег на счете. Решил отложить оплату на завтра, когда появятся средства. А завтра уже после успешной оплаты получает ту самую белую страницу - ибо вчерашняя сессия давно завершилась. Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 2 хранить ID заказа в куки Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 2 хранить ID заказа в куки Не слишком хорошо - типичные костыли. Привязывается к браузеру и с другого компьютера/браузера не сработает... Цитата Ссылка на сообщение Поделиться на другие сайты
ABSORBER Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 Насколько я понимаю, Вы обнаружили очередную ошибку.Как правильно заметил Osben, "Когда покупатель делаем заказ, ему в сессию записывается ид заказа, и при открытии /order будет открываться его последний заказ". А что будет проходить при других, чуть более сложных, сценариях? Пример 1. Покупатель сделал сразу друг за другом ДВА заказа. После этого в сессии хранится, конечно второй. Если он после этого будет оплачивать первый заказ, то обратный переход с платежной системы на /order покажет не тот заказ, который он оплачивал. Если этот пример покажется Вам слишком экзотичным и надуманным, то следующий пример - вполне реальный и жизненный.не правда.Оплата заказа происходит следующим образом:клиент на странице заказа кликает по кнопке оплатить делает оплату процессинговый центр возвращает ответ (успешная оплата или нет) и передает номер заказа callback.php берет ID заказа, достает URL Заказа из БД редиректит пользователя на страницу заказа с верным URL.Тем самым оплачивая первый заказ вы попадете на первый заказ, т.к. в БД у него уникальный УРЛ. Пример 2. Покупатель сделал заказ. Попробовал сразу оплатить - не вышло, например, не хватило денег на счете. Решил отложить оплату на завтра, когда появятся средства. А завтра уже после успешной оплаты получает ту самую белую страницу - ибо вчерашняя сессия давно завершилась.то-же касательно этого примера.Если у пользователя есть ссылка на страницу заказа, ему остается кликнуть "оплатить". "На какую страницу должна перенаправлять система после успешной оплаты клиентом заказа? То, что везде называется “Success URL”? так как сама ссылка на страницу заказа имеет вид: http://наш-сайт.com/order/xxxxxxxxx Подскажи, пожалуйста, что именно указать в таком случае?После успешной оплаты будет редирект на http://наш-сайт.com/order/xxxxxxxxx Что конкретно вам нужно в яндекс.диркете относительно страниц заказа? Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 не правда.Оплата заказа происходит следующим образом:клиент на странице заказа кликает по кнопке оплатитьделает оплатупроцессинговый центр возвращает ответ (успешная оплата или нет) и передает номер заказаcallback.php (любого платежного модуля) берет ID заказа, достает URL Заказа из БДредиректит пользователя на страницу заказа с верным URL.По-моему, Вы многое перепутали, в частности:1. Процессинговый центр возвращает ответ по ОДНОМУ адресу, заранее данному ему и одинаковому для всех заказов, обычно это /order. А при обработке ответа (в view/OrderView.php) переданный параметр (если такой и есть) не обрабатывается (и обрабатывать его довольно сложно, так как он разный у разных систем)...2. Callback ничего НЕ редиректит, он заканчивает при успехе оператором типа die("OK".$order_id."\n");3. Callback тут вообще не по теме, в вопросе ТС речь шла про работу пользователя в браузере... Цитата Ссылка на сообщение Поделиться на другие сайты
ABSORBER Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 (изменено) phukortsin, в 10 May 2018 - 19:45, сказал(а):По-моему, Вы многое перепутали, в частности:1. Процессинговый центр возвращает ответ по ОДНОМУ адресу, заранее данному ему и одинаковому для всех заказов, обычно это /order. А при обработке ответа (в view/OrderView.php) переданный параметр (если такой и есть) не обрабатывается (и обрабатывать его довольно сложно, так как он разный у разных систем)...2. Callback ничего НЕ редиректит, он заканчивает при успехе оператором типа die("OK".$order_id."\n");3. Callback тут вообще не по теме, в вопросе ТС речь шла про работу пользователя в браузере...1. Процессинговый центр возвращает ответ по адресу //SITENAME/paymanes/MODULE_NAME/callback.php, в свою очередь callback.php списывает товары, переводит заказ в статус "оплачен" и тд операции. 2. Я делал модуль Сбербанк-эквайринга, KKB и других платежных систем, и везде делал редирект.В YandexMoney например, передается successurl прямо в форме с кнопкой "перейти к оплате". И выглядит он так: $this->config->root_url.'/order/'.$order->url; 3. ТС показал два примера, которые имеют отношение к callback.php Добавлено:В любом случае ссылка на успешную оплату либо указывается при регистрации заказа в процессинговом центре, и она равна //SITENAME/order/xxxxxxxxxxЛибо редирект через callback.php, если в процессинговом центре нет такой функции "урл об успешной оплате". Изменено 10 мая, 2018 пользователем ABSORBER Цитата Ссылка на сообщение Поделиться на другие сайты
Noxter Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 1. Процессинговый центр возвращает ответ по адресу //SITENAME/paymanes/MODULE_NAME/callback.php, в свою очередь callback.php списывает товары, переводит заказ в статус "оплачен" и тд операции. 2. Я делал модуль Сбербанк-эквайринга, KKB и других платежных систем, и везде делал редирект.В YandexMoney например, передается successurl прямо в форме с кнопкой "перейти к оплате". И выглядит он так: $this->config->root_url.'/order/'.$order->url; 3. ТС показал два примера, которые имеют отношение к callback.php Добавлено:В любом случае ссылка на успешную оплату либо указывается при регистрации заказа в процессинговом центре, и она равна //SITENAME/order/xxxxxxxxxxЛибо редирект через callback.php, если в процессинговом центре нет такой функции "урл об успешной оплате".+ Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 10 мая, 2018 Жалоба Поделиться Опубликовано 10 мая, 2018 Если Вы что-то свое делали и у Вас хорошо работает, поздравляю. Но в теме речь идет о стандартных приемах Simpla, связанных с платежами. Например, в payment/Robokassa/example.png показаны типовыеsuccessURL как http://shop.ru/ordercallbackURL как http://shop.ru/payment/Robokassa/callback.php Если Вы используете свои приемы, в частности, используете callback.php не по его прямому назначению, а как successURL, то это Ваш выбор. Но это несколько расходится с официальной идеологией Simpla и, возможно, применимо не для всех платежных систем. Фактически Вы применяете несколько другой способ. И похоже, при Вашем методе этой ошибки нет.А в стандартной схеме Simpla ошибка есть в том виде, как описана выше. И очень похоже, что Ваш метод лучше официального... Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 12 мая, 2018 Жалоба Поделиться Опубликовано 12 мая, 2018 (изменено) Благодарю Maksclub и osben за ответ.Вне контекста Симплы набросал статейку для общего понимания https://maksfedorov.ru/blog/all/obschiy-vid-raboty-s-platezhnoy-sistemoy-cherez-http/ Изменено 12 мая, 2018 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 12 мая, 2018 Жалоба Поделиться Опубликовано 12 мая, 2018 По-моему, одни общие фразы. Для специалистов - ошибки и неточности почти в каждой фразе. Для простых пользователей - полная непонятная абстракция - разве что можно сделать вывод, что автор очень умный. Например, Порядок работы: 1. Оплата → (redirect) → .ru/payment.aspx?id=123&price=1000 2. Пользователь оплачивает 3. Когда он нажимает оплатить, платежная система идет с запросом на processUrl, например на /payment/process (GET или POST), передавая параметры — чтобы проверить заказ. 4. Наш сайт отвечает OK или не OK 5. Если ОК → платежка списывает с человека деньги, и выводит примерно текст «Перейи на сайт магазина» (которая ведет на successUrl) П.1. По моему, автор вообще не очень понимает смысл слова редирект...П.2 и п.3 явно не в том порядке.П.3 - совсем неправильно. Во-всяком случае, большинство платежных сервисов так не работают...П.4 - То, что написано, это общее правило для всех запросов и ответов. "отвечает OK или не OK" - это всегда так. Смысла никакого... Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 12 мая, 2018 Жалоба Поделиться Опубликовано 12 мая, 2018 (изменено) По-моему, одни общие фразы. Для специалистов - ошибки и неточности почти в каждой фразе. Для простых пользователей - полная непонятная абстракция - разве что можно сделать вывод, что автор очень умный.П.1. По моему, автор вообще не очень понимает смысл слова редирект...П.2 и п.3 явно не в том порядке.П.3 - совсем неправильно. Во-всяком случае, большинство платежных сервисов так не работают...П.4 - То, что написано, это общее правило для всех запросов и ответов. "отвечает OK или не OK" - это всегда так. Смысла никакого... Да, черновик для быстрого наброса информации — редактировать буду, действительно все в точку и спасибо большое!... Для специалистов - ошибки и неточности почти в каждой фразе. Для простых пользователей - полная непонятная абстракция Сильно в техническую область переводить не буду — это все же для джуниоров, тк эта тема слегка отпугивает их...Спецы могут кривиться, но материалы такого плана выручают... Это как на юридическую тему объяснять обычным людям — в доль и поперек неверные «юридически» фразы и трактовки, но понятные. Изменено 12 мая, 2018 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 12 мая, 2018 Жалоба Поделиться Опубликовано 12 мая, 2018 (изменено) По-моему, одни общие фразы. Для специалистов - ошибки и неточности почти в каждой фразе. Это я делал конспект (так и было в названии, но длинно — убрал) по видеоСначала по памяти набросал заметки, потом склеил в более-менее логичные вещи,потому коряво выглядит — особенно видно в местах «Оплата», а после — «Нажал на кнопку "Оплатить"» отредактирую Изменено 12 мая, 2018 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 13 мая, 2018 Жалоба Поделиться Опубликовано 13 мая, 2018 ...материалы такого плана выручают... Материал в текущем виде - ни себе ни людям... Это как на юридическую тему объяснять обычным людям — в доль и поперек неверные «юридически» фразы и трактовки, но понятные. У Вас в начале статьи заявлено "Если вам нужно будет организовать оплату на своем сайте и под ваш фреймворк или ЦМС нет готовых решений — его не сложно написать самому." Возьмите для примера одну конкретную систему и под нее напишите с объяснениями ПОНЯТНЫМИ. Чтобы после прочтения у него, малоподготовленного, остался такой материал, чтоб он мог скопировать-вставить и оп, заработало... Вот тогда это и понятно и полезно... Например, есть темаhttp://forum.simplacms.ru/topic/13529-%D0%BD%D0%B5%D0%BE%D0%B1%D1%85%D0%BE%D0%B4%D0%B8%D0%BC%D0%BE-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%82%D1%8C-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C-%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D1%8B-securepay/Вот, например, по заявке из той темы и сделайте своим методом, который "не сложно написать самому". Ведь там фрилансеры хотят за работу приличные деньги, сопоставимые со стоимостью всей Simpla... Цитата Ссылка на сообщение Поделиться на другие сайты
ABSORBER Опубликовано 13 мая, 2018 Жалоба Поделиться Опубликовано 13 мая, 2018 phukortsin, Maksclub У каждого платежного сервиса, есть инструкция как с ним работать. Любой программист умеющий работать с cURL легко разберется как и что сделать. А задачи вроде делать редирект или не делать, вытекают из целей проекта. Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 13 мая, 2018 Жалоба Поделиться Опубликовано 13 мая, 2018 У каждого платежного сервиса, есть инструкция как с ним работать. Любой программист умеющий работать с cURL легко разберется как и что сделать.Можете "легко" подкрепить свое заявление примером? Например, сделать для задачи http://forum.simplacms.ru/topic/13529-%D0%BD%D0%B5%D0%BE%D0%B1%D1%85%D0%BE%D0%B4%D0%B8%D0%BC%D0%BE-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%82%D1%8C-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C-%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D1%8B-securepay/ А то в той теме запрашивают "Срок - 4 дня, 9к руб.", что говорит о том, что требует приличных трудозатрат... Цитата Ссылка на сообщение Поделиться на другие сайты
ABSORBER Опубликовано 13 мая, 2018 Жалоба Поделиться Опубликовано 13 мая, 2018 Можете "легко" подкрепить свое заявление примером? Например, сделать для задачиhttp://forum.simplacms.ru/topic/13529-%D0%BD%D0%B5%D0%BE%D0%B1%D1%85%D0%BE%D0%B4%D0%B8%D0%BC%D0%BE-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%82%D1%8C-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C-%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D1%8B-securepay/Делать оплачиваемую работу за бесплатно не собираюсь, не благотворитель.У меня есть готовые, платежные модули, которые разрабатывал ранее для клиентов.Сбербанк эквайрингKKB эквайринг А то в той теме запрашивают "Срок - 4 дня, 9к руб.", что говорит о том, что требует приличных трудозатрат...Если вы работаете с клиентами, берите во внимание время про запас. Мало ли случится, какой-то форс мажор. А не сделать работу в срок, перед клиентом как-то стыдно. И вы не забывайте что исполнитель может делать больше одного проекта одновременно, что отражается на сроке разработки.Да и 9 т.р. - для кого-то приличные деньги, а для кто-то их в день зарабатывает. У любого исполнителя, разная цена на свои услуги.То-же самое касается любых сфер услуг, вы можете заказать такси за 200 руб, или за 800... Цитата Ссылка на сообщение Поделиться на другие сайты
phukortsin Опубликовано 13 мая, 2018 Жалоба Поделиться Опубликовано 13 мая, 2018 Спасибо за объяснения, но вопрос был в другом.Вы вот сказали "Любой программист умеющий работать с cURL легко разберется как и что сделать."Вы конкретно по указанной платежной системе можете разобраться "легко"? Под "легко" я подразумеваю без лишних разговоров на отвлеченные темы выложить решение или хотя бы наметки решения. ИМХО, обычно на форуме так: если что-то легко, то дают сразу решение. А если запрашивают несколько дней и несколько тысяч руб, то это уже совсем не легко... Цитата Ссылка на сообщение Поделиться на другие сайты
ABSORBER Опубликовано 13 мая, 2018 Жалоба Поделиться Опубликовано 13 мая, 2018 Спасибо за объяснения, но вопрос был в другом.Вы вот сказали "Любой программист умеющий работать с cURL легко разберется как и что сделать."Вы конкретно по указанной платежной системе можете разобраться "легко"? Под "легко" я подразумеваю без лишних разговоров на отвлеченные темы выложить решение или хотя бы наметки решения.ИМХО, обычно на форуме так: если что-то легко, то дают сразу решение. А если запрашивают несколько дней и несколько тысяч руб, то это уже совсем не легко...Чуть выше писалось как работают платежные модули в Simpla CMS.Зайдите по ссылке http://forum.simplacms.ru/topic/13529-%D0%BD%D0%B5%D0%BE%D0%B1%D1%85%D0%BE%D0%B4%D0%B8%D0%BC%D0%BE-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%82%D1%8C-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8C-%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D1%8B-securepay/посмотрите документ прикрепленный к теме. В нем написано как и что работает, и полно "намеков".Остается только понимание того как это сделать в формате платежного модуля в Simpla CMS, а это уже работа исполнителя. Хотите стать исполнителем?, ковыряйте платежные модули движка, сам движок, учите PHP и поймете как и что работает. На этом форуме люди добровольно выкладывают решение или намеки на решение, если считают нужным. В данном случае, я не считаю нужным делать работу, или её часть, бесплатно. Мы общаемся не по теме, по этому если у вас есть ко мне какие-то вопросы, пишите в ЛС, контакты ниже Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.