-10%Переходите к нам от другого подрядчика — дадим скидку на первый этап работ

ПВЗ и постаматы в оформлении заказа на Битрикс

Выбор ПВЗ и постаматов на карте в оформлении заказа интернет-магазина на 1С-Битрикс

Покупатель дошёл до оформления, выбрал доставку в пункт выдачи — и упёрся в текстовое поле «Адрес ПВЗ». Он не помнит код точки, не знает, работает ли она по субботам и влезет ли туда его заказ. В итоге вводит адрес наугад, менеджер потом перезванивает и уточняет, а часть заказов вовсе отваливается на этом шаге. Между тем современный сценарий выглядит иначе: карта с пунктами выдачи и постаматами прямо в оформлении заказа, где видно ближайшие точки, их график, ограничения и стоимость доставки до каждой.

В этой статье разберём, как в 1С-Битрикс добавить выбор ПВЗ и постаматов на карте: откуда брать точки через API служб доставки, как хранить и обновлять их в собственном справочнике, как фильтровать по габаритам корзины, считать стоимость и — главное — корректно передавать выбранную точку в заказ и дальше в службу доставки. Это выжимка из наших проектов по интеграциям 1С-Битрикс со службами доставки и внешними сервисами — без теории ради теории, с конкретикой по компонентам и свойствам заказа.

Коротко

  • Точки выдачи и постаматы отдают API служб доставки (СДЭК, Boxberry, 5Post, Яндекс, Почта) — их складывают в собственный справочник.
  • Справочник точек обновляют раз в сутки агентом, а карте отдают из кэша, не дёргая чужой API на каждый клик.
  • Список точек фильтруют по габаритам и весу заказа: в маленький постамат крупная посылка не влезет.
  • Выбранную точку сохраняют в свойствах заказа по машинному коду, а не только адресом, и передают в службу доставки.
  • На одной карте можно показывать несколько служб сразу и маршрутизировать заказ по признаку выбранного пункта.

Зачем магазину выбор ПВЗ и постаматов на карте

Пункты выдачи и постаматы давно стали основным способом получения заказов в интернет-магазинах: они дешевле курьера, удобны покупателю и снижают долю невыкупов. Но ценность этого канала легко потерять на последнем шаге — в самом оформлении заказа. Если выбор точки сделан плохо, магазин собирает все минусы ПВЗ и почти ни одного плюса.

Плохой выбор точки — это текстовое поле, куда покупатель вписывает адрес, или гигантский выпадающий список из тысяч пунктов без карты и поиска. В обоих случаях человек ошибается: путает соседние пункты, выбирает уже закрытый, не замечает ограничения по габаритам. Дальше начинается ручная работа: менеджер звонит и уточняет, служба доставки отбивает заказ с ошибкой «неизвестный код ПВЗ», посылка едет не туда. Каждая такая заминка — потерянное время и часть отменённых заказов.

Хороший выбор точки решает эти проблемы на корню. Карта показывает покупателю только реально доступные пункты рядом с ним, с адресом, графиком и стоимостью доставки. Он видит ближайший постамат у дома или ПВЗ у работы, выбирает его одним кликом, а магазин получает не «текст адреса», а точный машинный код точки, который без ошибок уйдёт в службу доставки. Это прямая экономия на обработке заказов и рост конверсии оформления.

Кроме конверсии, у карты есть ещё один эффект — доверие. Когда покупатель видит настоящую точку на карте, её фотографию или хотя бы адрес и часы работы, он охотнее выбирает самовывоз из ПВЗ вместо более дорогого курьера. Магазин экономит на логистике, а клиент получает удобный и понятный способ забрать заказ. Всё это делает интеграцию выбора точек не «украшением» оформления, а инструментом, который напрямую влияет на выручку.

Важно: выбор ПВЗ на карте — это часть шага оформления заказа, а не отдельная страница. Он должен работать в связке с расчётом стоимости доставки: при смене точки цена и срок пересчитываются, иначе покупатель увидит одну сумму, а в заказ уйдёт другая.

