Как отменить заказ, когда тайм-аут страницы платежного шлюза в magento
Я интегрировал сторонний платежный шлюз в magento. Он отлично обрабатывает успешную транзакцию или неудачную транзакцию.
Но что, если, когда пользователь находится на странице платежного шлюза и когда он истекает или когда на странице платежного шлюза пользователь закрывает страницу и позже возвращается на сайт, или пользователь просто нажимает кнопку возврата,
- как мне отменить заказ тогда?
- Должен ли я использовать какой-то наблюдатель, чтобы сделать это?
- Если да, то можете ли вы подсказать, к каким событиям мне нужно уволить наблюдателя?
Проблема, с которой я сталкиваюсь, заключается в том, что когда пользователь перенаправляется на платежный шлюз и нажимает кнопку "Назад" и возвращается на сайт, заказ все еще создается, который в идеале должен был быть отменен.
Благодарю.
1 ответ
Ваши методы проверки не должны учитывать сессию и должны обрабатывать любые отзывы (и проверять перед обработкой) в любом случае. Вам также нужна служба мониторинга, которая через некоторое время блокирует заказы без ответа, если вы хотите, чтобы они были своевременно отключены.
Однако, если пользователь нажимает кнопку "Назад", вы ничего не можете поделать, так как обратная связь с платежным шлюзом никогда не будет отправлена на действия пользователя. Я знаю, что некоторые платежные шлюзы выдают автоматические сообщения с сервера независимо от того, что вы должны исследовать, возможно ли это также с вашим платежным шлюзом.