Replies: 6 comments 2 replies
-
Soviel ich weiss, gehört der Zu-/Abschlag direkt zu Price: <cac:Price>
<cbc:PriceAmount currencyID="USD">100.00</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="EA">1</cbc:BaseQuantity>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:AllowanceChargeReasonCode>95</cbc:AllowanceChargeReasonCode>
<cbc:AllowanceChargeReason>Volume discount</cbc:AllowanceChargeReason>
<cbc:MultiplierFactorNumeric>0.10</cbc:MultiplierFactorNumeric>
<cbc:Amount currencyID="USD">10.00</cbc:Amount>
<cbc:BaseAmount currencyID="USD">100.00</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price> |
Beta Was this translation helpful? Give feedback.
-
Hallo @NickSOAD , <xsd:element ref="cac:AllowanceCharge" minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>
<ccts:Component>
<ccts:ComponentType>ASBIE</ccts:ComponentType>
<ccts:DictionaryEntryName>Invoice. Allowance Charge</ccts:DictionaryEntryName>
<ccts:Definition>A discount or charge that applies to a price component.</ccts:Definition>
<ccts:Cardinality>0..n</ccts:Cardinality>
<ccts:ObjectClass>Invoice</ccts:ObjectClass>
<ccts:PropertyTerm>Allowance Charge</ccts:PropertyTerm>
<ccts:AssociatedObjectClass>Allowance Charge</ccts:AssociatedObjectClass>
<ccts:RepresentationTerm>Allowance Charge</ccts:RepresentationTerm>
</ccts:Component>
</xsd:documentation>
</xsd:annotation>
</xsd:element> Habe auch dies gefunden: Jetzt weiss, ich nicht, wie sehr sich diese ganzen UBL Versionen unterscheiden. P.S.: jetzt erst gesehen: wie bei ZUGFeRD auch, es gibt AllowanceCharge auf beiden Ebenen, sowohl InvoiceLine und Price. 😄 |
Beta Was this translation helpful? Give feedback.
-
Nur als Info/Referenz, falls das mal jemand zum Codieren braucht. Beispieldatei: https://docs.oasis-open.org/ubl/os-UBL-2.3/xml/UBL-Invoice-2.1-Example.xml Die Stark reduzierter Auszug nur mit den hier relevanten Zeilen: <cac:InvoiceLine>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Damage</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="EUR">12</cbc:Amount>
</cac:AllowanceCharge>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Testing</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="EUR">10</cbc:Amount>
</cac:AllowanceCharge>
<cac:Price>
<cbc:PriceAmount currencyID="EUR">1273</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">1</cbc:BaseQuantity>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Contract</cbc:AllowanceChargeReason>
<cbc:MultiplierFactorNumeric>0.15</cbc:MultiplierFactorNumeric>
<cbc:Amount currencyID="EUR">225</cbc:Amount>
<cbc:BaseAmount currencyID="EUR">1500</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price>
</cac:InvoiceLine> Rechenweg: 1500 - 15% + 10 - 12 = 1273 Das habe ich jetzt noch nicht im Code nachgeschaut, ob das dort bereits komplett implementiert ist oder ggf. noch Elemente fehlen sollten (ist schon 1:38 Uhr). |
Beta Was this translation helpful? Give feedback.
-
Hallo @NickSOAD , Die genannte PEPPOL Regeln geben da die passenden Hinweise, wie sich z.B. der Positionsbetrag ergeben muss: Im ersten Beispiel, wo <cac:Price>
<cbc:PriceAmount currencyID="EUR">71.40</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:Amount currencyID="EUR">14.28</cbc:Amount>
<cbc:BaseAmount currencyID="EUR">142.80</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price> Korrekte Version: Somit ist der eigentliche <cac:Price>
<cbc:PriceAmount currencyID="EUR">64.26</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">1.00</cbc:BaseQuantity>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:Amount currencyID="EUR">7.14</cbc:Amount>
<cbc:BaseAmount currencyID="EUR">71.40</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price> Ich habe das so jetzt nicht durch einen Validator geschickt, sondern einfach von der Regel hergeleitet. Hoffentlich habe ich (mit zu wenig Kaffee am Morgen) die Begrifflichkeiten nicht verdreht oder andere Fehler begangen. 😄 Wie im vorherigen Post schon geschrieben, steht die Codierung auf einem anderen Blatt Papier, den UBL Writer müsste ich mir erst noch genauer anschauen. |
Beta Was this translation helpful? Give feedback.
-
Hallo @tobitege, danke für die Ausführliche Rückmeldung. Dann kommt allerdings die "Frage" auf, dass wenn die Funktion Danke für die Infos! :) |
Beta Was this translation helpful? Give feedback.
-
Es gibt ja 2 Methoden dazu in |
Beta Was this translation helpful? Give feedback.
-
Hallo,
folgendes ist mir beim Erstellen von cac:AllowanceChargeElementen in einer InvoiceLine aufgefallen:
Danke und Grüße
Niklas :)
Beta Was this translation helpful? Give feedback.
All reactions