ПВЗ, постамат, служба доставки: разбираемся в терминах

Прежде чем проектировать интеграцию, договоримся о словах — от этого зависит структура данных. Термины кажутся очевидными, но в коде и справочниках их путать нельзя.

Ключевой вывод из терминологии: точка — это не просто адрес, а объект с координатами, кодом, принадлежностью к службе и набором ограничений. Постамат и ПВЗ ведут себя по-разному при фильтрации по габаритам. А код точки — самое ценное поле, потому что именно он связывает выбор покупателя с системой перевозчика. Всё это должно найти отражение в структуре справочника точек, к которому мы перейдём ниже.

Архитектура решения: откуда берутся точки

Чтобы карта в оформлении работала быстро и надёжно, важно правильно разложить решение на слои. Наивный подход «на каждый клик покупателя дёргаем API службы доставки» приводит к медленной карте, упирается в лимиты API перевозчика и падает, как только у службы технические работы. Правильная архитектура ставит между покупателем и внешними API собственный слой данных.

Решение удобно представить как цепочку из нескольких компонентов, каждый со своей ролью:

Такое разделение даёт три главных выигрыша. Во-первых, скорость: карта читает из локального справочника за миллисекунды, без сетевых задержек чужого API. Во-вторых, устойчивость: даже если API службы недоступно, покупатель всё равно видит точки из последнего успешного импорта. В-третьих, независимость от лимитов: перевозчики ограничивают число запросов, и опрос по расписанию укладывается в лимиты, а живой трафик покупателей — нет.

API служб доставки Импортёр агент по расписанию Справочник точек AJAX-отдача по городу и габаритам Карта в оформлении Свойства заказа
Схема: импортёр по расписанию наполняет справочник точек, а карта в оформлении читает готовые данные через AJAX и кладёт код точки в свойства заказа.

Источники точек: API служб доставки

Первоисточник точек — это API самих служб доставки. У каждого перевозчика свой метод получения списка ПВЗ и постаматов, но набор данных примерно одинаковый: код точки, тип (ПВЗ или постамат), координаты, адрес, город, график работы, ограничения по весу и габаритам, а также флаги «есть оплата картой», «есть примерка», «работает на выдачу/приём».

Кратко пройдёмся по типичным источникам, с которыми чаще всего работают магазины на 1С-Битрикс:

СлужбаЧто отдаётОсобенности интеграции
СДЭКПВЗ и постаматы, тарифы, срокиШирокая сеть, метод списка точек и калькулятор тарифов; нужна авторизация по токену
BoxberryПВЗ и постаматы, зоныТочки с ограничениями по весу; отдаёт список пунктов и стоимость доставки
5Post (X5)Постаматы и точки в магазинах сетиБольшая сеть постаматов; строгие лимиты по габаритам ячеек
Яндекс ДоставкаПВЗ и постаматы партнёрской сетиЕдиный API на несколько перевозчиков сразу, удобно для мультислужбы
Почта РоссииОтделения и постаматыСамая широкая география; отдельный формат индексов и отделений
PickPoint / агрегаторыПостаматы, ПВЗ разных службОдин API на много сетей; добавляет слой посредника

Практический совет: не пытайтесь сразу подключить все службы. Начните с одной-двух, которыми реально пользуются ваши покупатели, отладьте на них весь конвейер «импорт → справочник → карта → заказ», и только потом подключайте следующие. Механика у всех служб общая, различается только формат API, поэтому вторую и третью службу добавлять уже легко.

Общую механику работы с внешними API служб доставки в 1С-Битрикс мы подробно разбираем в отдельном материале про интеграцию доставки через API — там про авторизацию, обработку ошибок и повторные попытки. Здесь же сосредоточимся именно на точках выдачи и их выборе в оформлении.

Важно: API служб доставки имеют лимиты на число запросов. Никогда не обращайтесь к ним из клиентского кода на каждый клик покупателя — вы быстро упрётесь в блокировку по частоте. Точки берутся из собственного справочника, а API опрашивается по расписанию.

