Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.
Both ram:TaxPointDate (BT-7) and ram:DueDateTypeCode (BT-8) are provided in the same VAT breakdown. These two values are mutually exclusive.
BT-7 contains the VAT date, while BT-8 contains a VAT date code. Both values must not be used together for an invoice.
The invoice contains both a VAT date and a VAT date code. Keep one of these values; you may also leave both out.
- Find the relevant
ram:ApplicableTradeTax. - If both are present, remove either
ram:TaxPointDateorram:DueDateTypeCode. - Check the call to
SetTaxPointDate(...). - Generate the invoice again and validate it once more.
<ram:ApplicableTradeTax> <ram:TaxPointDate>2026-10-03</ram:TaxPointDate> <ram:DueDateTypeCode>5</ram:DueDateTypeCode> </ram:ApplicableTradeTax>
<ram:ApplicableTradeTax> <ram:TaxPointDate>2026-10-03</ram:TaxPointDate> </ram:ApplicableTradeTax>
Tax.SetTaxPointDate(taxPointDate, dueDateTypeCode)(BT-7; BT-8)
Technical details
The test passes when exactly one of the two elements is present or when both are absent. It fails when ram:TaxPointDate and ram:DueDateTypeCode are both present.
The rule applies within each ram:ApplicableTradeTax in the document-level settlement.
rule/@context)assert/@test)