Ukrposhta — выбор отделения и тариф для WooCommerce
Выбор отделения Укрпочты в чекауте (область → город → отделение) и живой тариф через eCom API. Бесплатно, код открыт на GitHub.
Что внутри
- Выбор отделения Укрпочты прямо в чекауте WooCommerce
- Справочник на базе официального Адресного классификатора
- Живой расчёт стоимости доставки через eCom API
- Комиссия за наложенный платёж — только для наложенных заказов
- Выбранное отделение видно в заказе, письмах и на странице благодарности
- Кеш справочников для быстрого чекаута
- Совместимость с HPOS
- Бесплатный
Ukrposhta Shipping for WooCommerce — плагин доставки Укрпочтой для магазинов на WooCommerce. Покупатель выбирает отделение прямо в чекауте по цепочке область → город → отделение, а стоимость доставки считается вживую через официальный eCom API Укрпочты. Данные берутся из официального Адресного классификатора, поэтому список отделений всегда актуален, а выбранный почтовый индекс сохраняется в заказе.
Плагин полностью бесплатный. Код открытый — репозиторий на GitHub (catcodestudio/woocommerce-ukrposhta-shipping), лицензия GPLv2.
Как это выглядит для покупателя


После выбора метода «Укрпочта» в чекауте появляется виджет: покупатель выбирает область, потом город, потом конкретное отделение. Как только отделение выбрано — плагин запрашивает тариф в eCom API (с учётом веса корзины и индексов отправителя и получателя) и показывает реальную стоимость доставки. Акцентный цвет виджета настраивается под дизайн темы.
Что получает админ


