Версия opencart-3.0.3.9-rs с этого сайта. Установлен шаблон Unishop 2. Интернет эквайринг банка Тинькофф. Облачная касса cloudkassir. Платежный модуль отсюда https://www.tinkoff.ru/kassa/dev/cms/opencart/3_0/ Данные тестового терминала прописаны. При нажатии на кнопку "Оформить заказ" - получаю такое всплывающее окно В консоли висит такая ошибка В журнале ошибок такая запись PHP Warning: require_once(/....../site.ru/catalog/model/extension/payment/TBankMerchantAPI.php): failed to open stream: No such file or directory in /....../site.ru/catalog/model/extension/payment/tbank.php on line 64 Вроде понятно, что ругается на остутствие файла... Но как так то? Только недавно перевели Тинькофф в Т-Банк Посмотрел 64 строку... Там такое require_once __DIR__ . '/TBankMerchantAPI.php'; Посмотрел этот файл в директории, он оказывается tbankMerchantAPI.php.... Переименовал его в TBankMerchantAPI.php. Платежная форма стала открываться.... Это капец какой то... Поставил в настройках "Передавать данные для формирования чека" Теперь снова Internal server error в всплывающем окне две штуки... Может кто то сталкивался с подобным ребята? Есть какие то мысли или советы? Вроде Тинькоф такой нормальный банк для бизнеса.... а модуль какой то рукожопый.... Или купить платный модуль Тинькофф? Есть у кого то опыт работы с этим Т-Банк? На cs-cart замучился танцевать с бубнами... Но он версии Free, оно и понятно, что что то путное на нем вряд ли сделаешь. А с opencart вроде получше... платные модули можно и купить. Прошу извинить за сумбурность... немного просто подустал
Включи показ ошибок 500 на сайте: В файле index.php вставь после открывающего <?php PHP: ini_set('display_errors', 1);ini_set('display_startup_errors', 1);error_reporting(E_ALL); сохранись. попробуй сново оформить заказ, покажет уже ошибку подробнее. Вижу поставили, теперь вы видите вашу ошибку: PHP: Fatal error: Uncaught Error: Cannot access private property Cart\Cart::$session in /var/www/admin/data/www/bezumka.ru/catalog/model/extension/payment/tbank.php:105
В 105-й строке такой код $session = $this->cart->session->data; Не подскажете что не так с доступом к сессии? В кодинге к сожалению очень слаб.... особенно со стрелочками Получается что ошибка в платежном модуле...или как то сессии надо настроить по особенному.... Или забить и приобрести платный модуль? Или попросить разработчиков модуля исправить ошибку... Одни ИЛИ Капец какой то
забудьте вы про модуль от тиньков, не знаю кто его им писал, но написан такое впечатление тот кто писал опенкрт видел первый раз ))) там столько косяков что править и править, поставьте платный и будет счастье )
Сделайте замены по порядку строк, что искать и заменять: 105 PHP: $session = $this->cart->session->data; PHP: $session = $this->session->data; 109 PHP: $price = round($this->cart->tax->calculate($product['price'], $product['tax_class_id'], true) * 100); PHP: $price = round($this->tax->calculate($product['price'], $product['tax_class_id'], true) * 100); 130 PHP: $price = round($this->cart->tax->calculate($session['shipping_method']['cost'], $session['shipping_method']['tax_class_id'], true) * 100); PHP: $price = round($this->tax->calculate($session['shipping_method']['cost'], $session['shipping_method']['tax_class_id'], true) * 100); 154-155 PHP: return isset($this->cart->session->data['shipping_method']['cost']) && $this->cart->session->data['shipping_method']['cost']; PHP: return isset($this->session->data['shipping_method']['cost']) && $this->session->data['shipping_method']['cost']; Не проверял, если не работает, проще купить.
Спасибо большое ребята. Попробую конечно поменять в коде. Но скорее всего куплю платный нормальный модуль. Если есть конкретные модули - посоветуйте пожалуйста. Мне очень приятно, что нет игнора, и советуете поразбираться с существуюшим модулем от тинькофф, и есть возможность приобрести платный. Самое плохое - когда просишь помощи, а в ответ пустота или какие то никчемные советы. Здесь, в отличие от cs-csrt - реальные предложения решить проблему.
Здесь нюанс есть. От Тинькова модуль реально дохлый. Пытался даже решить через их тех поддержку. Бесполезно. С платными модулями, тоже увы не всё так радужно. Перебрали 3. Тот же эффект. Тинькофф менял данные для подключения, а многим из авторов лень или нет смысла учесть это в обновлениях. Как с тем же СДЭК. Рекомендую поискать модули от Ashap. Не так бюджетно выходит, но работает.
Сделал замены, все платежи с формированием чеков на тестовом терминале прошел без проблем. Наверное нужно как то согласовать эти изменения с поддержкой модуля тинькофф перед переходом на рабочий терминал. Tesloz - спасибо огромное!