VRBL-INV-SA-1p2-151
Basic Info
|
Rule
|
The value of the Seller Party Identification Scheme ID must be contained in ISO 6523 ICD [VRBL-CL-IdentificationSchemeID] or be contained in SEPA [VRBL-CL-IdentificationSchemeID-SEPA-Extension] or be contained in Seller ID Code [VRBL-CL-SA-SupplierPartyIdentificationCode] (prefixed by 'VRBL:SA:'). For more information visit: https://docs.peppol.eu/poacc/billing/3.0/2025-Q4/codelist/ICD/ |
|
Context
|
/ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID
|
|
Pattern
|
vrbl-invoice-sa-1p2 |
|
Severity
|
fatal |
Used Template: CodeList
| Parameter |
|
Value |
| probe |
= |
@schemeID
|
| codeList |
= |
$VRBL-CL-IdentificationSchemeID or $VRBL-CL-IdentificationSchemeID-SEPA-Extension or $VRBL-SA-Prefix:$VRBL-CL-SA-SupplierPartyIdentificationCode
|
Implementation
not(boolean(@schemeID))
or
(
(
not(
contains(
normalize-space(@schemeID),
substring($VRBL-CL-IdentificationSchemeID, 1, 1)
)
)
and
contains(
$VRBL-CL-IdentificationSchemeID,
concat(
substring($VRBL-CL-IdentificationSchemeID, 1, 1),
normalize-space(@schemeID),
substring($VRBL-CL-IdentificationSchemeID, 1, 1)
)
)
)
)
or
(
(
not(
contains(
normalize-space(@schemeID),
substring($VRBL-CL-IdentificationSchemeID-SEPA-Extension, 1, 1)
)
)
and
contains(
$VRBL-CL-IdentificationSchemeID-SEPA-Extension,
concat(
substring($VRBL-CL-IdentificationSchemeID-SEPA-Extension, 1, 1),
normalize-space(@schemeID),
substring($VRBL-CL-IdentificationSchemeID-SEPA-Extension, 1, 1)
)
)
)
)
or
(
(
substring(normalize-space(@schemeID), 1, string-length($VRBL-SA-Prefix)) = $VRBL-SA-Prefix
and
not(
contains(
substring-after(normalize-space(@schemeID), $VRBL-SA-Prefix),
substring($VRBL-CL-SA-SupplierPartyIdentificationCode, 1, 1)
)
)
and
contains(
$VRBL-CL-SA-SupplierPartyIdentificationCode,
concat(
substring($VRBL-CL-SA-SupplierPartyIdentificationCode, 1, 1),
substring-after(normalize-space(@schemeID), $VRBL-SA-Prefix),
substring($VRBL-CL-SA-SupplierPartyIdentificationCode, 1, 1)
)
)
)
)