Skip to content
Nabava.net
Price comparison

Nabava.net feed for Shopify

Nabava.net is Croatia's price comparison site, and its feed spec is an unusual one: only four fields are mandatory, the element names are officially a template rather than a contract, and the structure you agree on must then stay stable. Feedflock builds your Nabava.net XML feed from Shopify on a template written against Nabava's own Specifikacija cjenika and its sample files, hosts it on the fixed URL Nabava polls four times a day, and regenerates it every hour.

01 · ShopifyProduct in the catalog
Linen shirt SandNordlin · Men's shirtsSKU-2048 · S–XL
Price
49 €
In stock
0 pcs
When out of stock
02 · nabava.xmlUpdated just now
<product>
<name>Linen shirt Sand</name>
<price>49.00</price>
<url>https://shop.example/products/linen-shirt-sand?variant=44718293450817</url>
<availability>2</availability>
<internal_product_id>SKU-2048</internal_product_id>
<parent_id>8236409175213</parent_id>
<category>Moda &gt; Muška odjeća &gt; Košulje</category>
<image_url>https://cdn.shop.example/img/linen-shirt-sand.jpg</image_url>
<additional_image_url>https://cdn.shop.example/img/linen-shirt-sand-back.jpg</additional_image_url>
<description><![CDATA[A breathable linen shirt in a regular cut.]]></description>
<ean>8594000123453</ean>
<mpn>SKU-2048</mpn>
<brand>Nordlin</brand>
<specification>
<key>Veličina</key>
<value>M</value>
</specification>
</product>
−20% off compare-at
Productpricepromo price
Linen shirt Sand49.00 €39.20 €
Mug Fjord 350 ml15.00 €12.00 €
Backpack Ridge 28 l75.00 €60.00 €
Soy candle Les14.00 €11.20 €
Wool scarf Fjell29.00 €23.20 €
36.40 €saved across these products
5 / 5products with the sale overlay
Sale prices

A discount is two prices, and Nabava reads both.

Nabava has no sale flag. Instead, when regular_price is set and differs from price, price is understood as the promo price and Nabava can highlight the discount with the classic strikethrough. Try the slider: at 0 % regular_price leaves the feed and the offer sells at full price again.

Feed health

Catch feed issues before Nabava.net does.

Before every generation Feedflock checks that every field the channel requires is filled, and, on templates verified against the channel's own spec, that the values fit its rules. Most problems are fixed with one click, without editing products in Shopify.

Feed quality · nabava.xml
76 / 100
To review: 4
Missing availability on 7 variantsavailability is one of Nabava's four mandatory fields. These variants have no stock mapping, so the element is left out and the offer is incomplete.
Names without the distinguishing specs on 9 productsNabava's semi-automated categorization and its on-site search both run on name. A name that does not say how the item differs from similar ones lands in the wrong category.
No barcode on 12 variantsThe barcode is recommended and one of the two strongest categorization signals alongside name. Fill the ean element with the code from the packaging.
shipping_cost filled although rates varyNabava's rule: if the delivery price is not one uniform amount for all of Croatia, shipping_cost must stay empty and the details belong in shipping_info.

Setup

Live in five steps

From a bare Shopify store to a listed offer: the whole setup fits into one coffee break.

  1. Set up your shop with Nabava

    Arrange your listing with Nabava.net. The shop account is where your store-level shipping terms live and where the feed's URL gets registered. A manual upload through the account UI is the documented alternative to a hosted file.

  2. Install Feedflock

    Add Feedflock from the Shopify App Store. It reads your products, variants, stock and images directly through the Shopify API.

  3. Pick the Nabava.net template

    Create a new feed and choose the Nabava.net template. The four required fields (name, price, url and availability) are mapped from the start, and internal_product_id, category, image_url, description, ean and brand fill from SKU, product type, images and barcode.

  4. Check availability and shipping

    Availability goes out as Nabava's coded values: 1 when the variant is sellable, 0 when it is not. shipping_cost defaults to empty, the spec's own answer when delivery is not one nationwide amount; your shop-level terms in the Nabava account apply, or set 0 for free delivery.

  5. Hand over the feed URL

    Copy the hosted feed URL into your Nabava registration. Nabava checks it at 7:30, 10:30, 13:30 and 17:30, and Feedflock regenerates the file every hour on the same address, so there is nothing to re-send, and nothing structural ever changes silently.

    https://feedflock.appfleece.com/f/demo-nabava/nabava.xml

The feed

What the channel receives

