1С-Битрикс: инструкция по подключению модуля
Расчет доставки (Почта, СДЭК, ПЭК, Энергия и др.)
Предупреждение!!!
1. Для работы модуля интернет-магазин необходимо подключить к системе eDost.
2. Чтобы рассчиталась доставка, у всех товаров в корзине должен быть задан вес.
3. Чтобы в расчете доставки учитывались габариты посылки, у каждого товара должны быть прописаны его размеры (длина, ширина, высота).
4. Обязательно задайте компании, через которые будет производиться расчет доставки
личном кабинете eDost в настройках магазина).
5. Магазин кэширует результаты расчетов, поэтому, после изменения настроек в личном кабинете, для пересчета доставки в магазине необходимо сбросить кэш.
6. Модуль поддерживает только стандартный компонент оформления заказа (sale.order.ajax).
7. Обязательно укажите шаблон, на котором работает оформление заказа, в админке в настройках модуля eDost (или отключите, если не используете ни один из поддерживаемых шаблонов).
1. Установка модуля eDost
Запустите установку модуля через Marketplace, и завершите установку в админке магазина:
2. Настройка модуля eDost
3. Загрузка списка местоположений
Для корректной работы калькулятора доставки рекомендуется установить список местоположений, соответствующий стандарту системы eDost.
Предупреждение!!!
1. Новый список местоположений заменяет уже существующий, поэтому в старых заказах и в личных данных зарегистрированных покупателей местоположения могут сброситься.
2. Если магазин работает на местоположениях 2.0, но используется старый список (в типах местоположений содержится только три записи), тогда сначала необходимо импортировать дефолтные местоположения, чтобы в базах битрикса прописались все необходимые поля.
Удалите старый список с местоположениями России:
Выберите в архиве подходящий для вашего магазина список, и импортируйте согласно инструкции:
Сбросьте кэш магазина:
4. Учет габаритов
Для точного расчета доставки у товаров должны быть заданы габаритные размеры (длина, ширина, высота).
Предупреждение!!!
1. Без учета габаритов стоимость доставки может получиться намного МЕНЬШЕ реальной!
2. Если габариты не заданы, тогда доставка рассчитывается только по весу.
3. Если у вас в магазине представлены исключительно мелкие товары (например, парфюмерия), тогда габариты можно не указывать.
4. Чтобы габариты учитывались в расчетах, необходимо в личном кабинете eDost в настройках магазина поставить галочку Учитывать в расчетах габариты груза, и выбрать единицу измерения габаритов миллиметры (или другую, если в магазине используется нестандартная размерность).
Габариты задаются в настройках товара в стандартных полях:
5. Шаблон eDost
Шаблон eDost - это улучшенное оформление заказа с широкими возможностями (два варианта дизайна, любой цвет, выбор пунктов выдачи на общей карте, продвинутая адаптивность, уникальная система приоритетов оплаты, бонусы доставки, скидки способов оплаты, кнопка быстрого оформления и многое другое).
Предупреждение!!!
1. НЕ рекомендуем дорабатывать шаблон, потому что шаблон – это не просто какой-то отдельный html файл, а целая система, в состав которой входит модуль, компонент, события, языковые файлы, стили и js скрипты (это десятки тысяч строк кода). И главное, после доработок не будут доступны штатные обновления, т.е. не будет исправлений, улучшений и нового функционала.
2. Если требуется доработать шаблон, тогда необходимо сделать его копию и все работы производить на этой копии (иначе после обновления модуля eDost все правки сбросятся).
3. В шаблоне eDost реализована сложная схема адаптации, поэтому вносить изменения в шаблон, особенно связанные с добавлением, удалением, размерами и видимостью блоков, необходимо очень осторожно с обязательным тестированием при различных тарифах, на различных устройствах, положении экрана и т.д. (иначе на компьютере разработчика все будет выглядеть нормально, а у какого-нибудь покупателя, например, на телефоне с вертикальным расположением экрана верстка "поплывет" и он не сможет оформить заказ). Исключение составляют только простые правки, вроде изменения цвета, фона и другие не влияющие на структуру блоков.
подключение шаблона eDost
включение gzip сжатия
Для ускорения работы страницы оформления заказа рекомендуется включить сжатие.

По вопросу включения сжатия вам необходимо обращаться к системному администратору вашего сайта.

А если сервер магазина поддерживает такую функцию, тогда достаточно будет скопировать в папку страницы оформления заказа (по умолчанию /personal/order/make/) файл .htaccess из архива.
Предупреждение!!!
Сжатие требует больше ресурсов, поэтому на слабых серверах может приводить к сбою.
показать старый шаблон eDost/Visual
7. Наложенный платеж
Наложенный платеж - это способ оплаты за заказ наличными в момент вручения (например, оплата в почтовом отделении при получении посылки, или оплата наличными курьеру при вручении заказа).

