Croatian KPD codes change on 1 January 2027

NN 119/2026 removes 17 KPD codes and adds 12: the replacements, why the issue date decides, credit notes across the new year, and checking each eRačun line

· 4 min read · Oleksii Babintsev

Since 1 January 2026 every line of a Croatian eRačun carries a KPD code, the Croatian edition of the EU's product classification (CPA). The Fiscalisation Act asks for the code of the KPD version in force, with at least six digits (NN 89/25, art. 42(2)). That version is KPD 2025, published in NN 151/2024 with 3,359 six-digit codes.

On 1 January 2027 it changes. The Croatian Bureau of Statistics' decision in NN 119/2026 follows an EU correction of CPA: it removes 17 codes, adds 12 and gives a few codes that keep their number a different content. An invoice dated 31 December 2026 and one dated 1 January 2027 can need different codes for the same item.

Where the code goes

In the UBL of an eRačun, the code sits in the item of each line, with listID="CG":

<cac:CommodityClassification>
    <cbc:ItemClassificationCode listID="CG">62.20.20</cbc:ItemClassificationCode>
</cac:CommodityClassification>

The Tax Administration's rules check it with HR-BR-25: each item must have a classification with listID "CG", except on prepayment invoices and credit notes. The rule looks at the element and its listID, not at the code. 99.99.99, 62.20 or a code that no longer exists all pass it, and the invoice goes out with a code the law doesn't recognise.

What changes on 1 January 2027

These codes are removed. Where the new rows of the decision take over their content, the replacement is beside them:

Removed Use instead from 1 January 2027
06.10.11 06.20.00 (natural gas condensates are now part of it)
06.10.12 06.10.10
16.11.31, 16.11.32, 16.11.33 16.12.10 (treated wood) or 16.11.30 (untreated wood)
16.12.00 16.12.10 (treated wood) or 16.12.99 (subcontracted wood treatment)
60.20.11, 60.20.12, 60.20.13 60.20.10
63.10.31 63.10.21
63.10.32 63.10.22
66.19.14 66.19.13
68.32.04 68.32.09
01.27.09, 42.99.23, 63.10.20, 66.12.04 none named: choose the code that fits

The new codes are 06.10.10, 16.11.30, 16.12.10, 16.12.99, 46.18.29, 46.21.19, 58.29.50, 60.20.10, 63.10.21, 63.10.22, 64.99.05 and 68.32.09. None of them may be used before 1 January 2027.

The quieter change is in codes that keep their number. Some of the financial services codes move along by one: 66.19.12 was "Usluge obrade transakcija vrijednosnim papirima" (processing securities transactions) and becomes "Mobilna plaćanja i digitalne lisnice uz korištenje financijskih informacija" (mobile payments and digital wallets), the securities moving to 66.19.11. An invoice that kept 66.19.12 for securities processing would be classified as mobile payments. Others narrow: 28.25.13 drops reversible heat pumps, 46.11.09 drops live animals.

The issue date decides

Which version applies follows the invoice's issue date (cbc:IssueDate, BT-2), not the delivery date or the period invoiced. Take a line with 68.32.04:

IssueDate 2026-12-31
XV-HR-03  Line 1: KPD 68.32.04 is removed on 1 January 2027 (NN 119/2026); documents issued from then on need another code: 68.32.09.

IssueDate 2027-01-01
XV-HR-02  Line 1: KPD 68.32.04 is not a code of KPD 2025 in force on the issue date 2027-01-01: it was removed on 1 January 2027 (NN 119/2026); use 68.32.09.

The first is a warning: the invoice is right for 2026, and the item master needs the new code before the next one. The second is an error. The replacement works the other way round only from the new year:

IssueDate 2026-12-31
XV-HR-02  Line 1: KPD 68.32.09 is not a code of KPD 2025 in force on the issue date 2026-12-31: it applies from 1 January 2027 (NN 119/2026).

So a system can't switch its codes early. The code has to follow the date each invoice is issued on, which in practice means changing the item master at the turn of the year, or keeping both codes and picking one by the date.

Where the decision splits a code, the message names both options:

XV-HR-02  Line 1: KPD 16.11.31 is not a code of KPD 2025 in force on the issue date 2027-01-04: it was removed on 1 January 2027 (NN 119/2026); use 16.12.10 (treated wood) or 16.11.30 (untreated wood).

and where it names no successor, it says so:

XV-HR-02  Line 1: KPD 63.10.20 is not a code of KPD 2025 in force on the issue date 2027-01-04: it was removed on 1 January 2027 (NN 119/2026); the decision names no successor, choose the code that fits.

Credit notes across the new year

A credit note issued in January 2027 for a December 2026 invoice is a document of 2027. HR-BR-25 doesn't ask a credit note for KPD codes, but many systems copy the invoice's lines, codes included. Copied from the invoice, 68.32.04 becomes an error on the credit note even though it was right on the invoice it corrects. The credit note needs the 2027 code, or none, and its cac:BillingReference still points to the invoice.

Codes whose content changed

For codes that keep their number with another content, a 2027 invoice gets a warning, since the code is valid and only the person who knows the item can tell whether it still fits:

XV-HR-04  Line 1: since 1 January 2027 KPD 66.19.12 is "Mobilna plaćanja i digitalne lisnice uz korištenje financijskih informacija" (until then "Usluge obrade transakcija vrijednosnim papirima"); check that the item still falls under it (NN 119/2026).

Codes that were never right

The same rules catch what HR-BR-25 lets through all year: a code that isn't in KPD 2025 at all, and a code cut short.

XV-HR-01  Line 1: '62.20' is not a six-digit KPD code such as 62.20.20; the Fiscalisation Act asks for the KPD code with at least six digits (NN 89/25, art. 42(2)).

Six digits without the dots, 622020, are read as 62.20.20.

Checking an eRačun

The rule set is hr-kpd, XV-HR-01 to XV-HR-04. It runs with the Tax Administration's HR-CIUS rules on the Croatian eRačun and its credit note, in the validator (in the browser, nothing uploaded; an eRačun is recognised by its CustomizationID), the API, the CLI and URL monitors. The Croatia page has the rest of Fiskalizacija 2.0.

Two parts are our reading rather than the decision's words. The replacements for 16.11.3x and 16.12.00 follow the decision's new rows, which split wood by treatment. The list of codes whose content changed compares the old and new names; renamings that only change the wording are left out. When DZS changes KPD 2025 again, the lists are regenerated from the new decision.

Sources: NN 151/2024 (KPD 2025), NN 119/2026 (the changes from 2027) and the Tax Administration's notice on the KPD changes.

More from the blog