- Работа как с api iikoTransport (iikoCloud), так и с iikoDelivery
- Полная синхронизация ресторанов, меню (как общего, так и внешних) с сайтом
- Синхронизация и поддержка модификаторов iiko, с выбором в при заказе и возможностью отключения ненужных (или внутренних модификаторов на стороне сайта), а также шкалы размеров блюд (только для api iikoTransport)
- Выгрузка заказов в систему iiko
- При использовании с готовым решением РЕСТРИО сайт ресторана, достаточно только настроить модуль, интеграция верстки не потребуется
- Поддержка сети ресторанов с индивидуальным меню для каждого ресторана (на одном аккаунте api, для использования нескольких аккаунтов необходимо приобрести модуль расширения "Сеть ресторанов iiko")
- Специально разработанный с учетом потребностей ресторанов компонент оформления заказа (включает корзину)
- Возможность настроить оплату заказа любым способом (эквайринг, другое) с использованием любого совместимого с битрикс обработчика платежей
- Cинхронизация зон доставки с автоматизированным выбором адреса в процедуре заказа и, при необходимости, автоматический расчет стоимости доставки на основе данных api на выбранный адрес
- Синхронизация точек самовывоза (терминалов доставки) и возможность выбора точки при заказе
- Возможность задавать скидки в системе битрикс с возможностью их выгрузки в заказ iiko как в виде скидки с произвольной суммой, так и в виде отдельного платежа в бонусной валюте
- Возможность использования бонусной системы iikoCard, а также скидок, заведенных в системе iiko при наличии модуля расширения "iikoCard и синхронизация скидок iiko"
- Удобные для кастомизации в современный дизайн bootstrap 4+ шаблоны компонентов
- Возможность синхронизации статусов заказов из iiko
- Подробное логирование всех действий, ошибок синхронизации и др. в журнал событий
- Программистам: документированный api
Модуль расширения "Сеть ресторанов iiko"
Модуль расширения "iikoCard и синхронизация скидок iiko"
Сайт | Моя страница в соцсети битрикс
Установите модуль стандартными средствами 1С-Битрикс.
2. Учетные данные iiko api
Перейдите в настройки модуля: Настройки > Настройки модулей > Интеграция с iiko. На вкладке «Авторизация» заполните поля «Используемый api», «Логин api», «пароль api (только для iikoDelivery)». Нажмите кнопку «Сохранить». Если учетные данные iiko api введены верно, после сохранения появятся остальные вкладки, в противном случае будет выдано сообщение об ошибке.
Для получение учетных данных api, обратитесь к обслуживающей организации.
5. Создание свойств заказа, служб доставки и платежных системПерейдите в администратвной части Настройки > Настройки продукта > Список мастеров и запустите мастер «Настройка магазина для модуля «Интеграция с iiko» (grain:iiko.saleprops.create), при этом выберите существующий тип плательщика (используйте этот вариант, если вы уже запускали мастер, а, сейчас например, создаете новый сайт в системе) либо создайте новый (рекомендуется при первой настройке). При создании нового типа плательщика, также будут созданы (при соответствующих установленных опциях, которые установлены по умолчанию) службы доставки и платежные системы.
При создании свойств заказа, их символьные коды будут автоматически прописаны в настройках модуля на вкладке «Интернет-магазин». Не рекомендуется создавать собственные свойства заказа, или, например, оставлять свойства заказа от демо-магазина 1С-Битрикс или другого решения, т.к. их перечень и типы могут не соответствовать необходимым полям для отправки заказа в iiko. Кроме того, указание символьных кодов свойств заказа в настройках модуля является обязательным, а мастер делает это автоматически.
Перейдите в административной части Контент > Инфоблоки и создайте следующие инфоблоки (а при необходимости также типы инфоблоков) для:
- Инфоблок для хранения ресторанов. Данный инфоблок может быть системным, особенно если ресторан только один и его данные могут не выводится в публичной части, но они необходимы для синхронизации меню.
- Инфоблок(и) для хранения меню для каждого ресторана. Настройте права доступа и автоматическое создание картинки анонса из детальной картинки.
Необходимые свойства инфоблоков будут созданы автоматически после настройки синхронизации.
5. Настройка синхронизацииВнимание: для нормальной работы синхронизации настоятельно рекомендуется перевести агенты битрикс на crontab. В противном случае возможны небольшие периодические подвисания сайта в процессе эксплуатации.
Перейдите в настройки модуля: Настройки > Настройки модулей > Интеграция с iiko и выполните следующие действия:
- На вкладке «Синхронизация ресторанов» выберите созданный инфоблок для хранения ресторанов. Нажмите кнопку «Сохранить». После обновления страницы, заново перейдите на вкладку «Синхронизация ресторанов» и в блоке синхронизации нажмите «Запланировать сейчас». Дождитесь выполнения синхронизации и обновите страницу (если агенты выполняются не на crontab, а на хитах, необходимо обновить страницу сразу же после запланированной синхронизации).
- На вкладке «Синхронизация блюд» выберите созданный(е) инфоблок(и) для хранения меню и тип(ы) цен (а при необходимости создайте тип(ы) цен на странице административной части Магазин > Настройки > Цены > Типы цен). Нажмите кнопку «Сохранить». После обновления страницы, заново перейдите на вкладку «Синхронизация блюд» и в блоке синхронизации нажмите «Запланировать сейчас». Дождитесь выполнения синхронизации и обновите страницу.
- Перейдите на вкладку «Синхронизация адресов» и при необходимости запланируйте синхронизацию.
Перейдите в настройки модуля: Настройки > Настройки модулей > Интеграция с iiko. На вкладке «Интернет-магазин» выполните следующие действия:
- Установите галочку «Отправлять заказы в iiko».
- Выберите тип плательщика.
- Выберите платежные системы для онлайн оплаты. При выборе данных платежных систем при заказе, заказ будет отправляться в iiko только после совершения оплаты.
- Выберите платежные системы (типы оплат) iiko, используемые для для оплаты на месте и для онлайн оплаты (а при их отсутствии запросите их создание у обслуживающей организации). Тип оплат должен иметь возможность выгрузки как уже совершенный.
- Выберите службы доставки битрикс, используемые для доставки и самовывоза
- Если вы планируете задавать скидки в системе 1С-Битрикс, настройте выгрузки скидок в iiko одним из двух способов: как скидку со свободной суммой или как совершенный платеж в заранее созданной платежной системе в iiko (для создания такой платежной системы или скидки со свободной суммой в системе iiko, обратитесь к обслуживающей организации)
Перейдите в публичную часть сайта и создайте необходимые страницы и разместите компоненты. Все компоненты модуля находятся в дереве компонентов визуального редактора в разделе «Интеграция с iiko». Если данный раздел не появился, нажмите Компоненты > Обновить в над деревом компонентов. Для функционирования модуля необходимы 2 страницы:
- Создайте страницу для размещения меню и разместите на ней компонент «Список блюд» («grain:iiko.section»). Выберите инфоблок с блюдами. В параметре «Количество элементов на странице» укажите значение 1000. Данный компонент отнаследован от стандартного компонента «Элементы раздела» («bitrix:catalog.section») и имеет аналогичные настройки.
- Создайте страницу оформления заказа и разместите на ней компонент «Оформление заказа» («grain:iiko.order»). В параметрах компонента укажите путь к странице оплаты - странице с размещенным компонентом «Подключение платежной системы» («bitrix:sale.order.payment»).
Если в вашем шаблоне сайта отсутствует библиотека bootstrap не менее 4 версии, необходимо в параметрах компонентов установить галочку «Подключить библиотеку bootstrap (из ядра системы)»
8. Настройка синхронизации статусов заказов
Если вы хотите настроить обратную синхронизацию статусов заказов из iiko, выполните следующие действия:
- Перейдите в административной части 1С-Битрикс Магазин > Настройки > Статусы и создайте статусы заказа, соответствующие статусам в iiko: Unconfirmed, WaitCooking, ReadyForCooking, CookingStarted, CookingCompleted, Waiting, OnWay, Delivered, ClosedCancelled, Cancelled
- Перейдите в настройках модуля на вкладку «Интернет-магазин» и в блоке «Синхронизация статусов» нажмите кнопку «Установить вебхук» (при этом если в блоке отображается другой установленный вебхук, предварительно убедитесь, что он не нужен, т.к. после нажатия кнопки он будет удален), после чего установите соответствие созданных статусов статусам в iiko
Произведите тестирование настроенной системы. Логи синхронизаций и отправки заказов находятся в разделе административной части Настройки > Инструменты > Журнал событий.
На время тестирования можно заблокировать отправку заказов в iiko, для этого установите константу (например, в файле /bitrix/php_interface/init.php):
define("GRAIN_IIKO_DO_NOT_POST_ORDERS",true); |
Для запрета отправки заказов только для текущего сеанса, можно установить следующую переменную (например, через раздел административной части Настройки > Инструменты > Командная PHP-строка):
$_SESSION["grain_iiko_do_not_post_orders"] = true; |
Справка по решению | Контакты
Справка: https://g-rain-design.ru/components/iiko/help/
Описание функций: https://g-rain-design.ru/components/iiko/api/
Готовые сниппеты: https://estrin.pw/bitrix-d7-snippets/iiko/
Форум по модулю: https://g-rain-design.ru/forum/forum24/
Сайт: https://g-rain-design.ru
Моя страница в соцсети битрикс: https://dev.1c-bitrix.ru/community/webdev/user/27542/