VRBL-INV-IT-1p2-9

Basic Info

Rule For the Invoice Type Code "TD16", "TD17", "TD18", "TD19", "TD20", "TD22", "TD23", "TD28", the Buyer Tax Company ID used as VAT ID must exist.
Context /ubl:Invoice
Pattern vrbl-invoice-it-1p2
Severity fatal

Implementation

not(
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD16')
	or
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD17')
	or
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD18')
	or
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD19')
	or
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD20')
	or
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD22')
	or
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD23')
	or
	cbc:InvoiceTypeCode = concat($VRBL-IT-Prefix, 'TD28')
)
or
boolean(cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/cbc:ID = 'VAT']/cbc:CompanyID)