Модули для интернет-магазинов

Подключение магазина на Shop-Script к ILFF

Смотрите также: Виджет доставки для корзины · API ILFF · Все модули для CMS

Скачать модуль ilff-shopscript.zip

Плагины ILFF связывают ваш магазин на Shop-Script (Webasyst) с сервисом ILFF:

  • в оформлении заказа появляются способы доставки ILFF: курьером до двери и в пункт выдачи, с ценой и сроком; пункт выдачи покупатель выбирает на карте;
  • заказ с доставкой ILFF сам уходит в ILFF, когда получает выбранный вами статус;
  • трек-номер и статус заказа возвращаются в магазин;
  • остатки товаров передаются из ILFF в магазин;
  • отмена (удаление) заказа в магазине отменяет заявку в ILFF.

Обмен всегда начинает магазин: плагины сами обращаются к сервису ILFF по ключу API, открывать магазин для нас не нужно.

В архиве два плагина:

  • плагин магазина «ILFF: фулфилмент и доставка» — ключ API, отправка и отмена заказов, трек и статусы, остатки, список товаров, кнопка выбора пункта выдачи на карте;
  • плагин доставки «ILFF» — способы доставки «Курьером до двери» и «Пункт выдачи» в оформлении заказа.

Нужны Shop-Script 8 или новее с оформлением заказа в один шаг (версия 2), PHP 7.4 или новее с расширением curl, доступ к файлам сайта (FTP или панель хостинга), права администратора магазина, доступ к серверу для настройки cron и доступ к личному кабинету ILFF. Подключение занимает 20–30 минут.

Шаг 1. Подключение в личном кабинете ILFF

Личный кабинет → вкладка Интеграции → раскройте блок Интернет-магазин.

  1. Платформа — выберите Shop-Script.
  2. Адрес магазина — адрес сайта, например shop.ru.
  3. Флажок Заказ с несвязанным товаром ждёт привязки: если он включён, заказ с товаром, который ещё не связан с вашим товаром в ILFF, не принимается, пока вы его не свяжете (шаг 6). Рекомендуем оставить флажок включённым.
  4. Нажмите Подключить. Кабинет создаст подключение. К магазину он при этом не обращается: связь проверит плагин на шаге 3.

Вверху вкладки Интеграции показан Ключ API. Если его нет, нажмите Сгенерировать. Ключ понадобится на шаге 3. Никому его не пересылайте: по нему сервис ILFF узнаёт ваш магазин. Там же — код клиента для виджета; добавьте домен магазина в список доменов виджета.

Шаг 2. Установка плагинов

  1. Скачайте архив ilff-shopscript.zip со страницы модуля на сайте ILFF или получите его у менеджера.
  2. Распакуйте архив в корень сайта (каталог, где лежат index.php и папки wa-apps, wa-plugins). Появятся каталоги wa-apps/shop/plugins/ilff и wa-plugins/shipping/ilff.
  3. Включите плагин магазина: откройте файл wa-config/apps/shop/plugins.php и добавьте перед последней строкой ); строку

'ilff' => true,

  1. Сбросьте кэш: в бэкенде Webasyst Настройки → Очистить кэш или удалите содержимое каталога wa-cache.
  2. Откройте Магазин → Плагины: в списке появится ILFF: фулфилмент и доставка. При первом открытии плагин создаст свои таблицы (очередь заказов).
  3. Добавьте способ доставки: Магазин → Настройки → Доставка → Добавить способ доставки → ILFF. Включите его и сохраните. Названия вариантов («Курьером до двери», «Пункт выдачи», «Почта России») можно поменять в его настройках. Там же флажок Почта России до отделения (по умолчанию включён): отдельный вариант «Почта» с ценой «от N ₽»; при его выборе виджет открывается на вкладке «Почта», покупатель выбирает отделение, и появляется точная цена и срок. Выключите флажок, если доставка Почтой России вам не нужна.

Шаг 3. Настройки плагина магазина

