Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Приветствую, друзья!

 

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

 

Дело в том, что коллега настраивает сайт под Яндекс.Директ и необходимы кое-какие настройки.

 

На данный момент возник такой вопрос:

"На какую страницу должна перенаправлять система после успешной оплаты клиентом заказа? То, что везде называется “Success URL”?

 

так как сама ссылка на страницу заказа имеет вид: http://наш-сайт.com/order/xxxxxxxxx

 

Подскажи, пожалуйста, что именно указать в таком случае?

 

Возможно кто-то сталкивался с Яндекс.Директ?!

Ссылка на сообщение
Поделиться на другие сайты

/order

Спасибо за ответ.

Но почему, когда перехожу по ссылке http://наш-сайт.com/order откывается пустая (белая) страница, даже когда пользователь авторизован ?

Ссылка на сообщение
Поделиться на другие сайты

Спасибо за ответ.

Но почему, когда перехожу по ссылке http://наш-сайт.com/order откывается пустая (белая) страница, даже когда пользователь авторизован ?

Когда покупатель делаем заказ, ему в сессию записывается ид заказа, и при открытии /order будет открываться его последний заказ 

Ссылка на сообщение
Поделиться на другие сайты

Начал проверять ссылку на другом браузере, а там выдает "белую" страницу ))

Я на счет сессии забыл совсем ))

Ссылка на сообщение
Поделиться на другие сайты

Насколько я понимаю, Вы обнаружили очередную ошибку.

Как правильно заметил Osben, "Когда покупатель делаем заказ, ему в сессию записывается ид заказа, и при открытии /order будет открываться его последний заказ".

 

А что будет проходить при других, чуть более сложных, сценариях?

 

Пример 1. Покупатель сделал сразу друг за другом ДВА  заказа. После этого в сессии хранится, конечно второй. Если он после этого будет оплачивать первый заказ, то обратный переход с платежной системы на /order покажет не тот заказ, который он оплачивал.

 

Если этот пример покажется Вам слишком экзотичным и надуманным, то следующий пример - вполне реальный и жизненный.

 

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

Ссылка на сообщение
Поделиться на другие сайты

2 хранить ID заказа в куки

 

Не слишком хорошо - типичные костыли. Привязывается к браузеру и с другого компьютера/браузера не сработает...

Ссылка на сообщение
Поделиться на другие сайты

Насколько я понимаю, Вы обнаружили очередную ошибку.

Как правильно заметил Osben, "Когда покупатель делаем заказ, ему в сессию записывается ид заказа, и при открытии /order будет открываться его последний заказ".

 

А что будет проходить при других, чуть более сложных, сценариях?

 

Пример 1. Покупатель сделал сразу друг за другом ДВА  заказа. После этого в сессии хранится, конечно второй. Если он после этого будет оплачивать первый заказ, то обратный переход с платежной системы на /order покажет не тот заказ, который он оплачивал.

 

Если этот пример покажется Вам слишком экзотичным и надуманным, то следующий пример - вполне реальный и жизненный.

не правда.

Оплата заказа происходит следующим образом:

  1. клиент на странице заказа кликает по кнопке оплатить
  2. делает оплату
  3. процессинговый центр возвращает ответ (успешная оплата или нет) и передает номер заказа
  4. callback.php берет ID заказа, достает URL Заказа из БД
  5. редиректит пользователя на страницу заказа с верным URL.

Тем самым оплачивая первый заказ вы попадете на первый заказ, т.к. в БД у него уникальный УРЛ.

 

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

то-же касательно этого примера.

Если у пользователя есть ссылка на страницу заказа, ему остается кликнуть "оплатить".

 

"На какую страницу должна перенаправлять система после успешной оплаты клиентом заказа? То, что везде называется “Success URL”?

 

так как сама ссылка на страницу заказа имеет вид: http://наш-сайт.com/order/xxxxxxxxx

 

Подскажи, пожалуйста, что именно указать в таком случае?

После успешной оплаты будет редирект на http://наш-сайт.com/order/xxxxxxxxx

 

Что конкретно вам нужно в яндекс.диркете относительно страниц заказа?

Ссылка на сообщение
Поделиться на другие сайты

 

не правда.

Оплата заказа происходит следующим образом:

  • клиент на странице заказа кликает по кнопке оплатить
  • делает оплату
  • процессинговый центр возвращает ответ (успешная оплата или нет) и передает номер заказа
  • callback.php (любого платежного модуля) берет ID заказа, достает URL Заказа из БД
  • редиректит пользователя на страницу заказа с верным URL.

По-моему, Вы многое перепутали, в частности:

1. Процессинговый центр возвращает ответ по ОДНОМУ адресу, заранее данному ему и одинаковому для всех заказов, обычно это /order.  А при обработке ответа (в view/OrderView.php) переданный параметр (если такой и есть) не обрабатывается (и обрабатывать его довольно сложно, так как он разный у разных систем)...

2. Callback ничего НЕ редиректит, он заканчивает при успехе оператором типа die("OK".$order_id."\n");

3. Callback тут вообще не по теме, в вопросе ТС речь шла про работу пользователя в браузере...

 

Ссылка на сообщение
Поделиться на другие сайты

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, если в процессинговом центре нет такой функции "урл об успешной оплате".

Изменено пользователем ABSORBER
Ссылка на сообщение
Поделиться на другие сайты

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, если в процессинговом центре нет такой функции "урл об успешной оплате".

+

Ссылка на сообщение
Поделиться на другие сайты

