# HR-BR-25

Source: https://xmlvalid.com/rules/HR-BR-25

> Stavka …: Svaki artikl MORA imati identifikator klasifikacije artikla iz sheme Klasifikacija proizvoda po djelatnostima: KPD (CPA) – listID „CG“, osim u slučaju računa za predujam i odobrenja.

- Level: error
- Rule sets: Croatian eRačun rules (UBL) 13.03.2026
- Context: `cac:Item`
- Test: `(exists(cac:CommodityClassification/cbc:ItemClassificationCode) and (cac:CommodityClassification/cbc:ItemClassificationCode/@listID = 'CG')) or (not(exists(cac:CommodityClassification/cbc:ItemClassificationCode)) and $documentTypeCode[contains(' 386 81 83 261 262 296 308 381 396 420 458 532 ', concat(' ', normalize-space(.), ' '))]) or ($documentTypeCode[contains(' 386 81 83 261 262 296 308 381 396 420 458 532 ', concat(' ', normalize-space(.), ' '))] and (cac:CommodityClassification/cbc:ItemClassificationCode/@listID != 'CG'))`

In English: Each item must have an item classification identifier from the KPD (CPA) scheme, listID "CG", except on prepayment invoices and credit notes.

## Why it fails

- A `cac:Item` has no `cac:CommodityClassification/cbc:ItemClassificationCode`.
- The classification code has another `listID`; Croatia wants the KPD classification, `listID="CG"`.

## How to fix it

- Add `<cac:CommodityClassification><cbc:ItemClassificationCode listID="CG">…</cbc:ItemClassificationCode></cac:CommodityClassification>` to each item, with the item's KPD code. Prepayment invoices and credit notes may leave it out.

Validate a document against these rules: https://xmlvalid.com/validate
