При заказе товара клиент из Минска ожидает получить его в ближайшем ПВЗ Boxberry — без интеграции это ручная выгрузка и потерянные заказы. Мы автоматизируем полный цикл: от расчёта стоимости до трекинга посылки. Наш опыт показывает, что правильно настроенная интеграция сокращает время обработки заказов на 60%, а количество ошибок в доставке — почти до нуля. Boxberry в Беларуси через партнёрскую сеть: покрытие есть в Минске (более 20 ПВЗ), Гомеле, Бресте, Витебске, Могилёве — для городов-миллионников этого достаточно. Технический стек — единый Boxberry API с отдельными credentials для белорусского сегмента.
Рассмотрим типовую боль: интернет-магазин автозапчастей в Минске. До интеграции менеджеры вручную вбивали данные в личный кабинет Boxberry — 15 минут на заказ. После интеграции заказ уходит в API за 2 секунды. Трекинг обновляется автоматически, клиенты получают уведомления. В первый месяц обработали 300 заказов без единой ошибки. Другой пример — магазин косметики с 50 заказами в день: после внедрения экономия на доставке составила 40%, а срок доставки сократился с 5 до 2 дней.
Какие проблемы решаем
- Некорректный расчёт тарифов для Беларуси. Если не указать страну и код города, API возвращает российские цены. Наш обработчик всегда передаёт
CountryCode=BYи город отправления. Мы логируем каждый запрос и сверяем ответ с ожидаемым тарифом. - Отсутствие карты ПВЗ. Boxberry не предоставляет готовый виджет для Беларуси. Мы реализуем свой на Яндекс Картах, загружая точки через
PointListс фильтром поCountryCode=BY. Данные кэшируются на 12 часов, что снижает нагрузку на API. - Ошибки в трекинге. API Boxberry не отправляет вебхуки. Мы ставим агент Битрикса, который проверяет статус каждые 4 часа, и при обновлении отправляет клиенту email или SMS. При сбое агента предусмотрен повтор через 15 минут.
Как работает интеграция Boxberry в Беларуси?
Как рассчитывается стоимость доставки Boxberry?
class BoxberryByHandler extends \Bitrix\Sale\Delivery\Services\Base
{
private string $apiUrl = 'https://api.boxberry.ru/json.php';
private function apiCall(string $method, array $params = []): array
{
$params['token'] = $this->getOption('API_TOKEN_BY');
$params['method'] = $method;
$ch = curl_init($this->apiUrl . '?' . http_build_query($params));
curl_setopt_array($ch, [CURLOPT_RETURNTRANSFER => true]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
return $result ?? [];
}
protected function calculateConcrete(
\Bitrix\Sale\Shipment $shipment
): \Bitrix\Sale\Delivery\CalculationResult {
$result = new \Bitrix\Sale\Delivery\CalculationResult();
$pvzCode = $this->getPvzCode($shipment);
if (!$pvzCode) {
$result->addError(new \Bitrix\Main\Error('ПВЗ Boxberry не выбран'));
return $result;
}
$response = $this->apiCall('DeliveryCosts', [
'weight' => max((int)ceil($shipment->getWeight() / 1000), 1),
'aim' => $pvzCode,
'sumd' => round($shipment->getOrder()->getPrice()),
'fromCity' => $this->getOption('FROM_CITY_CODE_BY'),
]);
if (!empty($response['price'])) {
$result->setDeliveryPrice((float)$response['price']);
$period = $response['deliveryPeriod'] ?? '3–7';
$result->setPeriodDescription("{$period} дней");
}
return $result;
}
private function getPvzCode(\Bitrix\Sale\Shipment $shipment): ?string
{
$props = $shipment->getOrder()->getPropertyCollection();
return $props->getItemByOrderPropertyCode('BOXBERRY_PVZ_BY')?->getValue() ?: null;
}
}
Ключевые методы API: PointList, DeliveryCosts, ParselCreate, ParselCheck. Все с фильтром по стране BY. Мы также добавили логирование каждого вызова для отладки.
Как настроить карту ПВЗ для Беларуси?
public function getBelarusPvz(): array
{
$cache = \Bitrix\Main\Data\Cache::createInstance();
if ($cache->initCache(3600 * 12, 'boxberry_pvz_by', '/boxberry/')) {
return $cache->getVars();
}
$pvzList = $this->apiCall('PointList', [
'CountryCode' => 'BY',
'prepaid' => 1,
]);
$cache->startDataCache();
$cache->endDataCache($pvzList);
return $pvzList;
}
На фронте выводим карту через Яндекс Карты — передаём список ПВЗ с координатами. Кэш обновляется раз в 12 часов, что обеспечивает актуальность без лишних запросов.
Создание посылки и трекинг
public function createParcel(\Bitrix\Sale\Shipment $shipment): string
{
$order = $shipment->getOrder();
$props = $order->getPropertyCollection();
$response = $this->apiCall('ParselCreate', [
'updateByTrack' => '0',
'order_id' => 'bitrix_' . $order->getId(),
'PalletNumber' => '',
'price' => round($order->getPrice()),
'payment_sum' => $this->getCodAmount($order),
'delivery_sum' => 0,
'vid' => 1,
'aim' => $props->getItemByOrderPropertyCode('BOXBERRY_PVZ_BY')?->getValue(),
'name' => $props->getItemByOrderPropertyCode('FIO')?->getValue(),
'phone' => $props->getItemByOrderPropertyCode('PHONE')?->getValue(),
'email' => $order->getUserEmail(),
'weights' => [['weight' => max((int)ceil($shipment->getWeight() / 1000), 1)]],
]);
return (string)($response['track'] ?? '');
}
Трекинг через ParselCheck. Агент проверяет статус каждые 4 часа и обновляет заказ. При обнаружении финального статуса (вручено) агент деактивируется.
Почему Boxberry выгоднее альтернатив в Беларуси?
Сравним со службами, которые часто используют для доставки по Беларуси:
| Параметр | Boxberry | Почта России | СДЭК (Беларусь) |
|---|---|---|---|
| Стоимость (посылка до 5 кг) | низкая | средняя | высокая |
| Сроки | 2–5 дней | 5–14 дней | 3–7 дней |
| ПВЗ в Минске | 20+ точек | 100+ отделений | 15+ точек |
| API для интеграции | простой, один токен | сложный, разные методы | есть, но дорогой тариф |
Boxberry доставляет в два раза быстрее Почты России по Беларуси. Для интернет-магазина с 50+ заказами в день это даёт экономию до 40% на доставке. Кроме того, интеграция требует меньше трудозатрат на разработку благодаря единому API.
Процесс работы
- Аналитика — изучаем вашу текущую доставку, список городов, типы товаров.
- Проектирование — выбираем методы API, настраиваем кэширование, подготавливаем поля свойств заказа.
- Реализация — пишем обработчик доставки, карту ПВЗ, трекинг. Подключаем через CommerceML или REST API.
- Тестирование — проверяем на тестовых заказах, правильность тарифов и создание посылок. Запускаем нагрузочное тестирование.
- Деплой — публикуем на боевом сайте, проводим обучение менеджеров.
Что входит в работу
- Настройка API Boxberry (токены, методы) под Беларусь.
- Разработка виджета выбора ПВЗ на Яндекс Картах.
- Реализация расчёта стоимости и создания посылок.
- Трекинг с автоматическим обновлением статуса.
- Email-уведомления клиентам (через агент Битрикса).
- Документация по эксплуатации.
Сроки ориентировочно
| Состав | Срок |
|---|---|
| Расчёт + создание посылки | 3–4 дня |
| + ПВЗ на карте | 5–7 дней |
| + Трекинг + уведомления | 7–10 дней |
Стоимость рассчитывается индивидуально. Оценим ваш проект бесплатно — свяжитесь с нами, чтобы получить точную смету. Наша команда занимается интеграциями Boxberry более 8 лет — более 300 успешных проектов по СНГ.
Получите консультацию инженера — мы расскажем, как настроить Boxberry под ваш магазин. Напишите нам — ответим в течение часа.
Ссылка: Boxberry API