Собственный справочник точек и его обновление

Сердце решения — собственный справочник точек. Это единое хранилище, куда импортёр складывает точки всех подключённых служб в одном формате. Именно из него читает карта, поэтому от структуры справочника зависит и скорость, и удобство фильтрации.

Минимальный набор полей одной точки в справочнике выглядит так:

Где это хранить в 1С-Битрикс — вопрос объёма. Для сотен и первых тысяч точек подойдёт highload-блок: он даёт админку, API D7 и удобные выборки. Для десятков тысяч точек (например, полная сеть Почты России) лучше собственная таблица с продуманными индексами по городу и координатам — так выборки останутся быстрыми. В обоих случаях справочник наполняется не руками, а импортёром.

Обновление справочника — отдельная важная тема. Точки живут своей жизнью: открываются, закрываются, меняют график и лимиты. Устаревший справочник опаснее, чем кажется: покупатель выберет закрытый пункт, заказ уйдёт с неверным кодом, и на приёмке в службе будет ошибка. Поэтому справочник обновляют регулярно.

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

Про типы обновления справочника и почему полный перезалив надёжнее точечных правок — та же логика, что и с расчётом зон доставки. Если интересно, как считать стоимость с учётом веса и габаритов по зонам, посмотрите наш разбор про расчёт доставки по весу, габаритам и зонам: там подробно про весогабаритную логику, которая пригодится и здесь.

Агент раз в сутки Загрузка из API служб Нормали- зация Обновление справочника Прогрев кэша
Схема: агент раз в сутки загружает точки из API, нормализует, обновляет справочник и прогревает кэш — днём карта отдаёт актуальные точки мгновенно.

Карта в оформлении: как выбрать точку

Теперь самое видимое покупателю — карта на шаге оформления. Её задача: показать доступные точки, дать удобно найти нужную и вернуть в заказ выбор. Хорошая карта совмещает визуальный выбор по метке и текстовый поиск, потому что кому-то удобнее ткнуть в точку у дома, а кому-то — найти по адресу.

Что должно быть на карте выбора точки, чтобы она работала на конверсию:

Технически карта — это фронтенд-компонент, который при открытии и при смене города запрашивает точки у своего AJAX-эндпоинта, а не у чужого API. Эндпоинт принимает город и габариты корзины, читает из справочника, возвращает уже отфильтрованный список. Такой контур держит карту быстрой: покупатель кликает по фильтрам и меткам без сетевых задержек внешней службы.

Совет по UX: не открывайте карту сразу со всеми точками страны. Сначала определите город, покажите 20–50 ближайших точек и дайте подгрузку остальных. Тысячи меток на карте тормозят браузер и путают покупателя.

Габариты, вес и фильтрация доступных точек

Одна из самых частых и обидных ошибок — показать покупателю точку, которая физически не примет его заказ. Крупный заказ не влезет в маленькую ячейку постамата, а у части ПВЗ есть ограничение по максимальному весу посылки. Если такую точку не отфильтровать, покупатель выберет её, оформит заказ, а на упаковке выяснится, что отправить туда нельзя — и снова ручная работа с перезвоном.

Поэтому список точек нужно фильтровать по параметрам конкретного заказа. Логика такая:

  1. Считаем габариты корзины. По товарам в заказе суммируем вес и определяем габариты упаковки (либо по весогабаритам товаров, либо по правилам упаковки магазина).
  2. Сравниваем с ограничениями точки. Для каждой точки из справочника проверяем: проходит ли посылка по максимальному весу и по габаритам (для постамата — по размеру ячейки).
  3. Отсекаем неподходящие. Точки, которые не могут принять эту посылку, не показываем на карте вовсе — их просто нет в выдаче.
  4. Помечаем тип. Оставшиеся ПВЗ и постаматы показываем с их иконками; для крупных заказов часто остаются только ПВЗ, и это нормально.