Функциональные возможности системы наложенного платежа eDost:
1. Управление из личного кабинета eDost.
2. Включение в заказ наценок наложенного платежа.
3. На странице оформления заказа способ оплаты "Наложенный платеж" появляется только при выборе тарифов доставки, для которых наложенный платеж включен в личном кабинете и доступен по параметрам заказа, настройкам и ограничениям перевозчиков.
Предупреждение!!!
1. Отображение наценок наложенного платежа реализовано только для стандартного оформления заказа (sale.order.ajax).
2. Обязательно включите наложенный платеж в личном кабинете eDost у магазина в разделе "наложка".
3. В магазине должна быть только одна платежная система с обработчиком "edostpaycod".
4. В админке магазина НЕ нужно врунчую привязывать наложенный платеж к способам доставки.
5. В настройках страницы оформления заказа должна быть установлена последовательность оформления "Доставка > Оплата".
6. После любых изменений в настройках платежных систем, обязательно пересохраняйте привязки к оплате в настройках модуля eDost.
Добавьте новую платежную систему:

Установите параметры в соответствии со скриншотами:

Отображение модуля "Наложенный платеж" в заказе:
Стоимость доставки увеличится на - это наценка на доставку при наложенном платеже (включается в заказ - прибавляется к стоимости доставки).
+ доплатить при получении за денежный перевод - это сумма, которую оплачивает получатель на почте в момент вручения за перевод денежных средств, ОТДЕЛЬНО от стоимости заказа, указанной в бланке наложенного платежа (в заказ НЕ включается, выводится только для информации).
Пример:
1. Цена товара: 1 000 руб.
2. Цена доставки: 200 руб.
3. Наценка на доставку при наложенном платеже: 140 руб.
Итоговая стоимость заказа: 1 340 руб.

Магазин:
1. Оплачивает доставку 340 руб. = 200 руб. (цена доставки) + 140 руб. (наценка на доставку при наложенном платеже)
2. Указывает в бланке сумму наложенного платежа равную стоимости заказа: 1 340 руб.

Покупатель:
При получении посылки оплачивает 1 489 руб. = 1 340 руб. (стоимость заказа) + 149 руб. (за услугу по переводу денежных средств) - в итоге покупателю заказ обойдется на 289 руб. дороже, по сравнению с покупкой без наложенного платежа.

Служба доставки:
1. Берет с покупателя 1 489 руб.
2. Возвращает продавцу полностью всю стоимость заказа: 1 340 руб.
3. Оставляет себе за услугу перевода 149 руб.
8. Постаматы и пункты выдачи
В модуле eDost реализована возможность выбора покупателем постамата, пункта выдачи или терминала доставки.

Данные по выбранной покупателем точке выдачи сохраняются в адресном поле заказа.
Предупреждение!!!
В админке > Магазин > Настройки > Свойства заказа > Список свойств - должно быть поле Адрес доставки с параметрами:
- мнемонический код ADDRESS
- тип Строка [STRING]
- включен параметр Входит в профиль
- привязка свойства не выбрано ни одной Платежной системы и Службы доставки
Выбранная точка выдачи переносится в поле Адрес доставки, и это поле блокируется:

9. Расчет по индексу
Почтовый индекс необходим для тарифов Почты и курьера boxberry (если данные компании у вас в магазине не используются, тогда индекс можно не настраивать, т.к. пользы от него никакой не будет).

Настройка:
1. Включить расчет по индексу в настройках модуля eDost (админка > Магазин > eDost > Настройки).
2. В свойствах заказа включить (если нет, добавить) поле Индекс:
- мнемонический код: ZIP
- тип: Строка [STRING]
- включен параметр Входит в профиль
- включен параметр Использовать как почтовый индекс
- привязка свойства: не выбрано ни одной Платежной системы и Службы доставки

