Praktická validácia · overené 12. 9. 2026 · 6 min čítania
XML prejde XSD, ale Peppol ho odmietne: tri chyby a ich opravy
Platná štruktúra XML ešte neznamená platnú Peppol faktúru. Na štyroch úplných súboroch si môžete overiť, ako sa líši kontrola XSD od obchodných pravidiel a číselníkov.
Čo presne sme overili
Východiskový dokument a tri jeho zmenené varianty sme 12. 9. 2026 skontrolovali lokálnym ion-docval 1.2.1: UBL 2.1 XSD, CEN EN 16931 1.3.16 a Peppol BIS Billing 3.0.21 z vydania máj 2026. Východiskový dokument mal 0 chýb a 0 upozornení. Každý chybný variant mal presne jednu chybu uvedenú nižšie a žiadnu chybu XSD.
Ide o test obsahu dokumentu. Fiktívne firmy a identifikátory nie sú určené na odoslanie do produkčnej siete. Výsledok neoveruje registráciu príjemcu, oprávnenie odosielateľa, slovenský daňový reporting ani doručenie.
Ak sa s XML ešte len zoznamujete, začnite vysvetlením jednotlivých blokov e-faktúry. Význam normy a slovenskú vrstvu rozoberá EN 16931 na CPDS.sk.
Stiahnutie a postup
- Stiahnite východiskovú faktúru XML. Otvorte ju ako text, nie ako PDF.
- Skontrolujte ju vo validátore ePošťáka. Pri inom výsledku najprv porovnajte verziu a rozsah pravidiel s týmto článkom.
- Otvorte jeden chybný variant, vyhľadajte uvedený kód a opravte príslušné pole podľa ukážky.
- Overte celý opravený dokument znova. V týchto izolovaných príkladoch vás oprava vráti k východiskovému dokumentu bez chýb.
1. Chýba referencia kupujúceho alebo objednávky
Kód: PEPPOL-EN16931-R003 · Stiahnuť chybný XML
UBL umožňuje tieto prvky vynechať, ale Peppol vyžaduje referenciu kupujúceho alebo nákupnej objednávky. Doplňte skutočnú referenciu dohodnutú s odberateľom; testová hodnota slúži iba pre tento príklad.
Pred opravou
<!-- BuyerReference aj OrderReference chýbajú -->Po oprave
<cbc:BuyerReference>TEST-OBJ-001</cbc:BuyerReference>2. Splatná suma nesedí s celkovou sumou
Kód: BR-CO-16 · Stiahnuť chybný XML
Príklad má základ 100 €, DPH 23 € a celkovú sumu 123 €. Neobsahuje uhradený preddavok ani zaokrúhľovaciu položku, preto je splatná suma 123 €. XSD kontroluje typ čísla, nie túto účtovnú rovnosť. Pri vlastnom doklade opravte príčinu rozdielu, nie iba výsledné číslo.
Pred opravou
<cbc:PayableAmount currencyID="EUR">124.00</cbc:PayableAmount>Po oprave
<cbc:PayableAmount currencyID="EUR">123.00</cbc:PayableAmount>3. Lokálna skratka jednotky nie je platný kód
Kód: BR-CL-23 · Stiahnuť chybný XML
KUS je zrozumiteľné človeku, ale v tomto poli nepatrí do požadovaného číselníka. Pre jeden kus v ukážke použijeme C62. Pri hodinách, kilogramoch alebo baleniach vyberte kód podľa skutočnej mernej jednotky; nenahrádzajte všetky hodnoty kódom C62.
Pred opravou
<cbc:InvoicedQuantity unitCode="KUS">1</cbc:InvoicedQuantity>Po oprave
<cbc:InvoicedQuantity unitCode="C62">1</cbc:InvoicedQuantity>Validácia nie je dôkaz doručenia
Po úspešnej kontrole ešte musí prebehnúť správne adresovanie a doručenie. Až samostatný účtovný proces určí schválenie a úhradu. Pri čakaní alebo odmietnutí pokračujte cez postup sledovania stavov faktúry.
Pre slovenskú implementáciu doplňte aj kontroly aktuálnej slovenskej špecifikácie. Prípravu opisuje slovenský Peppol testbed a rozsah validácie. Verejný výsledok bez uvedenej verzie nie je automaticky dôkazom kontroly podľa rovnakého vydania pravidiel.