Здесь важно, что габариты корзины считаются той же логикой, что и при расчёте стоимости доставки. Вес и размеры влияют и на цену, и на список доступных точек — это единый весогабаритный расчёт. Если он у вас уже настроен для калькулятора доставки, переиспользуйте его и для фильтрации точек, чтобы не было расхождений: цена посчиталась по одним габаритам, а точки отфильтровались по другим.

Заказ Вес: 4,2 кг 40×30×20 см габариты корзины ПВЗ · до 30 кг Проходит ✓ Постамат L · ячейка 45×35×30 Проходит ✓ Постамат S · ячейка 25×20×10 Не влезает — скрыт ✕
Схема: габариты корзины сравниваются с ограничениями каждой точки — маленький постамат отсекается, а ПВЗ и большой постамат остаются в выдаче.

Расчёт стоимости и сроков до пункта выдачи

Выбор точки на карте неотделим от денег: покупатель хочет видеть не только «где забрать», но и «сколько это стоит» и «когда приедет». Поэтому карта работает в связке с расчётом стоимости доставки. При выборе точки цена и срок должны обновляться, и именно эта сумма должна попасть в заказ.

Стоимость доставки до ПВЗ зависит от нескольких факторов:

ФакторКак влияет на цену и срок
Служба доставкиУ каждого перевозчика свои тарифы; одна и та же точка у разных служб стоит по-разному
Город и зонаРасстояние и зона доставки определяют базовый тариф и срок
Вес и габаритыТяжёлый и крупный заказ дороже; часть тарифов считается по объёмному весу
Тип точкиПостамат и ПВЗ у службы могут стоить по-разному
Наложенный платёжОплата при получении добавляет комиссию за перевод денег магазину

Есть два подхода к расчёту стоимости. Первый — брать тариф из API службы в реальном времени (точный, но зависит от доступности API и добавляет задержку). Второй — считать по собственной таблице тарифов и зон, синхронизированной с прайсом службы (быстрый и предсказуемый, но требует поддерживать таблицу в актуальном состоянии). На практике часто комбинируют: базовый расчёт по своей таблице, а точный тариф — при подтверждении заказа.

Как бы вы ни считали, ключевое правило одно: цена, которую покупатель увидел при выборе точки, и цена в оформленном заказе должны совпадать. Расхождение здесь — прямая причина конфликтов и отмен. Поэтому расчёт стоимости и выбор точки завязывают в один шаг оформления, где смена точки пересчитывает сумму, а сумма фиксируется вместе с выбранной точкой в заказе.

Важно: габариты и вес влияют и на список точек, и на стоимость. Используйте единый весогабаритный расчёт для обеих задач — иначе покупатель увидит точку, которая по цене посчиталась по одним параметрам, а по доступности отфильтровалась по другим.

Что сохранять в свойствах заказа

Когда покупатель выбрал точку, этот выбор нужно надёжно сохранить в заказе. Ошибка новичков — сохранить только адрес текстом. Адрес нужен человеку, но служба доставки принимает заказ по коду точки, поэтому в свойствах заказа должен лежать полный машинный контекст выбора.

Минимальный набор свойств заказа для выбранной точки:

В 1С-Битрикс это реализуется через свойства заказа (в модуле «Продажи» — свойства местоположения и произвольные свойства службы доставки). Код точки удобно хранить в отдельном свойстве, привязанном к выбранной службе доставки. Тогда при отправке заказа обработчик берёт службу из заказа, код точки из свойства и формирует запрос к нужному перевозчику.

Отдельно стоит подумать про валидацию на бэкенде. Нельзя доверять только тому, что пришло с фронтенда: покупатель (или сбой) может прислать несуществующий или закрытый код точки. Перед сохранением заказа проверьте, что код точки есть в справочнике, активен и подходит по габаритам. Это защищает от заказов, которые служба доставки не сможет принять.

Передача выбранного ПВЗ в службу доставки

Последний участок пути — довести выбранную точку до службы доставки. Здесь код точки, сохранённый в заказе, наконец используется по назначению. Есть два основных сценария передачи, и часто они сочетаются.

