Я разрабатываю модуль платежного шлюза для версий prestashop 1.6.x - 1.7.x, и этот модуль iFrame. Я имею в виду, когда клиент выбирает этот метод оплаты, он перенаправляется на страницу iframe в prestashop (не перенаправляется на другую веб-страницу). Но я должен создать заказ до оплаты на этой странице. Если я создаю заказ после совершения платежа на странице подтверждение заказа (на эту страницу автоматически перенаправляется в 5 se c после выполнения платежа iframe), возможно, это неправильный способ Этот способ. Возможно, клиент покинул страницу iframe за эти 5 секунд. Итак, заказ не создан.
Когда я использую функцию validateOrder для создания заказа, он отправляет электронное письмо клиенту до того, как оплата будет произведена. Итак, я сделал некоторые изменения в этой функции, и она работает нормально. Но если эта страница обновляется, то заказ создается снова и снова. Также функция validateOrder удаляет корзину. Я дублирую корзину из-за этого.
Надеюсь, здесь все хорошо. Вот мои проблемы:
Я не хочу показывать заказчикам дублированные заказы. Возможно, эти заказы могут быть обновлены как id_customer = 0. Но в этом случае клиенты не могут быть видны в таблице заказов BO, и я не знаю, является ли это законным.
Функция validateOrder несовместима со всеми этими версиями. Как я могу использовать это для всех версий без отправки электронной почты? На самом деле я хочу использовать основную функцию, но я думаю, что нет никакого способа.
Какова лучшая практика в этом сценарии? Каким образом я должен следовать?