Nova Poshta Service Shopify App
Calculate Nova Poshta shipping costs, and allow customers to select the nearest Nova Posta Warehouse
Nova Poshta (Nova Post) is one of Ukraine’s largest logistics companies, serving both individuals and businesses. With over 8,700 branches, 8,500 parcel lockers, and more than 400 million parcels delivered annually across Ukraine and abroad. Even in the most challenging times, Nova Poshta has remained resilient, helping Ukrainian businesses stay connected to their customers.
Our Nova Poshta Service app integrates Nova Poshta shipping directly into Shopify.. Designed for ease of use, it requires no coding, just install the app from the Shopify App Store, enter your Nova Poshta API key, and you’re ready to go. Whether you run a local store or ship internationally, the app simplifies your shipping process so you can focus on growing your business.
You can configure sender details (your store address or a Nova Poshta warehouse), choose delivery types like Door-to-Door or Door-to-Warehouse, set flat shipping rates, or offer free delivery above a certain order value. Default product weight and size settings ensure accurate cost estimates, even when item dimensions are missing.
Customers can select their nearest Nova Poshta branch during checkout (with active CCS) or from the list of Nova Post branches on the Thank You page. You can calculate shipping by order value, product size, distance, and delivery method. Set fixed packaging dimensions or use product-specific parameters. Generate TTNs (manually or automatically), track shipments, and print shipping labels in multiple formats, all from within your Shopify admin.
To reduce failed deliveries, the app uses OpenAI to help correct address errors, such as mismatched postal codes or typos in Cyrillic or Latin.
For international delivery, the app supports Nova Global, enabling seamless delivery beyond Ukraine’s borders.
We continuously improve this app to support resilient Ukrainian merchants who keep delivering, adapting, and growing. Many of its features were developed in direct response to merchant requests, so if you have feedback or a specific need, please reach out to us. We're always open to ideas and ready to help.
Installation and basic configuration
-
Log in to your Shopify store > Go to Shopify App Store > Search for Nova Poshta Service
-
Click "Install"
-
Click "Install"
-
Click "Approve"
-
To proceed with the configuration, click "Configure Application".
-
To connect the app to your Nova Poshta account you have to enter Nova Poshta API Key. Enter "Nova Poshta" API key.
You can find Nova Poshta API key in your Nova Poshta account.
-
Select the language (English / Ukrainian)
-
Select sender address, it can be address or Nova Poshta branch. You have to set up address or preferred Nova Poshta warehouse in your Nova Poshta account first.
-
Select the allowed for delivery types of Nova Poshta warehouses.
- Post office with limitations
- Postal (or post)
- PrivatBank parcel locker
- Cargo
- Parcel locker
- Select packaging parameters. Set Packaging Parameters (fixed box dimensions or use product parameters)
This information is required not only for the shipping cost calculation. If the weight or dimensions are not specified for the product, these values will be used. But also to display for customers (and in the admin panel) just Nova Poshta branches that can accept the order based on its parameters.
- Save Changes
Display dropdown with Nova Poshta branches without shipping cost calculation + Result
Let's take a look at basic settings without shipping cost calculation (without activating third-party carrier-calculated shipping (CCS)). Don't register
Starting from August 2025, Shopify is updating the checkout customization capabilities for the Basic, Shopify, and Advanced plans, and will be disabling previously installed scripts on the "Thank You" and "Order Status" pages. Therefore, to display a dropdown menu with Nova Poshta branches on these pages, the widget will need to be manually added in the checkout customization section. You can read more about these changes in Shopify's changelog.
-
To display the dropdown with warehouses we need to add them on the Checkout (Thank you Page or Order Status Page). Go to Settings
-
Select Checkout
-
Nova Poshta requires customer phone number that's why "Shipping address phone number" should be required
Select Required
Save Settings
-
Now we need to add the app to the Theme. Click "Customize"
-
Click on Apps
-
Click add
-
Select on what page you want to show the dropdown with Nova Poshta warehouses. We select "Thank you" Page but it also can be Order Status Page if needed
-
Save Changes
-
Go back
-
Now we need to set up Shipping rates manually (with activated CCS Nova Poshta rates are created automatically). Click "Shipping and delivery"
-
Select "General shipping rates"
-
Click "Add rate"
-
Select Rate Type. In case without CCS activation, we can select just "Use flat rate"
-
Click on "Custom rate name"
-
Set a Custom Shipping Rate Name. This will be displayed to your customers
-
You also can add custom description to the Shipping Rate. For instance, use it as a hint that the Warehouse selection will be on the next step
-
Set the "Price"
-
Add a Fixed Price, if needed
-
Click "Done"
-
Save Changes
Result on the frontend
Order functionality
Apps >> Nova Poshta Service >> Orders
Products in order preview with images and amount
Select or edit selected Nova Poshta branch
Customer information with a link to the customer profile in the Shopify
Click on Order # to navigate to the order in Shopify
At the Order page, you can also find the order tracking number with a link to live tracking
Track order
Create TTN manually or automatically
You can create TTN manually
Or set up automatic TTN generation.
!Please note, if you set up sending from the address (not from the Nova Post warehouse), then every time the TTN generates it will call a courier.
If there is an issue during TTN generation, you will see a notification with explanation here.
View TTN details
Print TTN
You also can print labels in different formats.
Go to Configuration >> TTN Configuration >> Print and select the format that works for you
And with different contents
Configuration >> TTN Configuration >> Contents Description >> Product Names as description or add custom description
Set up the app with calculation of shipping cost (CCS activation required)
To enable shipping calculation, press Register for Carrier Service.
Note! Shopify requires activating third-party carrier-calculated shipping (CCS) for shipping cost calculation. To activate CCS, your store must meet the following plan requirements:
Included by default:
- Advanced Shopify plan
- Shopify Plus plan
Available with additional options: Grow plan: Add CCS by paying $20 USD per month OR switching from monthly to yearly billing
Not available:
- Basic Shopify plan
- Shopify Starter plan
Merchants on Basic or Starter plans must upgrade to at least the Grow plan and either pay the $20 USD monthly fee or switch to annual billing to access CCS.
For CCS activation and more information, contact Shopify Support.
Nova Poshta Service app can also work without shipping calculation (without CCS activation). Dropdown with Nova Poshta branches on the page after payment without activating Carrier Calculated Shipping (CCS). Under this condition, the application does not calculate the shipping cost, but uses a fixed shipping price that you set. The function of the automatic generation of TTN is preserved. See how to set up.
-
Select preferable Carrier Methods (Warehouse-Doors / Warehouse-Warehouse / both). You can also change the order of displaying shipping methods to customers. Just drag and drop the required method above.
-
Display delivery cost: Carrier Calculated or Flat Rate
-
Set Free delivery for orders above some price
-
Add Custom carrier service name and description
-
Decide what to display first (Address delivery or Delivery to Warehouse)
You can also add Packaging Handling Fee - an extra cost for packaging to each order. This fee will be added to the total shipping cost.
Display the nearest Nova Poshta warehouses on the Checkout Page (CCS activation required) + Result
The nearest Nova Poshta warehouses on the Checkout Page. Result
Nova Global: International delivery + Result
Nova Poshta Service Shopify App can also calculate and display rates for international delivery via Nova Global.
How to set up global rates?
The same as for domestic (Ukraine) delivery CCS activation is required for shipping cost calculation.
Let's try on example of international Nova Post delivery to Poland. Create a rate for Poland (you need to add it to your markets first)
Now customers can select Nova Post carrier to deliver to Poland. The app calculates shipping cost based on table rates from Nova Post
Payment for order on the website and for delivery at a Nova Poshta branch
This is one of the most requested feature, but Shopify doesn't allow splitting the payment. There is a way how to bypass this restriction. You can create a custom shipping method with the tariff set as Free. Then, in the theme's translation file, replace "Free" with your own text, for example, "According to Nova Poshta tariffs".
How to change text in the theme's translation file in Shopify:
- Log in to your Shopify admin panel.
- Go to Online Store >> Themes.
- Find the theme you are using and click on the Actions dropdown.
- Select Edit languages.
- In the search box on the language editor page, type "shipping" or another keyword that might bring up the text for the shipping method.
- Find the field that contains the shipping text you want to change. It might be in sections like Shipping methods, Checkout and system, or similar sections. If the "Free" text is associated with a specific shipping method, it should appear in the search results. Replace "Free" with the text you prefer.
- After editing the text, be sure to click the Save button at the top of the page to apply your changes.
Note: If your store is set up in multiple languages, you will need to change this text in each language file.
After this, at checkout, this shipping method will appear as:
After payment, the buyer will be able to select the required Nova Poshta branch from a dropdown menu.
Note: In this configuration, you will need to manually change the payer in the consignment note, because by default, the payer is the sender.
How to set up shipping cost calculation based on the dimensions of each product?
Nova Poshta Service app can also calculate shipping costs based on the length, width, height and weight of each product. Weight is a standard parameter and you can set weight in each product. For length, width, and height you need to create Metafields.
Settings >> Metafields and metaobjects >> Products >> Product metafield definitions (Add definition)
Create one by one 3 metafields and call them length, width, height
Name: Length Namespace: custom.{key} where {key} is height, length, width (custom.length) Select type - Decimal Input should be in cm (Length in cm) Select type - Decimal Access - select Storefronts Save settings.
Now go to the product page and you will see new fields Length, Width, and Height. Set up product sizes.
Save changes.
Available payment options
Card payment
- The customer pays for the delivery on the website.
- The sender is responsible for paying the shipping cost.
Card payment + Free Shipping
- The sender provides free shipping, therefore paying for the shipment at their own expense.
After payment
- The customer pays for the delivery.
- The customer sends the money.
After payment + Free Shipping
- The customer sends the money (cash on delivery).
- The sender provides free shipping, therefore paying for the shipment at their own expense.
Card payment (NOT PROVIDED)
- The customer pays for the product on the website.
- The customer pays for the delivery at the pickup point.
Nova Poshta Service Privacy Policy
Nova Poshta Service "the App” provides Eltrino "the Service" to merchants who use Shopify to power their stores. This Privacy Policy describes how personal information is collected, used, and shared when you install or use the App in connection with your Shopify-supported store.
Personal Information the App Collects
When you install the App, we are automatically able to access certain types of information from your Shopify account:
1. Shop information Shopify Accounts linked to an app are provided basic information about the shop by Shopify. This includes personal information such as the shop’s address, email, phone, location, locale and store owners name and email address. This information is needed to customize the application based on the shop details, as well as to help identify customer service requests.
2. Nova Poshta API key Required to validate integration with your Nova Poshta business account.
3. Order delivery information (shipping rates) Required in order for the App to generate shipping rates within your shop’s checkout process. We save “Cookies” only from the admin panel of your Shopify account. For more information about cookies, and how to disable cookies, visit https://www.allaboutcookies.org/cookies/session-cookies-used-for.html
How Do We Use Your Personal Information?
We use the personal information we collect from you and your customers in order to provide the Service and to operate the App. Additionally, we use this personal information to: communicate with you; optimize or improve the App.
Sharing Your Personal Information
Finally, we may also share your Personal Information to comply with applicable laws and regulations, to respond to a subpoena, search warrant or other lawful request for information we receive, or to otherwise protect our rights. Additionally, if you are a European resident we note that we are processing your information in order to fulfill contracts we might have with you (for example if you make an order through the Site), or otherwise to pursue our legitimate business interests listed above. Additionally, please note that your information will be transferred outside of Europe, including to Canada and the United States.
Changes
We may update this privacy policy from time to time in order to reflect, for example, changes to our practices or for other operational, legal or regulatory reasons.
Contact Us
For more information about our privacy practices, if you have questions, or if you would like to make a complaint, please contact us by e-mail at privacy@eltrino.com, or by mail using the details provided below.
Tatarska St. 22A
Kyiv, 04107
Ukraine
+380 (98) 921-72-00
5348 Vegas Drive, Suite 653
Las Vegas, NV 89108
United States
+1 (702) 727-3738
Keurenplein 41
Unit E1390
1069CD Amsterdam
The Netherlands
+31 (0) 6 25 52 41 68
This policy is effective as of 25 May 2020.