nabava.xml
<product>
  <name>Linen shirt Sand</name>
  <price>49.00</price>
  <url>https://shop.example/products/linen-shirt-sand?variant=44718293450817</url>
  <availability>1</availability>
  <internal_product_id>SKU-2048</internal_product_id>
  <parent_id>8236409175213</parent_id>
  <category>Moda &gt; Muška odjeća &gt; Košulje</category>
  <image_url>https://cdn.shop.example/img/linen-shirt-sand.jpg</image_url>
  <additional_image_url>https://cdn.shop.example/img/linen-shirt-sand-back.jpg</additional_image_url>
  <description><![CDATA[A breathable linen shirt in a regular cut.]]></description>
  <ean>8594000123453</ean>
  <mpn>SKU-2048</mpn>
  <brand>Nordlin</brand>
  <specification>
    <key>Veličina</key>
    <value>M</value>
  </specification>
</product>
Live preview
Linen shirt Sand

Nordlin

Linen shirt Sand

49 €

Feed fields

name

Linen shirt Sand

price

49.00

url

https://shop.example/products/linen-shirt-sand?variant=44718293450817

availability

1

internal_product_id

SKU-2048

parent_id

8236409175213

category

Moda › Muška odjeća › Košulje

description

A breathable linen shirt in a regular cut.

ean

8594000123453

mpn

SKU-2048

brand

Nordlin

key

Veličina

value

M

The channel

Croatia's own price comparison

Nabava.net is the Croatian price comparison site, run by Aplos d.o.o. from Zagreb, the same team and platform behind Pametno.rs in Serbia and Pametno.si in Slovenia. For a Czech shop already pricing in euro, Croatia is a natural next market.

Pairing that reads your names

Categorization on Nabava is semi-automated and human-assisted, and it leans on the product name plus a barcode, the same name visitors type into the search. A clear, specific name puts your offer on the right card next to your competitors.

Every variant its own offer

Feedflock sends one <product> per sellable variant, grouped under a shared parent_id, each with its own URL that opens on exactly that variant, so a size or colour never inherits another variant's price.

The feed

  • A template written against Nabava's official Specifikacija cjenika and its three sample files: the four mandatory fields mapped from the start, the rest filled from SKU, barcode, vendor and product type
  • Prices go out as the final consumer price incl. PDV with a dot decimal and no currency element, exactly the shape Nabava's own sample writes
  • Availability derives from Shopify stock as the coded values 1 and 0, which Nabava maps onto its five canonical states; free text is one click away
  • Variant options become structured <specification> blocks with Croatian keys (Boja, Veličina, Materijal, Spol), so Nabava shows them as proper specs
  • shipping_cost defaults to empty, the spec's own answer for non-uniform delivery, with 0 = free delivery as a suggestion; the details ride in shipping_info
  • The output follows Nabava's sample structure and field order, so no custom-structure agreement is needed, and the feed's shape never changes without you knowing
  • Fetch tracking shows when Nabava last downloaded the feed and alerts you if the pulls stop

Deep dive

01

A fixed URL, checked four times a day

  • Nabava polls one fixed feed address; its check times are 7:30, 10:30, 13:30 and 17:30
  • UTF-8 XML is the preferred form; XLS/XLSX and CSV/TXT are also processed
  • No item cap and no file-size cap, and a price list may be split across several files
  • A manual upload through the account UI is the documented alternative
Technical details

Nabava's model is the one Feedflock is built for: the price list sits at a fixed location and Nabava refreshes it automatically, with check times at 7:30, 10:30, 13:30 and 17:30. The spec even recommends a script that generates the current price list at the moment of the request over a static file, which is exactly what a hosted feed URL is.

There is no item cap and no file-size cap, UTF-8 is preferred, and a large catalog may be split across several files. If you ever need it, the account UI at nabava.net accepts a manual upload instead. Feedflock hosts the file on a stable URL and regenerates it every hour, so each of the four daily checks reads current prices and stock.

02

Four required fields, and the name does the heavy lifting

  • Mandatory: name, price, url, availability: that is the whole required set
  • price is the final consumer price incl. PDV; there is no currency element anywhere; EUR is context, not declaration
  • availability is free text or a coded value: 0 = not available, 1 = available immediately, 2 = ships after payment, 3 = arrives in X days
  • name drives both the semi-automated categorization and the on-site search
Technical details

Only four fields are Obavezno: name, price, url and availability. The price is the final consumer price including PDV, and it must match the landing page; there is no currency element anywhere in the vocabulary. The feed is Croatian and Croatia has been on the euro since 2023, so EUR is context, never declared.

Availability is required too, and it is free text or a coded value (0 for not available, 1 for available immediately, 2 for shipping after payment, 3 for arriving in X days), which Nabava maps onto its five canonical states. The name carries the most weight of all: Nabava's semi-automated categorization and its visitor search both run on it, so it must be clear, concise and carry the characteristics that distinguish the item from similar ones.

