Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

После онлайн - оплаты не передается транзакция

Для того чтобы сработал модуль при онлайн-оплате нужно чтобы:

После оплаты пользователь должен возвращаться на страницу checkout/success и в сессии должен быть order_id

 

Некоторые модули оплаты шлют коллбек, меняют статус заказа и на странице success уже нет этого параметра в сессии

 

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

 

Как решить:

убедиться что в контроллере оплаты нет подобных вещей

unset($this->session->data['order_id']);

 

в контроллере оплаты перед редиректом на checkout/success установить принудительно в сессию номер заказа

выглядит он примерно так

image.thumb.png.746c8d6d0ee0d7970c4d159aa6b2c848.png

 

установить номер заказа пришедший из системы оплаты примерно так

 

$this->session->data['order_id'] = $order_id; 

 

чтобы получилось так ($order_id заменить на переменную с н заказа)

$this->session->data['order_id'] = $order_id; 

$this->response->redirect($this->url->link('checkout/success', '', 'SSL'));

 

Это не касается серверных отправок аналитики, фб и тп, они работают с изменением статуса заказа в модели

 


Comments

Немає коментарів для відображення

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.