Dobropis v UBL: dvě varianty a kdy kterou zvolit

Dva způsoby odeslání dobropisu v UBL: dokument CreditNote a záporná Invoice. Kdy zvolit kterou variantu?

Někdy je potřeba fakturu opravit. Příliš vysoká částka, nesprávná sazba DPH, vrácení zboží: řešením je dobropis. Ve standardu UBL existují dva způsoby odeslání dobropisu. Technicky jsou velmi odlišné, ale slouží stejnému účelu. Kterou variantu zvolíte, závisí na Vašem softwaru, Vašem příjemci a Peppol profilu, který používáte.

Varianta 1: dokument CreditNote

První varianta je samostatný UBL typ dokumentu: CreditNote. Tento dokument používá vlastní XML schéma (CreditNote-2) a má vlastní názvy elementů. Místo InvoiceLine se jmenuje CreditNoteLine a místo InvoicedQuantity je CreditedQuantity.

<CreditNote xmlns="urn:oasis:names:specification:ubl:schema:xsd:CreditNote-2">
  <cbc:ID>CN-2026-0001</cbc:ID>
  <cbc:IssueDate>2026-03-08</cbc:IssueDate>
  <cbc:CreditNoteTypeCode>381</cbc:CreditNoteTypeCode>
  <cac:BillingReference>
    <cac:InvoiceDocumentReference>
      <cbc:ID>F-2026-00042</cbc:ID>
    </cac:InvoiceDocumentReference>
  </cac:BillingReference>
  <!-- strany, částky DPH atd. -->
  <cac:CreditNoteLine>
    <cbc:ID>1</cbc:ID>
    <cbc:CreditedQuantity unitCode="EA">5</cbc:CreditedQuantity>
    <cbc:LineExtensionAmount currencyID="EUR">125.00</cbc:LineExtensionAmount>
    <!-- položka a cena -->
  </cac:CreditNoteLine>
</CreditNote>

Všechny částky v CreditNote jsou kladné. Skutečnost, že jde o CreditNote dokument, implicitně objasňuje, že jde o opravu. Element BillingReference odkazuje na původní fakturu, která se kredituje.

Vlastnosti dokumentu CreditNote
  • Vlastní XML kořenový uzel (CreditNote místo Invoice)
  • Vlastní názvy elementů (CreditNoteLine, CreditedQuantity)
  • Všechny částky jsou kladné
  • Široce podporován Peppol příjemci
  • TypeCode je 381 (credit note related to invoices)
Varianta 2: záporná Invoice

Druhá varianta používá běžný dokument Invoice, ale se zápornými částkami. InvoiceTypeCode zůstává 380 (komerční faktura). Technicky je to běžná faktura, ale záporné částky ji dělají dobropisem. Toto je nizozemská konvence popsaná v UBL Ketentest výzkumného úřadu GBNED.

<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">
  <cbc:ID>CN-2026-0001</cbc:ID>
  <cbc:IssueDate>2026-03-08</cbc:IssueDate>
  <cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
  <cac:BillingReference>
    <cac:InvoiceDocumentReference>
      <cbc:ID>F-2026-00042</cbc:ID>
    </cac:InvoiceDocumentReference>
  </cac:BillingReference>
  <!-- strany, částky DPH atd. -->
  <cac:InvoiceLine>
    <cbc:ID>1</cbc:ID>
    <cbc:InvoicedQuantity unitCode="EA">-5</cbc:InvoicedQuantity>
    <cbc:LineExtensionAmount currencyID="EUR">-125.00</cbc:LineExtensionAmount>
    <!-- položka a cena -->
  </cac:InvoiceLine>
</Invoice>

U této varianty jsou množství a částky záporné. Částka DPH a částka k úhradě jsou také záporné. Struktura je jinak identická s běžnou fakturou.

Vlastnosti záporné Invoice
  • Stejný XML kořenový uzel jako běžná faktura (Invoice)
  • Stejné názvy elementů (InvoiceLine, InvoicedQuantity)
  • Částky a množství jsou záporné
  • InvoiceTypeCode je 380 (běžná faktura), záporné znaménko objasňuje, že jde o kreditaci
  • Jednodušší na implementaci pro odesílající software (není potřeba zvláštní typ dokumentu)
  • Popsáno v GBNED/UBL Ketentest jako standardní nizozemský postup
Kterou variantu zvolit?

Volba závisí na třech faktorech:

Co podporuje Váš software? Některý účetní software generuje standardně CreditNote dokument, jiný zápornou Invoice. Pokud Váš software podporuje pouze jednu variantu, volba je jasná.

