Удаление оплаченного заказа при двойном оформлении

Проблема в том, что при переходе на сайт платежной системы заказ не оформляется. Проблему поднимали ни раз и уже давно. Оформление заказа новое сделали, а проблема осталась. Видимо не достаточно логического “Нажал оформить заказ - заказ должен быть оформлен”. Обязательно нужно рыдать, кричать, умолять или еще чего-то там чтобы понять что проблема есть - при выборе онлайн-оплаты и нажатии на кнопку “Оформить заказ” - заказ не оформляется. Но если это не проблема, а фича, то про нее нужно упомянуть на сайте в описании CS-Cart :joy:

Да о чем речь, зайдите на мультивендер лендинг, один сайт уже сменил движок, другой продается, третий выглядит как обычный магазин на столько грустно что лучше не показывать его в портфолио движка. У меня складывается ощущение, что cs-cart это как фрукты на рынке покупать, на витрине красивые, а в пакет кладут что попало. А когда возмущаешься тебе говорят не нравится иди дальше.

При оплате после подтверждения таких проблем не замечал, слава богу :joy: ну и ещё костыль какой то впилен был вроде

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

1 лайк

В старых версиях так и было. Но потом поведение, о котором пишут в этой теме, было добавлено как одна из фишек :smiley:

Проблема в болванчиках сидящих в баг-трекере. Уж сколько раз тыкали, а всё одно по одному. Формальный подход без интереса приводит к тому что вместо того чтобы пользователи ПОМОГАЛИ выявлять баги разработчикам, получается кривое зеркало, где пользователи должны ДОКАЗАТЬ существование проблемы людям, не заинтересованным в выявлении. Уж сколько раз было что разработчики и в код тыкали и показывали что и на что исправить, а тема уходила в “Не воспроизводится”, потому что неквалифицированный сотрудник техподдержки не может понять написанного.

Все знают о проблеме, все выхватывали косяки, об этом писалось в баг-трекере, больше года назад… а воз и ныне там. Мне видится что в такой ситуации требуется менять ответственного за эту задачу сотрудника и, скорее всего и, его руководителя.

1 лайк

Вот тут нужно осторожно. Суть в том. Что покупатель может перейти к онлайн оплате (тут нужен order_id, это важно!). Он попадает на страницу шлюза. Тут он или потерял карту, или испугался формы, или вспомнил что лимиты меньше суммы заказа… закрывает вкладку и хочет выбрать другой способ оплаты.
Если по факту заказ уже оформлен, ему нужно додуматься добраться до личного кабинета и повторно оплатить заказ другим способом, если он найдёт это и если для его статуса это будет доступно.

В общем, можно исправляя одну ошибку, сделать другую. Важно понять каким должен быть алгоритм. Я, навскидку, тоже пока не вижу правильного решения, которое учтёт все возможные варианты на 100%

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

А еще не забыть(как в текущей версии модуля Сбербанк) - нельзя наобум генерировать id заказа и передавать в Сбербанк(или любую другую платежную систему) т.к. в случае незавершения операции позже не к чему даже обратиться чтобы проверить статус оплаты - там номер операции с рандомным постфиксом… Всегда должен сохраняться способ обратиться повторно по возможно уже переданному заказу, чтобы актуализировать его состояние. Стандартный модуль Сбербанка ведет себя неправильно - если заказ оплатили и после закрыли страницу эквайринга, CS-Cart уже никак не может актуализировать статус заказа, даже с доработками - нет ни номера заказа, ни id транзакции.

имхо, проблема решается в 1 строчу: перед оформлением заказа проверить оплачен он уже или нет.

Когда заказ оформлен то у менеджера куча возможностей довести сделку до конца - контакты есть и есть 100% готовность клиента приобрести товар (он оформил заказ). А магазин может помочь, например если еще не оплачен то отправить не простое письмо (спасибо за заказ), а с инструкцией как оплатить и что делать если не получилось. Но пока заказ не оформлен менеджер не знает готов ли клиент приобрести товар. А звонить всем кто просто набирает корзину… кому такое понравится? ))
Купить в 1 клик так и работает - оставьте краткую заявку и мы поможем все оформить. Полное оформление заказа это тоже 1 клик только больше полей в форме и доп возможности, которые не должны негативно влиять на завершение оформления заявки (заказа).

Смотрите выше, механизмы оплат вступают в дело только после создания заказа, так как для оплаты нужен номер заказа.

Баг есть, это факт. Хотелось бы увидеть решение которое решит обе проблемы, а не вернет старую)

1 лайк

Даже ситуация когда покупатель ушел на страницу оплаты и не смог оплатить. У менеджера в заказе это нигде не отображается. Для него это обычная брошенная корзина. Да, есть там контакт, но когда звонить? На след день уже поздно, а сегодня еще не понятно определился покупатель или нет.

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

Имеется ввиду, что когда клиент по ошибке хочет повторно оплатить заказ, когда его только что оплатил и в БД уже есть об этом информация, то можно просто это проверить и проблемы не будет.

Проверьте статус заказа который устанавливается при успешной оплате (настройка статуса заказа при онлайн оплате делается в настройках способа оплаты на вкладке Настройка). В настройках этого статуса (Администрирование → Статусы → Статусы заказов) должно быть выбрано Расчет кол-ва товара в наличии: Уменьшение

Например если Вы создали свой статус заказа с “Расчет кол-ва товара в наличии: Увеличение” и установили его как статус при успешном ответе об оплате от платежной системы то при следующем заказе он перепишет предыдущий. Ставьте “Расчет кол-ва товара в наличии: Уменьшение”

Заказ не считается оплаченным (оформленным) если не уменьшать кол-во товара в остатке

с этим проблем нет, большинство заказов оплачиваются нормально

Например перешел на страницу оплаты, оплатил и закрыл вкладку браузера. На сайте его заказ неоформленный. Чтобы заказ оформился нужно изменить статус у которого расчет кол-ва уменьшение. В данном случае статус измениться при ответе от платежной системы. Нужно проверить чтобы у статусов которые назначаются в ответе от платежной системы было расчет кол-во уменьшение. Например ответ успешной оплаты поставит заказ в статус “оплачен”, а у этого статуса стоит расчет-кол-ва увеличение и заказ так и останется в корзине покупателя. Он новую корзину наберет и при оформлении перепишет уже существующий.

Моя тема, последний абзац

Добрый день.

Поделитесь, пожалуйста, направлением костылей :slight_smile:

image

У нас в редких случаях происходит следующее: покупатель выбирает оплату по qr-коду (модульбанк), ему что-то не нравится, он возвращается на страницу оплаты и выбирает оплату через эквайринг от тинькофф. Попутно он еще может изменить количество товара в корзине.

Предыдущий заказ удаляется, новый создается с таким же номером, скрин из админки прикрепил.

С этим можно было бы жить, но незавершенные заказы падают в црм с одним составом, а потом после такого финта состав заказа может измениться.

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

Это давно уже было, делали примерно как вы написали клиенту, тоже крайне редко возникало и тоже потом были проблемы при сборке заказов.