VRBL-INV-FR-CIUS-1p0-B2G-14

Basic Info

Rule For B2G and when the Invoice Subtype Code is S3 or S6, the Seller Agent Party Group, Seller Agent Party Legal Entity Company ID used as SIREN, and Seller Agent Party Identification ID used as SIRET must be present.
Context /ubl:Invoice
Pattern vrbl-invoice-fr-cpro-b2g
Severity warning

Implementation

not($isB2G)
or
not(
	contains(
		' S3 S6 ',
		concat(
			' ',
			substring-after(normalize-space(cec:UBLExtensions/cec:UBLExtension/cec:ExtensionContent/vrbl:InvoiceExtension/vrbl:InvoiceSubtypeCode), 'VRBL:FR:'),
			' '
		)
	)
)
or
(
	boolean(cac:AccountingSupplierParty/cac:Party/cac:AgentParty)
	and
	boolean(cac:AccountingSupplierParty/cac:Party/cac:AgentParty/cac:PartyLegalEntity/cbc:CompanyID)
	and
	boolean(cac:AccountingSupplierParty/cac:Party/cac:AgentParty/cac:PartyIdentification/cbc:ID[@schemeID = '0009'])
)