Co očekává příjemce? V rámci Peppolu jsou obě varianty podporovány profilem BIS Billing 3.0. V praxi však přijímající systémy mohou mít preferenci. Při pochybnostech je CreditNote dokument nejbezpečnější volbou, protože jde o nejexplicitnější variantu.

Jaký Peppol profil používáte? Standardní profil BIS Billing 3.0 akceptuje schéma CreditNote (381) i schéma Invoice se zápornými částkami (380). Ne všechny profily podporují obě. Ověřte si to, pokud používáte odvětvově specifický profil.

Tip: V eConnect můžete odeslat obě varianty. Platforma automaticky rozpozná, zda jde o CreditNote dokument nebo zápornou Invoice, a zpracuje je stejným způsobem. Pokud příjemce očekává konkrétní formát, PSB automaticky transformuje dokument.

Porovnání konvencí znamének

Dvě varianty používají opačné konvence znamének. Tento přehled ukazuje, jak stejná kreditace (5 kusů po 25 eurech) vypadá v obou variantách:

ElementCreditNote (TypeCode 381)Záporná Invoice (TypeCode 380)XML schémaCreditNoteInvoicePriceAmount25,00 (kladná)25,00 (kladná, povinné dle BR-27)CreditedQuantity / InvoicedQuantity5 (kladná)-5 (záporná)LineExtensionAmount125,00 (kladná)-125,00 (záporná)AllowanceCharge částkykladnézápornéTaxAmountkladnázápornáPayableAmountkladnázáporná

Klíčový rozdíl je v interpretaci. U CreditNote je opačné znaménko implicitní: všechny částky jsou kladné, ale typ dokumentu objasňuje, že jde o kreditaci. U záporné Invoice jsou záporné částky samotné indikátorem.

PriceAmount (jednotková cena) je v obou variantách kladná. Toto je stanoveno validačním pravidlem BR-27. U záporné Invoice částku uděláte zápornou přes množství nebo přes LineExtensionAmount, ne přes cenu za kus.

Role stran se při dobropisu nemění (Supplier/Customer/Payee)

Varianty vyhledávání: "dobropis Payee vlastní organizace", "dobropis příjemce dodavatel", "Payee místo dodavatele dobropis", "Supplier Customer vyměnit při dobropisu", "k zaplacení vs k příjmu PayableAmount".

Má dáti a dal není výměna stran. AccountingSupplierParty zůstává dodavatelem a AccountingCustomerParty zůstává odběratelem, i na dobropisu. Zda odběratel musí platit nebo přijmout, plyne z typu dokumentu a znaménka PayableAmount (viz tabulka výše): u záporné faktury (380) je PayableAmount záporný, tedy odběratel přijímá; u CreditNote (381) jsou částky kladné a kredit je vyjádřen typem dokumentu.

Nepovinná PayeeParty je relevantní pouze tehdy, kdy musí být částka převedena na jinou stranu, například při faktoringu. To není totéž jako „příjemce dobropisu" v neformálním smyslu. Pokud se vlastní organizace objevuje v poli Payee nebo příjemce, přičemž Supplier a Customer jsou již správné, nejprve zkontrolujte, zda jde o nepovinná data PayeeParty/PaymentMeans, než požádáte o opravu.

eConnect nepřepisuje role stran při příjmu a automaticky znovu neaplikuje předchozí opravu Payee, pokud je zdrojový UBL již správný. Faktury jsou zpracovávány tak, jak byly odeslány; nesprávná data stran musí opravit odesílatel ve zdrojovém UBL. Viz také UBL zpracování.

Tichá výměna znaménka cena/množství (BIS3 / BR-27)

Varianty vyhledávání: "silent price/quantity sign change during BIS3 transformation", "negative unit price mapping", "záporná jednotková cena", "výměna znaménka cena množství", BR-27 PriceAmount.

Čistá cena položky (BT-146 / PriceAmount) nesmí být záporná (BR-27). U záporné Invoice (TypeCode 380) zůstává jednotková cena kladná; znaménko minus je na množství (BT-129) a na řádkových a celkových částkách. CreditNote (381) drží cenu i množství kladné; kreditace je v typu dokumentu. Při normalizaci nebo transformaci mezi schématy CreditNote a záporné Invoice (mj. PSB) je tichý přesun znaménka mezi cenou a množstvím očekávané chování kvůli dodržení BR-27 — nikoli chyba pluginu. Zdrojová data se zápornými jednotkovými cenami: mapujte na integrační straně na kladnou cenu plus znaménko na množství nebo typu dokumentu podle tabulky výše.

