Fälligkeit bei positivem Zahlbetrag angeben

Fehler BR-CO-25 EN 16931

Ist der fällige Zahlungsbetrag (BT-115) positiv, muss entweder das Fälligkeitsdatum der Zahlung (BT-9) oder die Zahlungsbedingungen (BT-20) vorhanden sein.

Pflichtregel: Solange sie verletzt ist, ist die Rechnung ungültig und wird von Validatoren abgewiesen.
Was nicht stimmt

Wenn ram:DuePayableAmount positiv ist, fehlt sowohl ein Fälligkeitsdatum in ram:SpecifiedTradePaymentTerms/ram:DueDateDateTime als auch eine Beschreibung der Zahlungsbedingungen in ram:SpecifiedTradePaymentTerms/ram:Description.

Was die Regel bedeutet

Bei einem positiven Zahlbetrag muss die Rechnung angeben, wann die Zahlung fällig ist oder welche Zahlungsbedingungen gelten. So erhält der Käufer die für die Zahlung erforderliche Information.

Betroffene Felder BT-115 BT-9 BT-20
Bitte ergänzen Sie Fälligkeitsangaben für den positiven Zahlbetrag

Der Zahlbetrag Ihrer Rechnung ist positiv, aber es fehlt eine Angabe dazu, wann oder unter welchen Bedingungen er zu zahlen ist. Das lässt sich durch ein Fälligkeitsdatum oder eine Beschreibung der Zahlungsbedingungen ergänzen.

Was ist zu tun?
  1. Prüfen Sie den Wert von DuePayableAmount.
  2. Ergänzen Sie in AddTradePaymentTerms(...) entweder ein Fälligkeitsdatum oder eine Beschreibung der Zahlungsbedingungen.
  3. Erzeugen Sie die Rechnung neu und prüfen Sie sie erneut.
So sieht es aus
✗ Führt zur Meldung
<ram:DuePayableAmount>100.00</ram:DuePayableAmount>
<ram:SpecifiedTradePaymentTerms/>
✓ In Ordnung
<ram:DuePayableAmount>100.00</ram:DuePayableAmount>
<ram:SpecifiedTradePaymentTerms>
  <ram:Description>Payable within 30 days</ram:Description>
</ram:SpecifiedTradePaymentTerms>
In FactoorSharp prüfen
  • FacturXInvoice.AddTradePaymentTerms(description, dueDate, paymentTermsType, dueDays, percentage, baseAmount, actualAmount, maturityDate) (BT-20)
  • FacturXInvoice.ClearTradePaymentTerms() (BT-20)
  • FacturXInvoice.DuePayableAmount (BT-115)
  • FacturXInvoice.GetTradePaymentTerms() (BT-20)
  • FacturXInvoice.PaymentTerms (BT-20)
Technische Details

Der Test löst den Fehler nur aus, wenn number(//ram:DuePayableAmount) > 0 gilt und weder ram:DueDateDateTime noch ram:Description unter ram:SpecifiedTradePaymentTerms vorhanden ist. Bei einem nicht positiven Zahlbetrag ist die Bedingung erfüllt.

Wo die Regel greift

Die Regel gilt auf Rechnungsebene. Sie prüft ram:DuePayableAmount sowie die Zahlungsbedingungen in ram:SpecifiedTradePaymentTerms.

Originalmeldung aus dem Schematron
In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.
Kontext (rule/@context)
/rsm:CrossIndustryInvoice
Prüfausdruck (assert/@test)
( number(//ram:DuePayableAmount) > 0 and ( (//ram:SpecifiedTradePaymentTerms/ram:DueDateDateTime) or (//ram:SpecifiedTradePaymentTerms/ram:Description) ) ) or not(number(//ram:DuePayableAmount) > 0)
Änderungen in den KoSIT-Prüfregeln
  • 2022-11-152022-11-15 · AddedTest to monitor implementation of BR-CO-25