ValidateFin

CII CrossIndustryInvoice — BR-CO-10, line sum does not equal BT-106

BR-CO-10 w składni CII: dwie pozycje sumują się do 2 000,00, a LineTotalAmount (BT-106, wewnątrz SpecifiedTradeSettlementHeaderMonetarySummation) deklaruje 1 900,00. Ta sama wada co w próbce UBL, tyle że w składni, w której najtrudniej ją dostrzec — sumy dokumentu leżą w innej gałęzi drzewa niż pozycje, które mają podsumowywać.

CII D16B (CrossIndustryInvoice) — Nieprawidłowy

BR-CO-10 w składni CII: dwie pozycje sumują się do 2 000,00, a LineTotalAmount (BT-106, wewnątrz SpecifiedTradeSettlementHeaderMonetarySummation) deklaruje 1 900,00. Ta sama wada co w próbce UBL, tyle że w składni, w której najtrudniej ją dostrzec — sumy dokumentu leżą w innej gałęzi drzewa niż pozycje, które mają podsumowywać.

Faktura CII (składnia XRechnung / Factur-X) CII D16B (CrossIndustryInvoice) EN 16931 / XRechnung 3.0Oczekiwany wynik: Nieprawidłowy — 3 błędów

Co pokazuje ten plik

BR-CO-10 w składni CII: dwie pozycje sumują się do 2 000,00, a LineTotalAmount (BT-106, wewnątrz SpecifiedTradeSettlementHeaderMonetarySummation) deklaruje 1 900,00. Ta sama wada co w próbce UBL, tyle że w składni, w której najtrudniej ją dostrzec — sumy dokumentu leżą w innej gałęzi drzewa niż pozycje, które mają podsumowywać.

Transakcje2
Suma2261,00 €

Zawarte wady

  • BR-CO-10BR-CO-10: Sum of line net amounts (2000.00) does not equal LineTotalAmount / BT-106 (1900.00).

Cytowane dosłownie z walidatora, bez parafrazy.

Ostatnia weryfikacja: Licencja: CC-BY-4.0

Wszystkie strony, numery IBAN i kwoty poniżej są fikcyjne. IBAN-y są poprawne strukturalnie — przechodzą test mod-97 — ale nie należą do żadnego rzeczywistego rachunku.

Zawartość pliku

<?xml version="1.0" encoding="UTF-8"?>
<!--
  ValidateFin sample file — CII (UN/CEFACT Cross Industry Invoice), XRechnung 3.0.
  DELIBERATELY BROKEN — BR-CO-10, the CII twin of the most common UBL defect.
  The two lines add up to 2 000.00 (1 200.00 + 800.00) but BT-106
  (SpecifiedTradeSettlementHeaderMonetarySummation/LineTotalAmount) declares 1 900.00.
  Every other total is consistent with that WRONG figure, so BR-CO-13, BR-CO-14,
  BR-CO-15, BR-CO-16 and BR-CO-17 all pass: the file isolates the line-sum rule.
  Expected validation result: INVALID.

  All parties and account numbers are fictitious.
  Reference page: https://validatefin.com/en/resources/samples/cii-broken-totals
  License: CC-BY-4.0