Если в заказе указан НЕ существующий индекс (или индекс НЕ принадлежит выбранному региону), тогда расчет НЕ производится и калькулятор выдает соответствующее предупреждение.
10. Оформление доставки
Функция оформления доставки позволяет зарегистрировать заказ в системе службы доставки с присвоением идентификатора отправления и печатью бланков.
Предупреждение!!!
1. Заполните данные доступа в личном кабинете eDost в разделе контроль заказов или в админке магазина в профиле организаций (админка > Магазин > eDost > Оформление доставки - там справа вверху кнопка "показать настройки" и дальше кнопка "Профили организаций").
2. Если после нажатия кнопки "распечатать" ничего не происходит, значит в вашем браузере заблокированы всплывающие окна – кликните по системному предупреждению браузера (обычно отображается в углах окна), и задайте там соответствующее разрешение.
3. Для хранения веса, габаритов и опций оформляемых заказов, в админке > Магазин > Настройки > Свойства заказа > Список свойств - необходимо добавить новое свойство Параметры упаковки (мнемонический код: PACKAGE, тип: Строка [STRING], включен параметр "Служебное", привязка свойства: не выбрано ни одной Платежной системы и Службы доставки).
Оформление доставки:
1. Проверить новый заказ, и если с ним все в порядке и его можно отправлять, тогда разрешить у него доставку:
2. Перейти на страницу оформления доставки (админка > Магазин > eDost > Оформление доставки):
Печать без оформления:
- доступно только для почтовых отправлений
- не нужно указывать вес и габариты (заполняются оператором при приеме отправления)
- не нужен договор с почтой и регистрация на otpravka.pochta.ru
- идентификатор присваивается после сдачи отправления в почтовом отделении

Если будете использовать функцию печати без оформления, тогда обязательно заполните данные отправителя (магазина) и получателя (если свойства заказа отличаются от стандартных):
11. Контроль заказов
Функция контроля заказов позволяет администратору магазина отслеживать состояние заказа с момента передачи отправления в службу доставки и до момента вручения покупателю.

Функциональные возможности:
1. Вывод текущего статуса заказа и просмотр детальной информации по всем статусам доставки (в админке магазина и в личном кабинете покупателя).
2. Предупреждение администратора о новых важных статусах - в админке отметка или
новый

После ознакомления с важным статусом, чтобы в дальнейшем данный заказ не выделялся, следует снять отметку (нажать соответствующую кнопку или кликнуть по ).
3. Заказ можно поставить на особый контроль, тогда система будет сообщать о любом изменении статуса, как о важном, и выделять такие заказы в отдельный блок с отметкой
на особом контроле
Предупреждение!!!
1. Заполните параметры контроля в личном кабинете eDost в разделе контроль заказов и в админке магазина в настройках модуля (админка > Магазин > eDost > Контроль заказов - там справа вверху кнопка "показать настройки").
2. Для постановки заказа на контроль у отгрузки в магазине должна быть разрешена доставка и указан идентификатор отправления (присваивается службой доставки при приемке отправления).
3. Для контроля наложки должен быть настроен наложенный платеж.
4. Информация по статусам заказов обновляется примерно раз в день, а в выходные и федеральные праздники задержки могут доходить до недели!!!
5. Реальный статус отправления может отличаться от статуса в системе по множеству различных причин (например, информация еще не обновилась, работник службы доставки забыл внести данные, партнер не обновил свою базу, сбой на сервере службы доставки, и т.д.).
12. Мои заказы
При использовании функции контроля, в шапку сайта (или любое другое место) можно добавить блок "мои заказы" со списком текущих заказов покупателя.
Интеграция блока "мои заказы" в шапку сайта:
bitrix/templates/шаблон магазина/header.php
Предупреждение!!!
1. Перед редактированием рекомендуется сделать бэкап оригинального файла магазина, чтобы при необходимости можно было все восстановить.
2. Модифицированный файл может быть заменен новой версией при обновлении шаблона/магазина, тогда все правки сбросятся!
Вставьте в файл код, выделенный зеленым:
...
...
                </span>
                <?$APPLICATION->ShowProperty("CATALOG_COMPARE_LIST", "");?>

<?
// блок "мои заказы" со статусами текущих заказов покупателя
if (CModule::IncludeModule('edost.delivery'))
    $GLOBALS['APPLICATION']->IncludeComponent('edost:delivery', '', array(
        'MODE' => 'user_order',
        'PARAM' => array(
//            'div_class' => 'bx-basket-block',
//            'div_style' => 'padding: 5x 0 5px 0; font-size: 12px;',
//            'a_class' => '',
//            'a_style' => 'font-size: 12px;',
//            'user_order_head' => 'мой заказ:', // название заголовка для одного заказа
//            'user_order_head2' => 'мои заказы:', // название заголовка для нескольких заказов
            'user_order_max' => 2, // ограничение количества заказов
            'user_order_string_length' => 15, // максимальная длина строки статуса (все, что больше, будет обрезано и заменено на '...')
//            'user_order_number_hide' => true, // скрыть номер заказа
//            'order_detail_link' => '/personal/order/detail/%order_id%/', // ссылка на страницу с детальной информацией о заказе ('%order_id%' - ид заказа, '%order_number%' - номер заказа)
//            'test' => 100, // тестовый вывод (для отладки положения и стилей, 100 - номер заказа)
        ),
    ), null, array('HIDE_ICONS' => 'Y'));