Магазин → Плагины → ILFF: фулфилмент и доставка.

  1. Ключ API ILFF — ключ из шага 1.
  2. Адрес сервиса ILFF — уже заполнен, менять не нужно.
  3. Подсказка городов ILFF (по умолчанию включена) — в поле «Город» оформления появляется свой список городов из справочника ILFF: сначала города выбранного региона, ниже — других регионов с подписью региона. Выбор города другого региона сам переключает регион в форме. Пока покупатель печатает, доставка не пересчитывается — только после выбора города из списка или ухода из поля.
  4. Код клиента ILFF для виджета — код из личного кабинета. Без кода кнопка выбора пункта выдачи на карте не показывается. Вариант настроек калькулятора — код варианта из личного кабинета ILFF, например site2, если для этого сайта заведены свои настройки доставки. Пусто — настройки по умолчанию. Пороги бесплатной доставки («Бесплатно для получателя от суммы товаров») задаются в личном кабинете ILFF, когда сумма товаров дошла до порога, модуль показывает доставку как «Бесплатно».
  5. Адрес подсказки городов — необязательно. Пусто — берётся с сервиса ILFF рядом с адресом сервиса.
  6. Отправлять заказ в ILFF в статусе — по умолчанию «Подтверждён» (processing). Заказ уходит при переходе в этот статус. Если вы проверяете заказ или ждёте оплату, выберите статус, в который переводите заказ после проверки.
  7. Отменять заявку ILFF в статусах — по умолчанию «Удалён» и «Возврат». Переход в такой статус отменяет заявку в ILFF.
  8. Действия по статусам ILFF. Значение «не менять статус» оставляет заказ как есть:
НастройкаСтатусы ILFFПо умолчанию
Передан в службу доставки → действиеПередан в КСОтправлен
Доставлен или выдан → действиеДоставлен клиенту, Выдан, Частичная выдачаВыполнен
Отменён в ILFF → действиеОтменен, Аннулированне менять
Возврат или отказ → действиеВозврат принят, Полный отказне менять

Действие выполняется, только если оно доступно в текущем статусе заказа.

  1. Оплата при получении (плагины оплаты) — идентификаторы плагинов оплаты через запятую, по умолчанию cash. Наложенный платёж в заявке будет только у этих способов, остальные заказы считаются предоплаченными.
  2. Загружать остатки из ILFF — в количество артикулов записываются свободные остатки: остаток на складе ILFF за вычетом резерва и заказов, которые ещё не дошли до ILFF. Склад магазина для остатков — если у вас несколько складов, выберите склад, куда записывать остаток ILFF.
  3. Нажмите Сохранить. Плагин сразу проверит связь с ILFF: при ошибке вверху появится «Настройки сохранены, но связи с ILFF нет: …».

Шаг 4. Оформление заказа и оплата

  1. Оформление заказа должно быть в один шаг (Магазин → Витрина → Оформление заказа, версия 2). Шаг «Доставка» включён, в нём — способ ILFF.
  2. Для расчёта нужен адрес: регион и город. Для курьера ещё улица с домом.
  3. Курьером до двери показывается с ценой и сроком самого дешёвого тарифа (в том числе курьера Почты России «онлайн», если он дешевле). Если улицы нет в справочнике адресов (сёла, новые улицы), цена курьера считается по городу, а адрес уходит в заказ как введён. Первый расчёт по новому городу может занять 10–15 секунд, повторные — 1–2 секунды.
  4. Самовывоз виден сразу с ценой «от N ₽» и сроком по самому дешёвому пункту города. При выборе этой плитки открывается виджет ILFF с картой, списком пунктов и службами (закрыли — под плиткой остаётся кнопка Выбрать пункт выдачи на карте). После выбора пункта шаг доставки обновится: «Пункт выдачи: адрес» с точной ценой и сроком, кнопка Изменить пункт выдачи позволяет выбрать другой. Пока пункт не выбран, оформление дальше не пропускает. При смене города выбранный пункт сбрасывается. У курьерской доставки кнопки выбора пункта нет. Если в городе покупателя нет пунктов выдачи или отделений Почты, вариант называется «…: выберите ближайший на карте»: карта открывается в точке адреса, показываются пункты соседних городов с расстоянием, при сдвиге и масштабе карты подгружаются новые; цена считается до выбранного пункта.
  5. Способ оплаты при получении (например, «Наличными при получении», плагин cash) должен быть доступен для доставки ILFF: Магазин → Настройки → Оплата → настройки способа → доставки, для которых он доступен. Если шаг «Оплата» в оформлении выключен, включите его в настройках оформления.
  6. Отключите способы доставки с фиксированной ценой, если доставку выполняет ILFF.
  7. Оформите пробный заказ с доставкой ILFF, переведите его в статус отправки и убедитесь, что заказ пришёл в ILFF: в истории заказа появится «ILFF: создана заявка …».

Шаг 5. Cron

Задание плагина нужно запускать системным cron сервера раз в 5–10 минут:

php /путь/к/сайту/cli.php shop ilffPluginCron