Метод добавляется в зону доставки WooCommerce, а креденшелы глобальные — один Bearer на весь магазин, независимо от количества зон. В настройках: тестовая среда (sandbox dev.ukrposhta.ua), тип услуги (Стандарт или Express), тариф по умолчанию на случай недоступности API и порог бесплатной доставки от суммы заказа. Выбранное покупателем отделение видно прямо в заказе — отдельный блок «Укрпочта» с городом, отделением и индексом, а также строкой в письмах и на странице благодарности.
Как это работает — шаг за шагом
- Админ вводит Bearer eCom и индекс отправителя, добавляет метод «Укрпочта» в зону доставки.
- Покупатель в чекауте выбирает доставку Укрпочтой — появляется пикер область → город → отделение на базе официального Адресного классификатора.
- Плагин считает вес корзины и запрашивает тариф через эндпоинт
/domestic/delivery-price; если API недоступен — подставляется фиксированная ставка из настроек. - Если покупатель выбрал наложенный платёж, в тариф добавляется комиссия Укрпочты за него — и исчезает, как только он переключится на предоплату.
- Если сумма заказа превышает заданный порог — доставка становится бесплатной.
- Покупатель оформляет заказ — выбранный почтовый индекс отделения сохраняется в заказе и доступен админу для отправления.
Сколько стоит
Бесплатно. Плагин распространяется под лицензией GPLv2, код открыт на GitHub. Платных версий или подписок нет.
Технические требования
- WordPress 5.6+ (протестировано до 6.7)
- WooCommerce 6.0+ (протестировано до 10.7)
- PHP 7.4+
- Договор eCom с Укрпочтой: Bearer-ключ выдаёт ваш менеджер Укрпочты после подписания договора — он нужен и для классификатора адресов, и для тарифа
Что под капотом
- Bearer-ключ хранится зашифрованным (at-rest), в форме настроек обратно в открытом виде не показывается.
- Справочник отделений кешируется в отдельной таблице
upwc_offices, список областей — в транзиенте: чекаут не дёргает API Укрпочты при каждом открытии. - Совместимость с HPOS (custom order tables) задекларирована официально; мета заказа снимается и на классическом чекауте, и на Store API (блочном) пути.
- Тариф учитывает вес товаров в корзине, объявленную ценность (по желанию) и комиссию за наложенный платёж — но только для тех способов оплаты, которые вы отметили как наложенный платёж.
- Выбранное отделение входит в пакет доставки WooCommerce, поэтому смена отделения или способа оплаты пересчитывает тариф, а не показывает закешированный.
- Поиск города понимает латиницу: «Drohobych» находит Дрогобыч.
- Translation-ready: текстовый домен и все строки готовы к переводу.
Как установить
- Скачайте
ukrposhta-shipping-for-woocommerce-1.1.1.zipи установите через «Плагины → Добавить новый → Загрузить плагин». - Активируйте плагин — таблица кеша отделений создастся автоматически.
- Перейдите в WooCommerce → Настройки → Доставка и добавьте метод «Укрпочта» в нужную зону.
- Введите Bearer eCom и индекс отправителя, сохраните.
- Включите метод — пикер отделения появится в чекауте.
История версий
- 1.1.1 — август 2026
- Исходные строки переведены на английский, украинская локализация уехала отдельным переводом в составе плагина — теперь модуль можно перевести на любой язык, а на украинском он выглядит так же. Подписи виджета в чекауте тоже стали переводимыми. Подготовлена сборка для каталога wordpress.org.
- 1.1.0 — август 2026
- Живой тариф Укрпочты наконец считается: измерения надо слать в
parcels, а индекс отправителя — строкой (01001 превращался в 1001, и API отклонял запрос). До этого в чекауте всегда показывалась фиксированная ставка. Комиссия за наложенный платёж больше не добавляется к предоплаченным заказам. Выбранное отделение видно в заказе, в письмах и на странице благодарности. Чекаут не пропускает заказ без выбранного отделения. Объявленная ценность стала опциональной. Поиск города понимает латиницу. Виджет прячется, пока не выбрана Укрпочта, и не появляется на странице благодарности. - 1.0.1 — июль 2026
- Работа на хостингах без mbstring: поиск городов и описание посылки больше не молчали. Планка требований снижена до WordPress 5.6 / WooCommerce 6.0 / PHP 7.4.
- 1.0.0 — июль 2026
- Первый публичный релиз: пикер отделения (область → город → отделение) в чекауте и живой расчёт тарифа через eCom API с фолбеком на фиксированную ставку.
Частые вопросы
Можно ли отправлять наложенным платежом?
Да. В настройках есть поле «Способы оплаты = наложенный платёж» — впишите туда ID ваших платёжных методов (стандартный метод WooCommerce — cod). Для них плагин добавит в тариф комиссию Укрпочты за наложенный платёж. Создание самой ТТН с наложенным платежом — в следующем обновлении.
Почему тариф выше, чем на калькуляторе Укрпочты?
По умолчанию плагин передаёт сумму заказа как объявленную ценность — Укрпочта берёт за это процент, зато посылка застрахована. Это выключается одной галочкой в настройках.
Нужен ли договор с Укрпочтой?
Да. И Адресный классификатор, и расчёт тарифа авторизуются Bearer-ключом, который Укрпочта выдаёт после подписания договора eCom.
Работает ли с блочным чекаутом WooCommerce?
Пикер отделения таргетит классический чекаут. Мета заказа при этом снимается и на Store API (блочном) пути, а совместимость с cart/checkout blocks задекларирована.
Умеет ли плагин создавать ТТН и печатать наклейки?
Ещё нет. Создание отправления (штрихкод/ТТН), печать наклеек и наложенный платёж запланированы в следующем обновлении — после сквозной проверки на живом договоре.
Что будет, если API Укрпочты временно недоступен?
Чекаут не сломается: вместо живого тарифа подставится фиксированная ставка из настроек («Тариф по умолчанию»).
Можно ли протестировать без боевого ключа?
Да, в настройках есть переключатель Sandbox — плагин будет работать с тестовой средой dev.ukrposhta.ua.
Что останется после удаления плагина?
При удалении убираются таблица кеша отделений и опции плагина. Мета заказов (выбранные отделения) сохраняется — история доставок не теряется.
Вопросы по модулю?
Пишите в Telegram — ответим в течение рабочего дня. Поможем с настройкой, совместимостью и активацией ключа.
Пока ни одного отзыва. Будь первым — ниже.
Оставить отзыв
Отзыв модерируется перед публикацией — обычно это занимает до 24 часов.
Пока вопросов нет. Спроси — мы ответим в течение 24 часов.
Задать вопрос
Обычно отвечаем в течение 24 часов в рабочее время.
Покупка модуля
—