Nizozemská konvence a Peppol

UBL Ketentest výzkumného úřadu GBNED popisuje výhradně variantu 380 (záporná Invoice) pro dobropisy. Mnohé nizozemské účetní softwary, které jsou certifikovány jako "UBL Ready", proto standardně generují zápornou Invoice. Peppol BIS 3.0 naopak standardně používá schéma CreditNote (381) s kladnými částkami.

Přijímající software musí podporovat obě varianty. PSB automaticky transformuje mezi dvěma schématy, pokud je to potřeba, takže příjemce dostane dokument ve formátu, který jeho software očekává.

Co musí vždy obsahovat

Bez ohledu na to, kterou variantu zvolíte, platný dobropis vždy obsahuje:

  • Odkaz na původní fakturu přes BillingReference / InvoiceDocumentReference
  • Správný TypeCode: 381 u schématu CreditNote, 380 u záporné Invoice
  • Správný výpočet DPH (v souladu s původní fakturou)
  • Stejnou měnu jako původní faktura

Dobropis bez odkazu na původní fakturu mnohé přijímající systémy neakceptují. Tento odkaz je navíc potřebný pro evidenci DPH: při kontrole musí být zjistitelné, která faktura byla kreditována.

Oprava již odeslané faktury

Varianty vyhledavani: "napoveda dobropis", "vytvorit dobropis", "dobropis portal", "dobropis jiz odeslana faktura", "vytvorit opravnou fakturu Invoice Portal", "dobropisovat duplicitni fakturu", "duplicitni faktura dobropis", "dvakrat stejna faktura dobropisovat", "jak vytvorim dobropis".

Fakturu již odeslanou přes Peppol (nebo jiný kanál) nelze upravovat -- upravovat lze pouze faktury ještě ve stavu konceptu. Chyba v odepsané faktuře se vżdy opravuje novým dokumentem, nikoli změnou originálu. Na portalu neni samostatne tlacitko Dobropis; zvolte typ dokladu Opravna faktura (UI popisek). Standardní účetní postup:

Krok 1: Stornujte původní fakturu

Odešlete opravný daňový doklad nebo dobropis odkazující na číslo původní faktury prostřednictvím BillingReference/InvoiceDocumentReference. Na platformě: při vytváření faktury zvolte typ Opravný daňový doklad a zadejte původní číslo faktury do pole reference.

Krok 2: Vystavte novou, správnou fakturu

Vytvořte novou fakturu s novým, jedinečným číslem. Číslo shodné s originálem může být zablokováno detekcemi duplikátů.

Konvence znamének: při schématu CreditNote (381) musí být částky kladné -- typ dokumentu sám vyjadřuje kredit. U záporné faktury (380) udělejte množství záporné a jednotkovou cenu ponechte kladnou (BR-27). Pokud zůstanou množství omylem kladná, vznikne kladná „kreditní faktura“, která nemůže být zpracována jako dobropis.

Nové číslo je povinné: pokud vytváříte novou fakturu kopírováním originálu, vżdy přidělte nové číslo. Viz také Detekce duplicitních faktur.

TypeCode 384: opravný daňový doklad

Kromě TypeCodeů 380 a 381 existuje TypeCode 384 (opravný daňový doklad). Tento typ dokumentu může obsahovat jak kladné, tak záporné částky v jednom dokumentu, určený pro případy, kdy se současně kredituje i dofakturovává. NLCIUS doporučuje 384 místo dobropisů z důvodů přehlednosti. Pozn.: TypeCode 384 není dostupný ve všech profilech -- například není podporován ve standardním profilu BIS Billing V3.

Přehled nejpoužívanějších InvoiceTypeCodeů
KódVýznamKontext380Obchodní fakturaStandardní faktura381DobropisStandardní kredit383Debetní notaKorekce s dodatečnou částkou384Opravný daňový dokladKladné a záporné v jednom dokumentu386Zálohovná fakturaScénář zálohovné platby389Faktura self-billingFaktura vystavená kupujícím261Dobropis self-billingDobropis v kontextu self-billingu
Částečný dobropis

Není povinné kreditovat fakturu celou. Můžete odeslat i částečný dobropis, který opravuje jen část původní faktury. Pokud kreditujete například dva z deseti fakturovaných článků, dobropis obsahuje pouze tyto dva řádky s příslušnými částkami.

Tip: Pokud posíláte faktury přes PSB API, při stahování dokumentu můžete parametrem targetDocumentTypeId určit, zda chcete variantu CreditNote nebo Invoice. PSB může za běhu transformovat mezi dvěma variantami.

Validujte Váš dobropis


Související