CatCode Delivery with Nova Poshta for WooCommerce
CatCode Delivery with Nova Poshta for WooCommerce
Description
The plugin adds a Nova Poshta shipping method to WooCommerce together with a branch picker that lives inside the checkout itself, so the customer never leaves the page or types an address by hand.
Nova Poshta is the largest parcel carrier in Ukraine. Its branches and parcel lockers are how most Ukrainian online orders are delivered, and the carrier expects a branch reference rather than a street address, which is why a plain address field does not work for these shops.
What it does
- City search with suggestions, plus a one-click list of the largest cities.
- Branch or parcel-locker selection from the carrier’s live directory.
- Delivery cost calculated through the carrier API, with an optional surcharge and free shipping above an order total.
- Waybill created from the order screen, or automatically when the order reaches a status you choose.
- Shipment log in the admin area with tracking links, and manual status refresh.
- City and branch directories are cached in the plugin’s own tables, so the checkout never waits for the API.
- The API key is stored encrypted.
- Works with both the classic checkout and the block checkout.
Nova Poshta is a third-party service. This plugin is an independent integration built on the carrier’s public API and is not affiliated with, endorsed by, or sponsored by Nova Poshta.
External services
This plugin connects to the Nova Poshta carrier API to look up cities and branches, calculate delivery cost and create waybills. Nothing is sent until you enter your own API key in the shipping method settings.
Nova Poshta API — https://api.novaposhta.ua
- When the checkout is displayed: the city and branch search terms typed by the customer, so the matching directory entries can be returned.
- When a delivery cost is calculated: the sender and recipient city references, cart weight and declared value.
- When a waybill is created: the recipient name, phone number, chosen branch, order total, weight and declared value, together with your sender profile.
- When a shipment status is refreshed: the waybill number.
The city and branch directories are also downloaded in bulk and cached locally so the checkout does not query the carrier on every page load.
Terms of service: https://novaposhta.ua/more/public-agreement-for-cbs
Privacy policy: https://novaposhta.ua/more/privacy-policy
Опис українською
Плагін додає доставку Новою Поштою у WooCommerce разом з вибором відділення прямо на сторінці оформлення замовлення — покупець не залишає сторінку і не вписує адресу руками.
- Пошук міста з підказками і список найбільших міст в один клік.
- Вибір відділення або поштомата з живого довідника перевізника.
- Розрахунок вартості доставки через API Нової Пошти, з можливою націнкою і безкоштовною доставкою від суми замовлення.
- Створення ТТН (експрес-накладної) з картки замовлення або автоматично при переході в потрібний статус.
- Журнал відправлень в адмінці з номерами накладних, посиланнями на трекінг і оновленням статусів.
- Довідники міст і відділень кешуються у власних таблицях плагіна, тож оформлення замовлення не чекає на API.
- API-ключ зберігається зашифрованим.
- Працює і з класичним оформленням замовлення, і з блоковим (Gutenberg).
Нова Пошта — сторонній сервіс. Цей плагін є незалежною інтеграцією на публічному API перевізника і не афілійований з Новою Поштою.
Installation
- Install and activate the plugin.
- Go to WooCommerce Settings Shipping and add the “Nova Poshta” method to the zone you need.
- Paste your API key (Nova Poshta account: Settings Security API keys) and save.
- Press “Test connection”, then fill in the sender profile.
- Optionally choose the order status that triggers automatic waybill creation.
Screenshots

Checkout: the delivery block with city search and suggestions from the carrier directory.

Branch and parcel-locker list for the city the customer picked.

Shipment log in the admin area — waybill numbers with live carrier statuses.

Shipping-method settings: API key, connection tests and the rate options.
Faq
An API key from your Nova Poshta account is enough to calculate rates and show branches. Creating waybills additionally requires a sender profile configured in that account.
Yes. The selection is kept in the WooCommerce session, so the classic checkout and the block checkout behave the same way.
Under WooCommerce Nova Poshta. The waybill number is also shown on the order screen.
The source strings are English. Ukrainian and any other locale are translated on translate.wordpress.org and delivered by WordPress automatically.
Reviews
Changelog
1.0.3
- Fixed two waybills for one order: auto-creation on status change and the admin button (or two clicks in a row) could mint two real Nova Poshta shipments at once. Waybill creation is serialised now, and the second call sees the existing number.
1.0.2
- Ukrainian translation bundled again — 1.0.1 shipped an English-only interface.
- readme: Ukrainian description and keywords.
1.0.1
- Rate calculation through the Nova Poshta API is now an opt-in setting and is off by default, so the delivery cost you set is no longer replaced by the carrier tariff.
- A zero cost is no longer shown as “Free!” — the method is labelled “(paid on pickup)” and the price reads “at the carrier’s rates”. Free shipping above an order total works as before.
- Removed unused code paths left over from an internal build: cash-on-delivery fields on the waybill, return waybills, webhook tables and their scheduled events.
- Translations are now handled entirely through translate.wordpress.org; bundled .po/.mo files removed.
1.0.0
- First release: checkout branch picker, live rates, waybill creation, shipment log.