-->
<rsm:CrossIndustryInvoice
    xmlns:rsm="urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100"
    xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100"
    xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:100">
  <rsm:ExchangedDocumentContext>
    <ram:BusinessProcessSpecifiedDocumentContextParameter>
      <ram:ID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</ram:ID>
    </ram:BusinessProcessSpecifiedDocumentContextParameter>
    <ram:GuidelineSpecifiedDocumentContextParameter>
      <ram:ID>urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0</ram:ID>
    </ram:GuidelineSpecifiedDocumentContextParameter>
  </rsm:ExchangedDocumentContext>

  <rsm:ExchangedDocument>
    <ram:ID>NWL-2026-0655</ram:ID>
    <ram:TypeCode>380</ram:TypeCode>
    <ram:IssueDateTime>
      <udt:DateTimeString format="102">20260325</udt:DateTimeString>
    </ram:IssueDateTime>
    <ram:IncludedNote>
      <ram:Content>Line totals and document total do not agree — see BR-CO-10.</ram:Content>
    </ram:IncludedNote>
  </rsm:ExchangedDocument>

  <rsm:SupplyChainTradeTransaction>
    <ram:IncludedSupplyChainTradeLineItem>
      <ram:AssociatedDocumentLineDocument>
        <ram:LineID>1</ram:LineID>
      </ram:AssociatedDocumentLineDocument>
      <ram:SpecifiedTradeProduct>
        <ram:Name>Warehouse trolley</ram:Name>
        <ram:Description>Warehouse trolley, 300 kg capacity</ram:Description>
      </ram:SpecifiedTradeProduct>
      <ram:SpecifiedLineTradeAgreement>
        <ram:NetPriceProductTradePrice>
          <ram:ChargeAmount>150.00</ram:ChargeAmount>
        </ram:NetPriceProductTradePrice>
      </ram:SpecifiedLineTradeAgreement>
      <ram:SpecifiedLineTradeDelivery>
        <ram:BilledQuantity unitCode="C62">8</ram:BilledQuantity>
      </ram:SpecifiedLineTradeDelivery>
      <ram:SpecifiedLineTradeSettlement>
        <ram:ApplicableTradeTax>
          <ram:TypeCode>VAT</ram:TypeCode>
          <ram:CategoryCode>S</ram:CategoryCode>
          <ram:RateApplicablePercent>19</ram:RateApplicablePercent>
        </ram:ApplicableTradeTax>
        <ram:SpecifiedTradeSettlementLineMonetarySummation>
          <ram:LineTotalAmount>1200.00</ram:LineTotalAmount>
        </ram:SpecifiedTradeSettlementLineMonetarySummation>
      </ram:SpecifiedLineTradeSettlement>
    </ram:IncludedSupplyChainTradeLineItem>

    <ram:IncludedSupplyChainTradeLineItem>
      <ram:AssociatedDocumentLineDocument>
        <ram:LineID>2</ram:LineID>
      </ram:AssociatedDocumentLineDocument>
      <ram:SpecifiedTradeProduct>
        <ram:Name>Safety strap set</ram:Name>
        <ram:Description>Safety strap set for pallet loads</ram:Description>
      </ram:SpecifiedTradeProduct>
      <ram:SpecifiedLineTradeAgreement>
        <ram:NetPriceProductTradePrice>
          <ram:ChargeAmount>40.00</ram:ChargeAmount>
        </ram:NetPriceProductTradePrice>
      </ram:SpecifiedLineTradeAgreement>
      <ram:SpecifiedLineTradeDelivery>
        <ram:BilledQuantity unitCode="C62">20</ram:BilledQuantity>
      </ram:SpecifiedLineTradeDelivery>
      <ram:SpecifiedLineTradeSettlement>
        <ram:ApplicableTradeTax>
          <ram:TypeCode>VAT</ram:TypeCode>
          <ram:CategoryCode>S</ram:CategoryCode>
          <ram:RateApplicablePercent>19</ram:RateApplicablePercent>
        </ram:ApplicableTradeTax>
        <ram:SpecifiedTradeSettlementLineMonetarySummation>
          <ram:LineTotalAmount>800.00</ram:LineTotalAmount>
        </ram:SpecifiedTradeSettlementLineMonetarySummation>
      </ram:SpecifiedLineTradeSettlement>
    </ram:IncludedSupplyChainTradeLineItem>

    <ram:ApplicableHeaderTradeAgreement>
      <ram:BuyerReference>04011000-12345-34</ram:BuyerReference>
      <ram:SellerTradeParty>
        <ram:Name>Nordwind Logistik GmbH</ram:Name>
        <ram:DefinedTradeContact>
          <ram:PersonName>Rechnungsstelle</ram:PersonName>
          <ram:TelephoneUniversalCommunication>
            <ram:CompleteNumber>+49 40 555 0100</ram:CompleteNumber>
          </ram:TelephoneUniversalCommunication>
          <ram:EmailURIUniversalCommunication>
            <ram:URIID>[email protected]</ram:URIID>
          </ram:EmailURIUniversalCommunication>
        </ram:DefinedTradeContact>
        <ram:PostalTradeAddress>
          <ram:PostcodeCode>20457</ram:PostcodeCode>
          <ram:LineOne>Speicherstrasse 12</ram:LineOne>
          <ram:CityName>Hamburg</ram:CityName>
          <ram:CountryID>DE</ram:CountryID>
        </ram:PostalTradeAddress>
        <ram:URIUniversalCommunication>
          <ram:URIID schemeID="EM">[email protected]</ram:URIID>
        </ram:URIUniversalCommunication>
        <ram:SpecifiedTaxRegistration>
          <ram:ID schemeID="VA">DE123456789</ram:ID>
        </ram:SpecifiedTaxRegistration>
      </ram:SellerTradeParty>
      <ram:BuyerTradeParty>
        <ram:Name>Bundesamt fuer Logistik</ram:Name>
        <ram:PostalTradeAddress>
          <ram:PostcodeCode>10117</ram:PostcodeCode>
          <ram:LineOne>Wilhelmstrasse 40</ram:LineOne>
          <ram:CityName>Berlin</ram:CityName>
          <ram:CountryID>DE</ram:CountryID>
        </ram:PostalTradeAddress>
        <ram:URIUniversalCommunication>
          <ram:URIID schemeID="EM">[email protected]</ram:URIID>
        </ram:URIUniversalCommunication>
      </ram:BuyerTradeParty>
    </ram:ApplicableHeaderTradeAgreement>

    <ram:ApplicableHeaderTradeDelivery>
      <ram:ActualDeliverySupplyChainEvent>
        <ram:OccurrenceDateTime>
          <udt:DateTimeString format="102">20260323</udt:DateTimeString>
        </ram:OccurrenceDateTime>
      </ram:ActualDeliverySupplyChainEvent>
    </ram:ApplicableHeaderTradeDelivery>

    <ram:ApplicableHeaderTradeSettlement>
      <ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode>
      <ram:SpecifiedTradeSettlementPaymentMeans>
        <ram:TypeCode>58</ram:TypeCode>
        <ram:PayeePartyCreditorFinancialAccount>
          <ram:IBANID>DE02120300000000202051</ram:IBANID>
        </ram:PayeePartyCreditorFinancialAccount>
      </ram:SpecifiedTradeSettlementPaymentMeans>
      <ram:ApplicableTradeTax>
        <ram:CalculatedAmount>361.00</ram:CalculatedAmount>
        <ram:TypeCode>VAT</ram:TypeCode>
        <ram:BasisAmount>1900.00</ram:BasisAmount>
        <ram:CategoryCode>S</ram:CategoryCode>
        <ram:RateApplicablePercent>19</ram:RateApplicablePercent>
      </ram:ApplicableTradeTax>
      <ram:SpecifiedTradePaymentTerms>
        <ram:Description>Net 30 days.</ram:Description>

160 / 176 lines shown — the complete file is in the download above.

Skąd wiemy, że te wyniki są aktualne

Każdy plik w tej bibliotece przechodzi przez walidator serwisu przy każdym buildzie. Oczekiwany wynik podany wyżej potwierdza test automatyczny: gdyby plik przestał odpowiadać temu, co głosi ta strona, build by się wywalił. Dwie odziedziczone fikstury naprawiono w ten sposób przed publikacją: trzy numery IBAN nie przechodziły mod-97, a kilka nazw używało znaków spoza podstawowego zestawu SEPA.

Faktura CII (składnia XRechnung / Factur-X)