Zaokrúhľovanie elektronickej faktúry: pravidlá Peppol BIS a príklad výpočtu
Rýchla odpoveď
Pri Peppol e-faktúre nestačí „nejako zaokrúhliť výsledok“. Výpočty musia sedieť podľa pravidiel Peppol BIS Billing 3.0:
- sumy na úrovni dokumentu majú najviac dve desatinné miesta,
- základ položky sa počíta a zaokrúhľuje na dve desatinné miesta,
- DPH sa počíta z príslušného daňového základu a zaokrúhľuje na dve desatinné miesta,
- celková suma na úhradu sa skladá zo súm v
LegalMonetaryTotal, - dorovnanie hotovostnej alebo obchodnej úhrady sa uvádza cez
PayableRoundingAmount.
Prečo je zaokrúhľovanie kritické
Pri papierovej alebo PDF faktúre si účtovník často všimne rozdiel pár centov a opraví ho ručne. Pri XML faktúre to funguje inak. Prijímací systém validuje vzťahy medzi sumami. Ak sa súčty položiek, základ dane, DPH a suma na úhradu nezhodujú, faktúra môže byť odmietnutá alebo skončí vo výnimke.
Zaokrúhľovanie je preto integračná téma, nie kozmetický detail.
Základné sumy v Peppol faktúre
V bloku LegalMonetaryTotal sa typicky používajú tieto sumy:
| Pole | Význam |
|---|---|
LineExtensionAmount | súčet základov položiek bez DPH |
AllowanceTotalAmount | celkové zľavy na úrovni dokumentu |
ChargeTotalAmount | celkové poplatky na úrovni dokumentu |
TaxExclusiveAmount | základ bez DPH po zohľadnení zliav a poplatkov |
TaxInclusiveAmount | suma s DPH |
PrepaidAmount | už uhradená suma |
PayableRoundingAmount | suma zaokrúhlenia na úhradu |
PayableAmount | konečná suma na úhradu |
Pre vývojárov je dôležité, že nejde o voľné čísla. Sú medzi nimi matematické vzťahy.
Príklad: výpočet zo sheetu
Najskôr referenčný sheet. Príklad počíta položku „Isolation plate 60×100“ a ukazuje, ktoré hodnoty sa majú zaokrúhliť až pri zápise sumy do faktúry.
6,99,
sadzba 19 %, množstvo 25, nezaokrúhlený interný PriceAmount
5,87394957983193..., LineExtensionAmount 146,85,
TaxAmount 27,90 a TaxInclusiveAmount 174,75.
Zo sheetu berieme tieto vstupy:
- jednotková cena s DPH: 6,99 €,
- sadzba DPH: 19 %,
- množstvo: 25 ks,
- bez zľavy.
Čistá jednotková cena bez DPH je:
6,99 / 1,19 = 5,873949579831933...
Ak predávate 25 kusov, základ položky vychádza:
5,873949579831933 × 25 = 146,848739495798...
Po zaokrúhlení základu položky na dve desatinné miesta:
LineExtensionAmount = 146,85 €
Daň pri 19 %:
146,85 × 0,19 = 27,9015 → 27,90 €
Suma s DPH:
TaxInclusiveAmount = 146,85 + 27,90 = 174,75 €
Dôležitý detail je bunka s čistou jednotkovou cenou bez DPH. Pre PriceAmount sa nemá zapísať medzivýsledok 5,87, ale výpočet má ďalej pracovať s hodnotou 5,87394957983193.... Až položkový základ (LineExtensionAmount) sa zaokrúhli na 146,85.
Toto je presne typ scenára, kde môže vzniknúť centový rozdiel, ak softvér zaokrúhli jednotkovú cenu príliš skoro. Sheet preto pri výpočte položky prepína zaokrúhľovanie jednotkovej ceny na „no/none“ a zaokrúhľuje až sumu, ktorá sa zapisuje do faktúry.
Kde sa robí najčastejšia chyba
Najčastejšia chyba je predčasné zaokrúhlenie jednotkovej ceny bez DPH:
6,99 / 1,19 = 5,87
5,87 × 25 = 146,75
Takýto výsledok je o 0,10 € iný ako výpočet, kde sa zaokrúhli až položkový základ. Preto by fakturačný systém mal mať presné pravidlá, kedy sa počíta s vyššou presnosťou a kedy sa výsledok zapisuje ako suma s dvoma desatinnými miestami.
V praktickej implementácii si preto držte oddelene:
- interné medzivýpočty s vyššou presnosťou,
- exportované menové sumy s dvoma desatinnými miestami,
- explicitné dorovnanie cez
PayableRoundingAmount, ak sa mení až suma na úhradu.
Na čo slúži PayableRoundingAmount
PayableRoundingAmount nie je „skrytá oprava chýb“. Je to explicitné pole na dorovnanie sumy na úhradu.
Príklad:
TaxInclusiveAmount = 999,81 €
PayableRoundingAmount = 0,19 €
PayableAmount = 1000,00 €
Toto môže dávať zmysel napríklad pri hotovostnej úhrade alebo obchodnom pravidle, ktoré dorovnáva konečnú sumu. Nemalo by sa používať na zakrývanie nesprávne vypočítaných položiek.
Odporúčania pre implementáciu
- Nezaokrúhľujte jednotkovú cenu predčasne, ak z nej ešte počítate položkový základ.
- Položkové základy zapisujte s dvoma desatinnými miestami.
- DPH počítajte zo správneho daňového základu podľa kategórie DPH.
- Testujte viac sadzieb DPH na jednej faktúre.
- Testujte dokumentové zľavy a poplatky.
PayableRoundingAmountpoužívajte len ako samostatne vysvetliteľné dorovnanie.- Každý výpočet validujte voči Peppol BIS pravidlám.
Checklist pre účtovníka
- Sedí súčet položiek na základ dane?
- Sedí DPH za každú sadzbu?
- Sedí suma s DPH?
- Je centový rozdiel vysvetlený cez
PayableRoundingAmount? - Neskrýva sa fakturačná logika v PDF prílohe?
- Vie softvér ukázať, z čoho vypočítal konečnú sumu?
Zhrnutie
Zaokrúhľovanie v e-faktúre je validačné pravidlo. Ak ERP alebo účtovný systém zaokrúhľuje na inom mieste ako Peppol pravidlá, vzniknú zamietnuté faktúry a manuálne výnimky. Najlepšia ochrana je testovať reálne cenové scenáre ešte pred ostrým termínom 1. januára 2027.
Zdroje a verifikácia
Tento článok je písaný ako edukačný sprievodca. Pri právnych a technických tvrdeniach odporúčame overiť aktuálny stav aj v oficiálnych dokumentoch.
- Peppol BIS Billing 3.0 — Calculation rules — OpenPeppol · overené 16. mája 2026
- Peppol BIS Billing 3.0 — UBL Invoice syntax tree — OpenPeppol · overené 16. mája 2026
Ako citovať túto stránku
Zaokrúhľovanie elektronickej faktúry podľa Peppol BIS. CPDS.sk, technický stav k 16.5.2026.