03

Shipping: one number for the whole country, or nothing

  • shipping_cost is a single Croatia-wide amount: >0 is the delivery price, 0 means free delivery
  • Not one uniform amount? Leave it empty: empty is a value, not an absence
  • Per-item exceptions go to shipping_info; the store-level terms live in the merchant account
  • There are no carriers, no cash-on-delivery price and no free-above threshold in the vocabulary
Technical details

Nabava's shipping model is one number for the whole of Croatia. A value above zero is the item's delivery price, 0 means free delivery, and if the cost is not uniform nationwide or depends on other parameters, the field must stay empty, with the details spelled out in shipping_info. An empty shipping_cost is a real answer, not a missing one.

There is no carrier element, no COD price, no free-shipping threshold and no weight anywhere in the spec. The defaults live outside the feed entirely: shipping terms are defined at the level of the whole shop in the merchant account, and the per-item shipping_info only adds exceptions. Feedflock's template ships with shipping_cost empty (the honest default for a shop with rate tables) and offers 0 for free delivery.

04

A template, not a contract, but a stable one

  • Nabava maps your element names onto theirs at import; the names and structure are a suggestion, not a contract
  • What matters is that the agreed shape stays stable: a changed URL, format, or the number, names or order of fields must be announced first
  • An unannounced change means the price list silently stops refreshing correctly
  • Feedflock's output follows Nabava's own sample, so nothing needs agreeing and nothing drifts
Technical details

The defining fact about this spec: the tag names and the XML structure do not have to match the sample. Nabava maps your names onto theirs at import, and a differently shaped price list can be arranged by talking to them first. Feedflock's template follows the official sample closely, so nothing needs agreeing in the first place.

The one rule that matters afterwards is stability. If you change the feed's location, format, or the number, names or order of its fields, Nabava asks to be told first. Otherwise the price list will most likely stop refreshing and displaying correctly, with no error on either side. Feedflock keeps the structure fixed across regenerations, so the shape Nabava agreed to is the shape it keeps reading.

The takeaway

Four required fields, a fixed URL checked four times a day, and a structure that follows Nabava's own spec field for field. Your Shopify catalog stays the single source of truth, and Nabava always reads offers with current prices, stock and availability.

Claude · ChatGPT

Or set up your Nabava.net feed in chat

Connect Feedflock to Claude or ChatGPT and ask. It creates the feed as a draft, maps your categories to Nabava.net's own tree and tells you what is still missing. You approve every change.

feedflock · mcp

Create a Nabava.net feed for my store and map my categories.

I'll create it as a draft and show you each change before I make it.

FAQ

No. The Nabava template renders the full structure for you: one <product> per variant, descriptions in CDATA, variant options as specification blocks. XML is the form Nabava calls the most acceptable and best way, but it also processes XLS/XLSX and CSV/TXT if you ever need them.
Nabava refreshes price lists automatically at 7:30, 10:30, 13:30 and 17:30. Feedflock regenerates the file every hour on the same URL, so each of those checks reads data at most an hour old.
They can stay in the feed. availability is a required field and its 0 state (nije raspoloživo) exists precisely so an unavailable item can remain listed as unavailable. The default mapping sends 1 for sellable variants and 0 for the rest; if you would rather drop sold-out products entirely, exclude them in the feed's product selection.
Through regular_price. When it is set and differs from price, price is understood as the promo price and Nabava can highlight the discount. Feedflock fills regular_price from the Shopify compare-at price, so a sale you set in Shopify shows up on Nabava by itself, and when it ends, the element leaves the feed.
shipping_cost is one Croatia-wide amount per item: a value above zero is the delivery price, 0 means free delivery. If your rates are not uniform nationwide, the field must stay empty and the details belong in shipping_info, with the store-level terms configured in your Nabava account. There are no carriers or COD prices in the feed at all.
No. The category element is a free-text path, levels separated by " > ", that explicitly need not match Nabava's own categories. It only assists the semi-automated categorization, which leans mostly on the product name and the barcode. Nabava publishes no category tree, so there is nothing to map against; Feedflock sends your product type by default.
Carefully. Nabava treats the element names and structure as a template it maps at import, but once agreed, the shape must stay stable. A changed URL, format, or the number, names or order of fields has to be announced to Nabava first, or the price list silently stops refreshing correctly. Editing a field's mapping in Feedflock does not change the feed's structure, so routine adjustments are safe.

Get on every marketplace that matters this afternoon.

Install free, connect your first feed in minutes, and let Feedflock keep it fresh and validated.

.myshopify.com