VRBL-INV-DK-1p0-21

Basic Info

Rule If the Payment Means Payment ID is prefixed with 04# or 15# the 16 digits instruction ID must be added to the Payment ID eg. "04#1234567890123456" when Payment Means Code equals 50 (Giro)
Context /ubl:Invoice/cac:PaymentMeans/cbc:PaymentID
Pattern vrbl-invoice-dk-1p0
Severity fatal

Implementation

not($DKSupplierCountry = 'DK')
or
not(normalize-space(../cbc:PaymentMeansCode) = '50')
or
(
	(
		substring(normalize-space(.), 1, 2) = '04'
		or
		substring(normalize-space(.), 1, 2) = '15'
	)
	and 
	string-length(normalize-space(.)) = 19
)