OC v3.х Тбанк стоковый модуль оплаты от самого банка

Astronaut

Разрушитель (V)
Сообщения
391
Реакции
161
Баллы
980
Господа товарищи, помогите кто может
Скачал модуль Тбанк с их сайта Опенкарт 3
Поставил
настройки подключения сделал
оплата проходит, заказ создается. все отлично
НО при попытке подключить "Передача данных для чека" и дальнейшем оформлении заказа, на оплату не переходит и возникает ошибка
Fatal error: Uncaught Error: Cannot access private property Cart\Cart::$session in *******/catalog/model/extension/payment/tbank.php:107

на этой строке
$session = $this->cart->session->data;

обратился в поддержку, отправили к разработчику сайта и что бы он чинил))
нашел в интернете страницу
forum.opencart-russia.ru

внес правки в 4 местах, как там написано
Теперь с "передачей данных для чека" происходит переход к оплате и сама оплата

НО не создается сам заказ в админке и нет уведомления в письме админу ни о заказе ни об оплате
только клиенту приходит что оплата прошла. Самого заказа тоже нет

поддержка написала после этого только это
Изображение WhatsApp 2025-08-20 в 18.17.48_7e0596ff.jpg

судя по всему помощи оттуда ждать не приходится.

зы сборка Даниэля 3.0.3.9 , но суть тут конечно не в релизе. на 3.0.3.7 будет думаю тоже самое. Либо и правда есть какие то серьезные отличия, но я 3.0.3.9 вижу первый раз в жизни и что там разного я не знаю
 
Тему удалять не буду, мало ли кто искать будет подобное
Не создавался заказ в тестовом режиме и тестовой картой
В рабочем режиме вроде все ок
И письма админу приходят два подряд о создании заказа и потом смене статуса на оплачен

зы только не приходит письмо о заказе покупателю и оплате

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

модуль отдельно
https://mega.nz/file/Ok9j0arA#j_M88wXBmX-lWw1jhTwffa2sO7Gg8tleVBXu3Abg0wI

и на всякий случай, изменения для 3.0.3.9 /catalog/model/extension/payment/tbank.php

Замены по порядку строк, что искать и заменять:

1.
$session = $this->cart->session->data;
на
$session = $this->session->data;

2.
$price = round($this->cart->tax->calculate($product['price'], $product['tax_class_id'], true) * 100);
на
$price = round($this->tax->calculate($product['price'], $product['tax_class_id'], true) * 100);

3.
$price = round($this->cart->tax->calculate($session['shipping_method']['cost'], $session['shipping_method']['tax_class_id'], true) * 100);
на
$price = round($this->tax->calculate($session['shipping_method']['cost'], $session['shipping_method']['tax_class_id'], true) * 100);

4.
return isset($this->cart->session->data['shipping_method']['cost']) &&
$this->cart->session->data['shipping_method']['cost'];
на
return isset($this->session->data['shipping_method']['cost']) &&
$this->session->data['shipping_method']['cost'];
 
Назад
Верх