CII CrossIndustryInvoice — BR-CO-10, line sum does not equal BT-106
BR-CO-10 en syntaxe CII : les deux lignes totalisent 2 000,00 mais LineTotalAmount (BT-106, dans SpecifiedTradeSettlementHeaderMonetarySummation) déclare 1 900,00. Le même défaut que l’échantillon UBL, dans la syntaxe où il se voit le moins — les totaux du document vivent dans une branche de l’arbre différente de celle des lignes qu’ils résument.
CII D16B (CrossIndustryInvoice) — Invalide
BR-CO-10 en syntaxe CII : les deux lignes totalisent 2 000,00 mais LineTotalAmount (BT-106, dans SpecifiedTradeSettlementHeaderMonetarySummation) déclare 1 900,00. Le même défaut que l’échantillon UBL, dans la syntaxe où il se voit le moins — les totaux du document vivent dans une branche de l’arbre différente de celle des lignes qu’ils résument.
Ce que montre ce fichier
BR-CO-10 en syntaxe CII : les deux lignes totalisent 2 000,00 mais LineTotalAmount (BT-106, dans SpecifiedTradeSettlementHeaderMonetarySummation) déclare 1 900,00. Le même défaut que l’échantillon UBL, dans la syntaxe où il se voit le moins — les totaux du document vivent dans une branche de l’arbre différente de celle des lignes qu’ils résument.
| Transactions | 2 |
|---|---|
| Total | 2 261,00 € |
Les défauts qu’il porte
- BR-CO-10BR-CO-10: Sum of line net amounts (2000.00) does not equal LineTotalAmount / BT-106 (1900.00).
Cité mot pour mot depuis le validateur, sans reformulation.
Toutes les parties, IBAN et montants ci-dessous sont fictifs. Les IBAN sont structurellement valides — ils passent le mod-97 — mais ne correspondent à aucun compte réel.
Contenu du fichier
<?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.
Comment nous savons que ces résultats tiennent
Chaque fichier de cette bibliothèque passe dans le validateur du site à chaque build. Le résultat attendu annoncé ci-dessus est vérifié par un test automatisé : si un fichier cessait de correspondre à ce que cette page affirme, le build échouerait. Deux fixtures héritées ont été réparées ainsi avant publication : trois IBAN échouaient au mod-97 et plusieurs libellés utilisaient des caractères hors du jeu SEPA de base.