Через API службы доставки. Магазин создаёт заказ (отправление) в системе перевозчика программно: формирует запрос с данными получателя, содержимым, габаритами и — обязательно — кодом выбранной точки в поле пункта выдачи. Служба принимает заказ и возвращает трек-номер, который сохраняется в заказе и отправляется покупателю. Это самый автоматизированный путь: заказ уходит в службу без ручных действий менеджера.

Через выгрузку / личный кабинет службы. Если API-создание отправлений не подключено, заказы выгружают пакетом (файлом или через интеграцию с 1С), и там код точки подставляется в соответствующее поле. Менее автоматизированно, но работает, когда объём заказов небольшой или служба не даёт удобного API создания отправлений.

В любом сценарии критично одно: код точки должен дойти до службы в её формате без искажений. Частая беда — когда в заказе лежит адрес точки, но нет её кода, и менеджеру приходится вручную искать код по адресу в кабинете перевозчика. Именно поэтому мы с самого начала настаиваем на хранении машинного кода: он проходит весь путь от клика покупателя до приёмки в службе без ручного вмешательства.

Отдельно про надёжность передачи. Внешний API может быть временно недоступен в момент оформления заказа — это нормально, и на этот случай отправку в службу лучше делать не синхронно в момент оплаты, а фоново с повторными попытками. Тогда сбой у перевозчика не мешает покупателю оформить заказ, а отправление создаётся, как только API снова доступно. Подробнее про устойчивую работу с внешними API — в материале про интеграцию доставки через API в 1С-Битрикс.

Выбор точки code: MSK123 Свойство заказа Отправка в службу Трек- номер Ключевое правило Хранить машинный код точки, а не только адрес текстом
Схема: машинный код точки проходит весь путь от выбора на карте через свойство заказа до создания отправления в службе и трек-номера покупателю.

Несколько служб на одной карте

Зрелые магазины редко ограничиваются одной службой доставки. Одному покупателю ближе постамат 5Post у дома, другому — ПВЗ СДЭК у работы, третьему нужна Почта России, потому что в его городке больше ничего нет. Показывать точки нескольких служб на одной карте — сильный ход: покупатель выбирает удобный пункт, не думая, чья это сеть.

Что важно учесть при мультислужбе:

Альтернатива подключению каждой службы по отдельности — агрегатор доставки, который отдаёт точки многих перевозчиков через единый API. Это ускоряет старт (одна интеграция вместо пяти), но добавляет посредника и его комиссию. Выбор между «прямыми» интеграциями и агрегатором зависит от объёма заказов и того, насколько важен прямой контроль над тарифами и данными.

Совет: начните с прямой интеграции одной-двух ключевых служб, а агрегатор рассматривайте, когда служб становится много и поддержка отдельных интеграций отнимает больше, чем комиссия посредника.

Реализация в 1С-Битрикс

Соберём всё в конкретный план реализации на платформе 1С-Битрикс. Магазин работает на модуле «Интернет-магазин» с модулем «Продажи», где живут заказы, службы доставки и их свойства. Вот из каких частей складывается решение.

  1. Хранилище точек. Создайте highload-блок «Точки выдачи» (для больших сетей — отдельную таблицу) с полями: служба, код, тип, координаты, адрес, город, график, ограничения по весу и габаритам, сервисные флаги, признак активности.
  2. Импортёр точек. Напишите класс-импортёр на D7, который ходит в API каждой подключённой службы, нормализует ответ и обновляет highload-блок. Обработку ошибок и повторные попытки закладывайте сразу.
  3. Агент обновления. Повесьте импорт на агент или крон раз в сутки в часы низкой нагрузки. После импорта прогревайте кэш выборок по популярным городам.
  4. Службы доставки. В «Продажи → Службы доставки» заведите нужные службы (или профили) с типом «до пункта выдачи» и свойством для кода точки.
  5. AJAX-эндпоинт точек. Сделайте контроллер (компонент или ajax-роут), который принимает город и габариты корзины, читает из highload-блока, фильтрует по ограничениям и возвращает JSON со списком точек для карты.
  6. Компонент карты в оформлении. Встройте в шаблон sale.order.ajax (или кастомный компонент оформления) блок карты: подключите карту, запросите точки у эндпоинта, дайте выбрать и запишите код точки в свойство заказа.
  7. Расчёт стоимости. Свяжите выбор точки с расчётом доставки: при смене точки пересчитывайте цену и срок и фиксируйте их в заказе вместе с точкой.
  8. Отправка в службу. На событие смены статуса или по фоновой задаче формируйте отправление в API службы, подставляя код точки, и сохраняйте трек-номер в заказ.

