Плагин позволяет рассчитать возможность и стоимость курьерской доставки и доставки до пункта выдачи заказов компании Boxberry. Работает как со «старым», так ис «новым» личным кабинетом Boxberry.
Несмотря на то, что плагин совместим со старой версией PHP 7.2, рекомендуем использовать его на системах с PHP 8.x для более быстрой и стабильной работы.
При работе с Shop-Script 7.2.11 и более новыми есть возможность автоматически передавать заявки на доставку в Boxberry.
При работе с Shop-Script 8.1 и более новыми есть возможность учитывать габариты товаров в заказе.
При работе с Shop-Script 8.5 и более новыми есть возможность учитывать тип способа оплаты (при получении или предоплата).
Гибкое указание наценок
К стоимости доставки, посчитанной сервером Boxberry, можно добавить наценку или вообще указать фиксированную стоимость. Наценку можно рассчитывать в рублях, в процентах от стоимости заказа, достаки, суммы доставки и заказа, а также можно использовать формулы для сложных наценок вида «100 р. плюс стоимость доставки, плюс 0.5 процента от стоимости заказа, плюс 10 процентов стоимости доставки». Описание переменных для использования в формулах и примеры формул есть на вкладке «Информация» настроек плагина.
Ограничения на расчёт
Плагин позволяет задать различные ограничения для расчёта.
Ограничение по весу и габаритам
Можно задать максимальный вес, при превышении которого покупателю будет сообщено о невозможности доставки. Такое же ограничение можно задать и для габаритов заказа. Либо не ограничивать расчёт по этим параметрам вовсе.
Ограничения по географии
Можно задать географические ограничения для доставки заказа, например «только Костромская область и город Одинцово Московской области», либо наоборот «всюду, кроме города Киров, республики Карелия и города Ленск республики Саха».
Ограничение по стоимости заказа
Есть возможность указать рамки (от и до) стоимости заказа, для которого должен выполняться расчёт. Если заказ (без учёта стоимости доставки) дешевле минимального значения, либо больше максимального, покупателю будет показано сообщение о невозможности доставки.
Бесплатная доставка
Стоимость заказа, выше которой доставка будет бесплатной, можно задать раздельно для курьерской доставки и доставки в пункт выдачи. Ну или не задавать вовсе, если у вас нет бесплатной доставки.
Дата доставки
Дата доставки рассчитывается исходя из количества дней, которые насчитает сервер Boxberry. Добавить дополнительные дни вы можете в соответствующих настройках плагина. Также в настройках плагина можно выбрать пункт приема отправлений, в который вы сдаете заказы и рачет сроков доставки будет выполняться с учетом всех перемещений от этого пункта, до сортировки и до клиента.
Расчет времени до отправки
Плагин позволяет определить дату, когда заказ будет отправлен, можно было точнее рассчитать дату, когда он сможет выдать отправление. Расчет состоит из четырёх настроек:
- Учитывать системную дату отгрузки — если ваш Shop-Script (8.0 И выше) настроен на вычисление даты готовности товара к отправке, то за дату начального отсчёта будет браться вычисленная Shop-Script'ом дата. В противном случае используется текущая дата.
- Час переноса отгрузки добавит еще один день к дате отгрузки, если текщее время (на сервере) больше указанного часа. Например, если час переноса отгрузки указан «18», то к сроку отгрузки всех заказов сделанных после 18:00 будет добавляться еще 1 день.
- Срок комплектации добавит указанное число дней к дате отправки
- Дни недели отгрузки позволяет указать дни недели, по которым заказы передаются в Boxberry. Если после предыдущих расчетов получается день, в который нет отгрузки, до к сроку комплектации будет добавлено столько дней, чтобы получилась отправка в первый доступных день недели.
Пример расчета, когда сможем отправить:
- Настройки: Срок комплектации: 1; Час переноса:18; дни недели: пн,вт,ср,чт,пт.
- Заказ оформляется в четверг 10 мая, в 18:32
- «Час переноса»: заказ сделан после 18, значит отгрузим в пятницу 11 Мая
- «Срок комплектации» (1 день), значит к пятнице добавим день и сможем отгрузить в субботу 12 мая
- «Дни недели» (суббота и воскресенье не отгружаем), значит сможем отправить в понедельник 14 мая
Итого: Для расчета срока доставки колчиство дней доставки Boxberry будет отсчитываться от даты отгрузки 14 мая.
Наименование пункта выдачи
В настройках метода доставки есть возможность указать шаблон, по которому формируются наименования пунктов выдачи. Для обработки шаблона используется синтаксис Smarty, такой же, как и для шаблонов тем оформления. В шаблон передаются переменные $name, $address, $address_reduce, $metro, $city_name и $settlement. По умолчанию используется шаблон "ПВЗ {$name}".
Переменные шаблона:- $name — это название ПВЗ, которое формирует Boxberry. Выглядит примерно так: «Воронеж Ленинский_3602_С»
- $address — полный адрес пункта выдачи. Например «394033, Воронеж г, Ленинский пр-кт, д.172»
- $address_reduce — сокращенный адрес пункта выдачи. «Ленинский пр-кт, д.172»
- $metro — Наименование ближайшей станции метро (если есть)
- $city_name — наименование города. «Воронеж»
- $settlement — наименование населенного пункта. Может быть пустым, может быть таким же, как и город, может и отличаться от названия города
Пару примеров готовых шаблонов наименований вы можете посмотреть на нашем сайте .
Выбор ПВЗ на карте
В режимах, где не предусмотрена штатная карта (оформление заказа в бэкенде и пошаговый режим) плагин может показывать свою карту для удобного выбора пункта выдачи на карте.
В настройках способа доставки можно разрешить показ карты, чтобы покупатели могли выбрать ПВЗ на карте. Корректность отображения карты зависит от темы дизайна. Мы протестировали и убедились, что карта работает с темой дизайна Default. Адаптация отображения карты к другим темам дизайна в бесплатную поддержку плагина не входит!
Отдельно в настройках можно разрешить также показ карты в бэкенде при выборе способа доставки во время редактирования заказа. Это поможет вашему менеджеру оформить заказ по телефону и предложить оптимальный пункт выдачи в городе клиента.
Карта точно совместима с плагином Купить в один клик. Мы протестировали и убедились, что карта показывается и работает с плагином быстрого оформления заказа. Нужны минимальные дополнительные стили, которые нетрудно добавить в настройках плагина Купить в один клик.
Хелпер для получения информации о ПВЗ
В плагине есть статический метод, который поможет вам получить информацию о пункте выдачи по коду ПВЗ. Или сам извлечёт код ПВЗ из параметров заказа и, если в заказе выбрана доставка в ПВЗ Boxberry, выдаст массив с информацией о пункте выдачи. Хелпер можно использовать в транзакционных письмах, чтобы напомнить покупателю, в какой именно пункт он заказал. Можно использовать в письмах-напоминаниях о том, что заказ можно забирать, в шаблонах и .т.д. Пример вызова хелпера и описание структуры данных, выдаваемых хелпером находятся на вкладке «Информация» в настройках способа доставки.
У плагина есть встроенный метод, позволяющий отправить в транзакционном письме информацию о пункте выдачи заказов, который выбрал покупатель в процессе оформления заказа. В качестве параметра методу передается идентификатор варианта доставки, а разультат выдается в виде массива, элементы которого можно использовать в шаблоне транзакционного письма. Если информации о ПВЗ не найдено, возвращается пустой ответ.
Получение информации от плагина
Пригодится вашему верстальщику.
В шаблоне транзакционного письма нужно спева убедиться, что в заказе выбран метод доставки, созданный с использованием
нашего плагина, а затем вызвать метод getPointInfo() передав ему в качестве параметра выбранный вариант доставки.
{$point_info = $shipping_plugin->getPointInfo($order.params.shipping_rate_id)}
Если пункт выдачи, соответствующий указанному варианту найден, то в переменной `$point_info` будет следующий массив данных:
array(
'name' => 'Наименование ПВЗ'
'only_prepaind_orders' => 'В ПВЗ выдают только предоплаченные заказы (yes/no)',
'acquiring' => 'В ПВЗ возможна оплата картой при получении (yes/no)',
'metro' => 'Ближайшая станция метро, если есть. Или пусто.',
'address' => 'Адрес ПВЗ',
'phone' => 'Телефон ПВЗ',
'trip_description' => 'Текст, как добраться до ПВЗ',
'schedule' => 'Режим работы'
);
{if !empty($order.params.shipping_plugin) && ($order.params.shipping_plugin == 'bxb') && !empty($order.params.shipping_rate_id) && !empty($shipping_plugin)}
{$point_info = $shipping_plugin->getPointInfo($order.params.shipping_rate_id)}
{if !empty($point_info) && !empty($point_info.name)}
<p>Пункт выдачи <b>{$point_info.name|escape}</b>:<br>
Адрес: {$point_info.address|escape}
{if !empty($point_info.metro)}(ближайшая станция метро: {$point_info.metro|escape}){/if}<br>
{if !empty($point_info.phone)}Телефон: {$point_info.phone|escape}<br>{/if}
{if !empty($point_info.trip_description)}Как добраться: <i>{$point_info.trip_description|escape}</i><br><br>{/if}
{if !empty($point_info.schedule)}Время работы: {$point_info.schedule|escape}{/if}
</p>
{/if}
{/if}