?>

            </div>
            <div class="brand">
...
...
13. Личный кабинет покупателя
Интеграция в личный кабинет покупателя открывает дополнительный функционал:
1. Корректный вывод названий тарифов доставки (с иконками, без названия модуля и лишних скобок).
2. Вывод пунктов выдачи со ссылкой на карту (с подробным описанием), форматирование адреса доставки, скрытие служебных полей (примерный почтовый индекс, и т.п.).
3. При использовании функции контроля, вывод текущего статуса заказа и подробной информации по доставке.
Интеграция в шаблон "Подробная информация о заказе (bitrix:sale.personal.order.detail)"
bitrix/templates/шаблон магазина/components/bitrix/sale.personal.order.detail/шаблон компоненты/template.php
Предупреждение!!!
1. Перед редактированием рекомендуется сделать бэкап оригинального файла магазина, чтобы при необходимости можно было все восстановить.
2. Если в шаблоне нет папки sale.personal.order.detail, тогда необходимо редактировать базовый шаблон компоненты: bitrix/components/bitrix/sale.personal.order.detail/templates/.default/
Базовый шаблон может быть заменен новой версией при обновлении магазина!
Чтобы этого избежать, рекомендуется создать на основе базового шаблона новый, а уже его редактировать и использовать в магазине.
В начале сразу после строчки "<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>", добавьте:
<?
// обработка данных страницы "Подробная информация о заказе"
if (CModule::IncludeModule('edost.delivery')) {
    $ar = $GLOBALS['APPLICATION']->IncludeComponent('edost:delivery', '', array(
        'MODE' => 'sale.personal.order.detail',
        'PARAM' => array(
//            'ico' => 'N', // 'N' - не выводить иконку тарифа
//            'anchor' => 'N', // 'N' - не добавлять к названию тарифа якорь ("shipment_10", 10 - id отгрузки) - используется для перехода к отгрузке из списка заказов в шапке сайта
//            'anchor_up' => 40, // на сколько пикселей прокрутить вверх после перехода по якорю (по умолчанию: 20)
//            'loading' => 'loading_small_f2.gif', // иконка загрузки детальной информации по статусам заказа
        ),
        'RESULT' => $arResult,
    ), null, array('HIDE_ICONS' => 'Y'));
    if (!empty($ar)) $arResult = $ar;
}
?>
Интеграция в шаблон "Мои заказы (bitrix:sale.personal.order.list)"
bitrix/templates/шаблон магазина/components/bitrix/sale.personal.order.list/шаблон компоненты/template.php
В начале сразу после строчки "<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>", добавьте:
// обработка данных страницы "Мои заказы"
if (CModule::IncludeModule('edost.delivery')) {
    $ar = $GLOBALS['APPLICATION']->IncludeComponent('edost:delivery', '', array('MODE' => 'sale.personal.order.list', 'RESULT' => $arResult), null, array('HIDE_ICONS' => 'Y'));
    if (!empty($ar)) $arResult = $ar;
}
Доработка шаблонов
Удалить код выделенный красным, и добавить выделенный зеленым:
echo htmlspecialcharsbx($property["VALUE"]);
echo $property["VALUE"];
<? if (strlen($shipment["DELIVERY_NAME"])) {
    ?>
    <div class="sale-order-detail-payment-options-methods-shipment-list-item">
        <?=Loc::getMessage('SPOD_ORDER_DELIVERY')?>: <?=htmlspecialcharsbx($shipment["DELIVERY_NAME"])?>
        <?=Loc::getMessage('SPOD_ORDER_DELIVERY')?>: <?=$shipment["DELIVERY_NAME"]?>
    </div>
    <?
} ?>

<div class="sale-order-detail-payment-options-methods-shipment-list-item">
    <?= Loc::getMessage('SPOD_ORDER_SHIPMENT_STATUS')?>:
    <?= htmlspecialcharsbx($shipment['STATUS_NAME'])?>
</div>

<? if (!empty($shipment['TRACKING_STATUS'])) { ?>
<div class="sale-order-detail-payment-options-methods-shipment-list-item">
    <?=$shipment['TRACKING_STATUS_HEAD']?>:
    <div style="padding: 5px 0 0 20px;"><?=$shipment['TRACKING_STATUS']?></div>
</div>
<? } ?>
14. Разработчикам
В коде модуля прописаны события, используя которые можно модифицировать входные параметры заказа и результаты расчета (например, заблокировать модуль в городе магазина, или заменить рассчитанную стоимость доставки своим значением).

список событий
info@edost.ru

© ООО "Айсден", 2006-2021. Все права защищены.