Отдельно про размещение кода: бизнес-логику импорта, фильтрации и отправки правильно вынести в собственный модуль, а не разбрасывать по шаблонам компонентов. Так решение переживёт обновления платформы и смену дизайна оформления. Шаблон оформления должен только показывать карту и передавать выбор, а вся работа с API служб и справочником — в модуле.

Как это выглядит в админке и оформлении

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

Оформление заказа · Способ доставки: пункт выдачи Поиск по адресу… ПВЗ · ул. Ленина, 10 Пн–Вс 10:00–21:00 · 290 ₽ Постамат · ТЦ «Заря» Круглосуточно · 220 ₽ ПВЗ · пр. Мира, 47 Пн–Сб 09:00–20:00 · 310 ₽ П Пс П Выбрано · код точки: MSK-0142
Схема: слева список ближайших точек с ценой и графиком, справа карта с метками ПВЗ (П) и постаматов (Пс); внизу зафиксирован код выбранной точки. Реальный вид зависит от карты и шаблона оформления.

В карточке заказа в админке выбранная точка отображается как значения свойств доставки: служба, код точки, адрес. Менеджеру этого достаточно, чтобы понимать, куда едет заказ, а автоматике — чтобы сформировать отправление. Если по каким-то причинам отправка в службу не прошла (сбой API), в заказе остаётся код точки, и повторная попытка отправит его корректно, без ручного поиска пункта.

Смежная тема — как именно точки конкретных служб (Яндекс, Почта, 5Post) подключаются к оформлению и что учесть по каждой сети. Об этом у нас есть отдельный практический разбор про доставку через ПВЗ Яндекса, Почты и 5Post — если работаете именно с этими службами, посмотрите его в дополнение к этой статье.

Частые ошибки при внедрении

Мини-FAQ. Нужно ли обновлять справочник точек, если заказов мало? Да — точки закрываются и меняют график независимо от вашего трафика. Ежесуточный импорт дешевле, чем разбор заказов с неверными кодами пунктов.

Чек-лист внедрения

Сведём всё в практический список, по которому удобно принимать готовность выбора ПВЗ перед запуском:

  1. Справочник точек создан. Единое хранилище точек всех подключённых служб в общем формате, с кодом, типом, координатами и ограничениями.
  2. Импорт автоматизирован. Агент раз в сутки обновляет точки из API служб, деактивирует пропавшие, прогревает кэш.
  3. Карта в оформлении работает. Определяется город, показываются ближайшие точки с метками ПВЗ и постаматов, есть поиск и явный выбор.
  4. Фильтрация по габаритам включена. Список точек отсекает пункты, куда заказ физически не влезает; расчёт габаритов единый с калькулятором доставки.
  5. Стоимость связана с выбором. При смене точки пересчитываются цена и срок; итог фиксируется в заказе и совпадает с показанным.
  6. Свойства заказа заполнены. В заказе лежит служба, машинный код точки, тип, адрес, координаты и зафиксированная стоимость.
  7. Валидация на бэкенде. Перед сохранением проверяется, что код точки существует, активен и подходит по габаритам.
  8. Передача в службу настроена. Отправление создаётся по коду точки фоново с повторными попытками; трек-номер возвращается в заказ.

Вывод