Задание:

  • досылает заказы, которые не ушли сразу (после сбоя связи или из ожидания привязки): через 1, 5, 15, 60 и 180 минут, но не чаще запуска задания;
  • забирает трек-номера и статусы: трек записывается в поле «Трек-номер» заказа и в историю, статус меняется действием из шага 3;
  • обновляет остатки;
  • раз в сутки передаёт в ILFF список товаров и сверяет все остатки.

Без cron трек-номера, статусы и остатки обновляться не будут. Заказы уходят в ILFF сразу при смене статуса и без cron.

Шаг 6. Привязка товаров

В личном кабинете ILFF кнопка Товары магазина в блоке «Интернет-магазин» показывает товары магазина, переданные плагином, и их связь с вашими товарами в ILFF. Каждый артикул (SKU) Shop-Script — отдельный товар. Связь подбирается сначала по штрихкоду, затем по коду артикула.

Своего поля штрихкода у Shop-Script нет: заведите характеристику товара с кодом barcode (или ean, gtin) типа «Строка» и заполните её у товаров или артикулов.

СтатусЧто делать
СвязанНичего, связь сохранена
ПодобранПроверьте и подтвердите
Несколько совпаденийВыберите нужный товар вручную
Не найденВыберите товар вручную или заполните в магазине штрихкод или код артикула

Если заказ ждёт привязки, вверху вкладки Интеграции появляется плашка с числом таких заказов, а в блоке «Интернет-магазин» — таблица с заказами и товарами. После привязки плагин досылает заказ сам.

Отмена заказа

Переход заказа в статус отмены (шаг 3) отменяет заявку в ILFF, пока её не передали в службу доставки; собранный заказ вернётся на хранение. Если заявка уже у службы доставки, которая принимает отмену (Dalli, 5Post), отмена передаётся ей, а заказ возвращается на склад. У других служб заявка в работе сама не отменяется: в истории заказа появится запись «ILFF: Заявка уже в работе…», свяжитесь с менеджером.

Обновление плагинов

  1. Скачайте новый архив ilff-shopscript.zip с этой страницы.
  2. Распакуйте его в корень сайта поверх старых файлов (каталоги wa-apps/shop/plugins/ilff и wa-plugins/shipping/ilff). Настройки плагинов и способа доставки сохраняются.
  3. Сбросьте кэш (Настройки → Очистить кэш).

Если что-то не работает

Сообщение или симптомПричина и решение
«Связи с ILFF нет: Неверный ключ API»Ключ введён с ошибкой или заменён. Скопируйте ключ из личного кабинета и сохраните настройки
«Связи с ILFF нет: В личном кабинете ILFF не подключён магазин Shop-Script»Не выполнен шаг 1: выберите платформу Shop-Script и нажмите «Подключить»
«Связи с ILFF нет: Сервис ILFF не ответил»Сервер магазина не может обратиться к ILFF: проверьте исходящие соединения по HTTPS на порт 8443 и расширение curl в PHP
Плагина нет в «Магазин → Плагины»Не добавлена строка 'ilff' => true, в wa-config/apps/shop/plugins.php или не сброшен кэш
В оформлении нет способа доставки ILFFСпособ не добавлен или выключен (шаг 2), не заполнены регион и город, или плагин магазина без ключа API
«Нет тарифов» или пропадает «Курьер» после выбора пунктаПроверьте, что регион в форме совпадает с городом (выберите город из подсказки — регион переключится сам). Если сервис ILFF отвечает медленно, повторите выбор через минуту
Нет кнопки «Выбрать пункт выдачи на карте»Не указан код клиента для виджета (шаг 3) или способ доставки ILFF выключен
Виджет пишет, что пункты недоступныДомен магазина не добавлен в список доменов виджета в личном кабинете
Доставка везде «Бесплатно»Стоимость доставки обнуляет скидка или плагин магазина (например, правило «бесплатная доставка»). Проверьте правила скидок и плагины
Нет способа оплаты при полученииСпособ оплаты недоступен для доставки ILFF или шаг «Оплата» выключен (шаг 4)
Заказ не пришёл в ILFFПроверьте статус заказа и настройку «Отправлять заказ в ILFF в статусе», блок «ждут привязки» в кабинете. Заказ должен быть с доставкой ILFF
Трек-номер и статус не приходятНе настроен cron (шаг 5)
Остаток в магазине не совпадает с остатком в кабинетеВ магазин уходит свободный остаток: без резерва, неотправленных заказов и товара в приёмке

WeChat

QR-код WeChat

Отсканируйте QR-код в WeChat · 用微信扫码添加

Перезвоним за пару минут

В рабочее время позвоним сразу, в другое время перезвоним утром. Пн–пт с 11:00 до 20:00.