Если Вы что-то свое делали и у Вас хорошо работает, поздравляю.

 

Но в теме речь идет о стандартных приемах Simpla, связанных с платежами.

 

Например, в payment/Robokassa/example.png показаны типовые

successURL  как http://shop.ru/order

callbackURL  как http://shop.ru/payment/Robokassa/callback.php

 

Если Вы используете свои приемы, в частности, используете callback.php не по его прямому назначению, а как successURL, то это Ваш выбор. Но это несколько расходится с официальной идеологией Simpla и, возможно, применимо не для всех платежных систем. 

 

Фактически Вы применяете несколько другой  способ. И похоже, при Вашем методе этой ошибки  нет.

А в стандартной схеме Simpla ошибка есть в том виде, как описана выше.

 

И очень похоже, что Ваш метод лучше официального...

Ссылка на сообщение
Поделиться на другие сайты

Благодарю Maksclub и osben за ответ.

Вне контекста Симплы набросал статейку для общего понимания :)

 

https://maksfedorov.ru/blog/all/obschiy-vid-raboty-s-platezhnoy-sistemoy-cherez-http/

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

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

 

Например,

Порядок работы:

    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" - это всегда так. Смысла никакого...

Ссылка на сообщение
Поделиться на другие сайты

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

П.2 и п.3 явно не в том порядке.

П.3 - совсем неправильно. Во-всяком случае, большинство платежных сервисов так не работают...

П.4 -  То, что написано, это общее правило для всех запросов и ответов.  "отвечает OK или не OK" - это всегда так. Смысла никакого...

 

Да, черновик для быстрого наброса информации — редактировать буду, действительно все в точку и  спасибо большое!...

 

 

Для специалистов - ошибки и неточности почти в каждой фразе. Для простых пользователей - полная непонятная абстракция

 

Сильно в техническую область переводить не буду — это все же для джуниоров, тк эта тема слегка отпугивает их...

Спецы могут кривиться, но материалы такого плана выручают... Это как на юридическую тему объяснять обычным людям — в доль и поперек неверные «юридически» фразы и трактовки, но понятные.

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

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

 

Это я делал конспект (так и было в названии, но длинно — убрал) по видео

Сначала по памяти набросал заметки, потом склеил в более-менее логичные вещи,

потому  коряво выглядит — особенно видно в местах «Оплата», а после — «Нажал на кнопку "Оплатить"» :) отредактирую

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

...материалы такого плана выручают...

 

Материал в текущем виде - ни себе ни людям...

 

Это как на юридическую тему объяснять обычным людям — в доль и поперек неверные «юридически» фразы и трактовки, но понятные.

 

У Вас в начале статьи заявлено "Если вам нужно будет организовать оплату на своем сайте и под ваш фреймворк или ЦМС нет готовых решений — его не сложно написать самому."

 

Возьмите для примера одну конкретную систему и под нее напишите с объяснениями ПОНЯТНЫМИ. Чтобы после прочтения у него, малоподготовленного, остался такой материал, чтоб он мог скопировать-вставить и оп, заработало... Вот тогда это и понятно и полезно... 

 

Например, есть тема

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...

Ссылка на сообщение
Поделиться на другие сайты

phukortsinMaksclub

 

У каждого платежного сервиса, есть инструкция как с ним работать. 

Любой программист умеющий работать с cURL легко разберется как и что сделать.

 

А задачи вроде делать редирект или не делать, вытекают из целей проекта.

Ссылка на сообщение
Поделиться на другие сайты

У каждого платежного сервиса, есть инструкция как с ним работать. 

Любой программист умеющий работать с 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к руб.", что говорит о том, что требует приличных трудозатрат...

Ссылка на сообщение
Поделиться на другие сайты

Делать оплачиваемую работу за бесплатно не собираюсь, не благотворитель.

У меня есть готовые, платежные модули, которые разрабатывал ранее для клиентов.

Сбербанк эквайринг

KKB эквайринг

 

А то в той теме запрашивают "Срок - 4 дня, 9к руб.", что говорит о том, что требует приличных трудозатрат...

Если вы работаете с клиентами, берите во внимание время про запас. Мало ли случится, какой-то форс мажор. А не сделать работу в срок, перед клиентом как-то стыдно. 

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

Да и 9 т.р. - для кого-то приличные деньги, а для кто-то их в день зарабатывает. 

 

У любого исполнителя, разная цена на свои услуги.

То-же самое касается любых сфер услуг, вы можете заказать такси за 200 руб, или за 800...

Ссылка на сообщение
Поделиться на другие сайты

Спасибо за объяснения, но вопрос был в другом.


Вы вот сказали "Любой программист умеющий работать с cURL легко разберется как и что сделать."

Вы конкретно по указанной платежной системе можете разобраться "легко"? Под "легко" я подразумеваю без лишних разговоров на отвлеченные темы выложить решение или хотя бы наметки решения.

 

ИМХО, обычно на форуме так: если что-то легко, то дают сразу решение. А если запрашивают  несколько дней и несколько тысяч руб, то это уже совсем не легко...

 

Ссылка на сообщение
Поделиться на другие сайты

Спасибо за объяснения, но вопрос был в другом.

Вы вот сказали "Любой программист умеющий работать с 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 и поймете как и что работает.

 

На этом форуме люди добровольно выкладывают решение или намеки на решение, если считают нужным. В данном случае, я не считаю нужным делать работу, или её часть, бесплатно.

 

Мы общаемся не по теме, по этому если у вас есть ко мне какие-то вопросы, пишите в ЛС, контакты ниже 

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...