Выбор ПВЗ и постаматов на карте в оформлении заказа — это не просто удобная карта, а цепочка из нескольких звеньев: собственный справочник точек, наполняемый импортом из API служб доставки, фильтрация по габаритам, расчёт стоимости и надёжная передача машинного кода точки в заказ и дальше в службу. Соберите эту цепочку правильно — и вы получите меньше недозвонов и отмен, более высокую конверсию оформления и корректную выгрузку заказов в перевозчиков без ручного труда. Хранить код точки, а не только адрес, обновлять справочник по расписанию и фильтровать точки по реальным габаритам заказа — три простых правила, которые отделяют работающую интеграцию от источника постоянных проблем на складе.

Частые вопросы

Чем выбор ПВЗ на карте лучше обычного текстового поля адреса?

Карта показывает покупателю только реально доступные точки выдачи и постаматы рядом, с адресом, графиком работы и стоимостью доставки до каждой. Он не ошибётся с адресом ПВЗ и сразу видит ближайший пункт. Для магазина это меньше недозвонов «уточните пункт выдачи», меньше отменённых заказов и корректный код точки, который автоматически уходит в службу доставки.

Откуда брать список пунктов выдачи и постаматов?

Точки выдачи отдают сами службы доставки через свои API: СДЭК, Boxberry, PickPoint, 5Post, Почта России, Яндекс Доставка и агрегаторы вроде DPD или МультиОтправки. Каждая служба возвращает список ПВЗ с координатами, адресом, режимом работы, габаритными и весовыми ограничениями. Эти данные удобно раз в сутки складывать в собственную таблицу или highload-блок и оттуда отдавать на карту, а не дёргать чужой API на каждый клик покупателя.

Нужно ли обновлять список ПВЗ и как часто?

Да, список точек меняется: пункты открываются, закрываются, меняют график и ограничения по габаритам. Оптимально обновлять кэш точек выдачи раз в сутки агентом или по крону в часы низкой нагрузки. Постаматы и координаты меняются реже, но полный перезалив справочника раз в день гарантирует, что покупатель не выберет уже закрытый пункт, а служба доставки примет заказ без ошибки «неизвестный код ПВЗ».

Как передать выбранный ПВЗ в службу доставки при создании заказа?

При выборе точки на карте её код (идентификатор пункта в системе службы) и параметры сохраняются в свойства заказа. Когда заказ уходит в службу доставки через API или через выгрузку, этот код подставляется в поле пункта выдачи. Важно хранить именно машинный код точки, а не только её адрес текстом — служба принимает заказ по коду, а адрес нужен лишь покупателю для понимания, куда ехать.

Влияют ли габариты и вес заказа на список доступных ПВЗ?

Да. У постаматов есть ограничение по размеру ячейки, а у части ПВЗ — по максимальному весу и габаритам посылки. Крупный или тяжёлый заказ нельзя выдать через маленький постамат. Поэтому список точек нужно фильтровать по рассчитанным габаритам корзины: считаем суммарные вес и размеры заказа и показываем только те пункты, которые физически могут принять эту посылку.

Можно ли подключить несколько служб доставки с ПВЗ одновременно?

Да, и это частый сценарий. На одной карте можно показывать точки сразу нескольких служб (например, СДЭК плюс Boxberry плюс постаматы 5Post), помечая их разными цветами или фильтром по перевозчику. Тогда покупатель выбирает удобный ему пункт независимо от того, чья это сеть, а магазин на бэкенде маршрутизирует заказ в нужную службу по признаку выбранной точки.

Поделиться:

Нужен выбор ПВЗ и постаматов на карте в вашем магазине?

Подключим службы доставки, настроим импорт точек, карту в оформлении, расчёт стоимости и передачу заказов в перевозчиков на вашем 1С-Битрикс. Рассчитаем стоимость по вашему набору служб.

Услуга «Интеграции»

Игорь Воскресенский

Основатель студии B2Bsite. С 2014 года команда разрабатывает и поддерживает интернет-магазины и корпоративные сайты на 1С-Битрикс, подключает службы доставки, ПВЗ и постаматы, настраивает расчёт стоимости и обмен заказами с перевозчиками для среднего и крупного бизнеса.

← Все статьи блога