Этот виджет встраивается в тело страницы сайта и запускается по клику на какой-то элемент. Выбор города реализован на стороне виджета. Отличается простой установкой и гибкими возможностями по настройке функционала. В том числе можно использовать разработчикам для встройки в корзины самописных сайтов: если в настройках включить отправку заказа и отключить форму оформления заказа, то при выборе варианта доставки через функцию обратного вызова (callback) данные по доставке будут возвращены на сайт для дальнейшего оформления заказа.
Виджет тянет вес и габариты с сайта. Для ручного ввода данных используйте виджет по параметрам.
Представлен макет карточки товара. Виджет запускается при переключении на вкладку «Доставка».
Купить кроссовки с доставкой
Цена: 6 500 рублей
Для расчёта стоимости и срока доставки перейдите на вкладку «Доставка»
Виджет реагирует на изменение количества товара в форме.
Описание товара
АМОРТИЗАЦИЯ
Подошва из ЭВА обладает хорошими амортизирующими свойствами и снижает нагрузку на позвоночник.
НАДЕЖНАЯ ФИКСАЦИЯ
Кроссовки удобно фиксируются на ноге при помощи шнуровки.
...
Вы можете подобрать наиболее удобный для вас вариант доставки и сразу оформить заказ с доставкой
Выберите в настройках используемые вами службы доставки, и они автоматически появятся в виджете.
Источником данных весо-габаритных характеристик может быть ваш сайт или настройки в нашем кабинете. В зависимости от ваших задач возможно передавать на расчет доставки как по логике один товар = одно грузоместо, так и вся корзина = одно грузоместо.
В настройках есть возможность разрешить/запретить оформление заказа. Если оформление включено, то заказ с выбранными параметрами доставки отправится вам на электронную почту, в МойСклад или на URL (скрипт, который загрузит заказ куда вам нужно, например в CRM). Также заказы будут сохранены в нашем кабинете в специальном разделе. На этой странице оформление включено.
В настройках есть возможность разрешить онлайн оплату через одну из подключенных к нам платёжных систем.
Таким образом выбрав тип оплаты «Картой на сайте» клиент сможет оплатить заказ прямо в виджете.
Разрешенные типы оплат и их названия настраиваются в личном кабинете.
На данный момент доступна оплата через ЮKassa,
Альфа-банк,
PayKeeper,
Т-банк и
Точка банк.
Другие платежные сервисы и банки добавим по запросу.
По факту оплаты заказа изменится статус его оплаты в в нашем кабинете, и вам будет отправлено email уведомление что заказ оплачен.
На этой странице для примера при выборе DPD с оплатой Наличными при получении добавляется 100% наценка к стоимости доставки. Так же через правила можно сделать коррекцию в зависимости от любых других параметров заказа.
Если у транспортной компании есть разные тарифы, то в настройках виджета вы можете разрешить выбор тарифа для пользователей. На этой странице включен выбор тарифа для Сдэк и Почты России.
Если у транспортной компании есть дополнительные услуги, такие как обрешетка, страховка, подъем на этаж и т.п., в настройках виджета вы можете применять их по умолчанию при каждом расчете доставки или разрешить выбор дополнительных услуг прямо в виджете, изменить их названия и вывести ваш комментарий. На этой странице выбор дополнительных услуг разрешен для Сдэк и Деловых Линий.
Настроить внешний вид можно с помощью css под дизайн конкретного сайта (цвета, шрифт, форма и расположение блоков)
Этот виджет вы можете встроить в любой сайт, подключить к любой CMS, разрешающей использование внешних скриптов. Для этого достаточно разместить код виджета в нужное место на сайте. Можно настроить запуск виджета на любую кнопку или, например, на клик по вкладке «Доставка»
Доступные события смотрите ниже в блоке Подключение и настройка.
1. Создайте и настройте аккаунт в сервисе eShopLogistic. Порядок действий описан здесь.
2. Выполните подключение виджета к сайту по документации ниже.
Если что-то не получается - напишите нам через Telegram, чат или в раздел «Поддержка» в нашем кабинете, мы обязательно поможем!
Помимо параметров настройки виджета в личном кабинете, некоторые настройки можно применять прямо при установке виджета.
Это позволяет переопределять указанные в личном кабинете базовые настройки (например, в зависимости от каких-то условий на сайте).
Обязательным параметром, который должен быть указан и не может быть изменён, является ключ виджета - data-key.
| Параметр | Описание |
|---|---|
| data-key | Ключ виджета. Указан в настройках виджета на вкладке «Подключение на сайте». |
| data-lazy-load |
Установите значение Пример:
|
| data-from |
Изменение города-отправителя. В качестве значения используется ФИАС-код или название населённого пункта. Примеры (изменит город-отправитель на «Тверь»): |
| data-offers |
JSON-строка с данными набора товаров. По клику на кнопке, вместо 1 товара вы можете добавить в виджет сразу несколько. Например, содержимое корзины посетителя (если у вас уже используется штатная корзина), набор связанных товаров или несколько грузовых мест. Важно! Обязательные элементы: Дополнительно можно (и желательно) указать габариты единицы товара: Пример:
|
| data-user |
JSON-строка с данными пользователя. Если на сайте авторизованный пользователь, то можно вывести его данные в виджет при оформлении заказа (просто чтобы пользователю не нужно было заполнять их). Доступные элементы: Пример:
|
| data-ip |
IP-адрес посетителя для автоматического определения города. Может быть получен средствами CMS или напрямую, например посредством php:
|
| data-target |
Строка с названием города или ФИАС-кодом. Например: |
| data-order |
Если в настройках виджета в нашем личном кабинете Вы настроили отправку заказа,
но на определённой странице не хотите разрешать отправку заказа, установите значение Удобно при использовании виджета при встраивании в панель управления CMS или иных сервисов, а также для вывода виджета на информационных страницах без привязки к товарам, например «Доставка». |
| data-terminal-delivery-default |
Выбрать указанную транспортную компанию по умолчанию для варианта «курьер». По умолчанию виджет выбирает самый дешёвый вариант. |
| data-door-delivery-default |
Выбрать указанную транспортную компанию по умолчанию для варианта «самовывоз». По умолчанию виджет выбирает самый дешёвый вариант. |
| data-controller |
Если вы хотите, чтобы запросы от виджета шли не напрямую к нашему серверу, а через какой-то контроллер, укажите URL в этом атрибуте. Актуально для логгирования или отладки. |
Параметры, отмеченные , - обязательны.
Доступно 10 функций обратного вызова для каждого ключевого события или ошибки:
Пример использования:
<script>
document.addEventListener('DOMContentLoaded', () => {
const root = document.getElementById('eShopLogisticWidgetBlock');
root.addEventListener('eShopLogisticWidgetBlock:onLoadApp', (event) => {
console.log('Событие onLoadApp', event.detail)
});
root.addEventListener('eShopLogisticWidgetBlock:onSelectedService', (event) => {
console.log('Событие onSelectedService', event.detail)
})
// ...
})
</script>
После регистрации на нашей платформе добавьте ключ доступа и нужные вам службы доставки.
Настройте параметры и функционал виджета по документации.
Общий порядок действий для подключения сервиса eShopLogistic на ваш сайт или в МойСклад описан здесь. Подключайтесь по документации и используйте все возможности интеграции со службами доставки для вашего бизнеса.
1. Добавить блок виджета:
<div id="eShopLogisticWidgetBlock"
data-lazy-load="true"
data-key="199226-6-14"
data-offers='[{ "article":91,"name":"Радиотелефон DECT Siemens","count":1,"price":304,"weight":1 }]'>
</div>
2. настроить событие запуска виджета:
<script>
document.addEventListener('DOMContentLoaded', () => {
document.getElementById('ваш_элемент').addEventListener('click', event => {
document.getElementById('eShopLogisticWidgetBlock').dispatchEvent(new CustomEvent('eShopLogisticWidgetBlock:loadApp'))
})
})
</script>
3. Подключить виджет:
<script src="https://api.esplc.ru/widgets/block/app.js"></script>
Примеры
Изменение города-отправителя и состава отправления
<script>
// Элемент с id="changeDispatch" это элемент, при клике на котором мы хотим изменить город-отправитель (в данном примере на Екатеринбург)
// Также для примера изменим offers
document.addEventListener('DOMContentLoaded', () => {
document.getElementById('changeDispatch').addEventListener('click', event => {
event.preventDefault()
document.getElementById('eShopLogisticWidgetBlock').dispatchEvent(new CustomEvent('eShopLogisticWidgetBlock:updateParamsRequest', {
detail: {
requestParams: {
// изменить город отправитель
from: '7b6de6a5-86d0-4735-b11a-499081111af8',
// изменить состав отправления (например, количество товара или добавить товары)
offers: [{ "article":91,"name":"Радиотелефон DECT Siemens","count":2,"price":304,"weight":1 }]
}
}
}))
})
})
</script>
Изменение количества товара
<script>
// Элемент с id="productCounter" это input для ввода количества товара.
// При изменении количества - сообщаем об этом виджету для пересчёта доставки
document.addEventListener('DOMContentLoaded', () => {
const root = document.getElementById('eShopLogisticWidgetBlock')
let offers = JSON.parse(root.dataset.offers)
document.getElementById('productCounter').addEventListener('change', event => {
if(typeof offers[0] === 'object') {
offers[0].count = event.target.value
root.dispatchEvent(new CustomEvent('eShopLogisticWidgetBlock:updateParamsRequest', {
detail: {
requestParams: {
offers: JSON.stringify(offers)
}
}
}))
}
})
})
</script>