Open XOlegator opened 7 years ago
Олег, спасибо большое за эту интеграцию, работает отлично. У меня только вопрос по оплате заказа, как её передавать в retailcrm из simpa? У меня подключен эквайринг и после оплаты юзер попадает на страницу order со статусом "заказ оплачен", но при этом ничего не передаётся в retailcrm. Есть ли в вашей интеграции передача таких данных или это отдельно пилить надо?
Т.к. в симпле нет ничего похожего на события, чтобы можно было бы подключиться и добавить какую-то свою обработку, приходится добавлять функции-обработчики в разных местах кода. Передача оплаты в текущей интеграции передаётся в RetailCRM в том же месте, где и симпла "понимает", что заказ оплачен. В стандартном виде - это скрипт /view/OrderView.php и /api/Orders.php в двух местах. В вашем случае может иметь место какая-то кастомная обработка платежа (но всё равно же симпла узнаёт, что заказ оплачен). Нужно найти это место и добавить туда такой же обработчик для RatailCRM, как для /api/Orders.php:
if ($arOrderData = $this->retail->getOrderRetailData($order_id)) {
$this->retail->request('ordersEdit', $arOrderData);
}
Олег, огромный респект за проделанную работу! Разрешите вопрос. В пункте 3 "Установка общих зависимостей" можно поподробнее как установить официальный клиент для работы с API RetailCRM НЕ через composer.
Я прикрепял архив с библиотекой RetailCRM к релизу своей интеграции (уже два релиза есть - в обоих есть архив с нужной версией библиотеки)
Здравствуйте Олег! Пытаюсь подключить вашу интеграционную систему. Не работает.
Warning: require_once(../../vendor/autoload.php): failed to open stream: No such file or directory in /home/host1575118/hamakids.ru/htdocs/www/simpla/ajax/export_orders_retailCRM.php on line 7
Fatal error: require_once(): Failed opening required '../../vendor/autoload.php' (include_path='.:/usr/local/php/php-5.4/lib/php') in /home/host1575118/hamakids.ru/htdocs/www/simpla/ajax/export_orders_retailCRM.php on line 7
Смотрю где ошибка. В файле export_orders_retailCRM.php, вижу
//Подключим зависимые библиотеки (API RetailCRM) require_once '../../vendor/autoload.php';
Ни где в инструкции не увидел откуда в папке vendor берется файл autoload.php
Я что-то пропустил ? Или инструкция не полная ?
Снимаю свой вопрос, нужно было устанавливать retailcrm с помощью composer
Всем привет, как установить retailcrmApi через composer?
Инструкция по установке библиотеки RetailCRM - https://github.com/retailcrm/api-client-php#install Чтобы это можно было сделать, нужен доступ к консоли сервера (SSH-доступ). Если это простой хостинг, то так не выйдет. Остаётся вариант проделать это где-то ещё, а потом загрузить на хостинг, либо можно скачать архив vendor.zip тут https://github.com/XOlegator/simpla-test/releases - но тут не будет каких-то последних обновлений (хотя они и не потребуются для моей интеграции)
Не хватает выгрузки товаров из ритейла на сайт.
В RetailCRM с товарами можно работать двумя способами: 1) вести каталог прямо в RetailCRM. В этом случае доступно редактирование каталога, но нет импорта товаров из внешнего источника 2) использовать импорт из внешнего источника (через файлик ICML). В этом случае заблокировано ручное изменение товаров в RetailCRM.
Текущая интеграция работает только по второму из этих сценариев. Подразумевается, что каталог ведётся в интернет-магазине и присылается в RetailCRM уже в готовом виде. Пока в планах нет сделать работу по первому сценарию.
Добрый день. Подскажите, а где используется метод getPaymentRetailData() из Retail.php?
Добрый день. Подскажите, а где используется метод getPaymentRetailData() из Retail.php?
Похоже, это я в отладке использовал. Такого вида:
$orderId = 2;
$retail = new Retail(5);
if ($arOrderData = $retail->getOrderRetailData($orderId)) {
echo '<pre>Данные по заказу, собранные собственным методом: ';
print_r($arOrderData);
echo '</pre>';
$payment = Retail::getPaymentRetailData($orderId);
echo '<pre>Данные по оплате, собранные собственным методом: ';
print_r($payment);
echo '</pre>';
}
Сюда можно размещать комментарии к проекту