ID Category Description Query
BII2-T10-R001 BII2 cbc:CustomizationID
SI-V11-PO-R200 SI This XML instance is NOT tagged as an SI-UBL order; please check the CustomizationID value contains(normalize-space(.), 'urn:www.cenbii.eu:transaction:biitrns001:ver2.0:extended:urn:www.peppol.eu:bis:peppol3a:ver2.0:extended:urn:www.simplerinvoicing.org:si:si-ubl:ver1.2')
SI-PO-R000 SI This is NOT a UBL 2.x Order, validation cannot continue ubl:Order
SI-V12-PO-R201 SI This XML instance is NOT tagged as an SI-UBL order contains(., 'urn:www.simplerinvoicing.org:si:si-ubl:ver1.2')
SI-V12-PO-R001 SI Each order MUST be specified as a UBL 2.1 document cbc:UBLVersionID='2.1'
SI-V12-CODE-R003 SI Country codes in an order MUST be coded using ISO code list 3166-1 Long XPath used, check the schematron source
BII2-T01-R007 BII2 Allowances and charges MUST have a reason (cbc:AllowanceChargeReason)
BII2-T01-R021 BII2 An order MUST have the buyer party name or a buyer party identifier (cac:Party/cac:PartyName/cbc:Name) or (cac:Party/cac:PartyIdentification/cbc:ID)
BII2-T01-R012 BII2 Expected total amount for payment MUST NOT be negative, if expected total amount for payment is provided (cbc:PayableAmount) >= 0
BII2-T01-R013 BII2 Expected total sum of line amounts MUST NOT be negative, if expected total sum of line amounts is provided (cbc:LineExtensionAmount) >= 0
BII2-T01-R014 BII2 Expected total sum of line amounts MUST equal the sum of the order line amounts at order line level, if expected total sum of line amounts is provided (xs:decimal(cbc:LineExtensionAmount)) = (round(xs:decimal(sum(/ubl:Order/cac:OrderLine/cac:LineItem/cbc:LineExtensionAmount)) * 10 * 10) div 100)
BII2-T01-R015 BII2 Expected total sum of allowance at document level MUST be equal to the sum of allowance amounts at document level, if expected total sum of allowance at document level is provided (cbc:AllowanceTotalAmount and (xs:decimal(cbc:AllowanceTotalAmount)) = (round(xs:decimal(sum(/ubl:Order/cac:AllowanceCharge[cbc:ChargeIndicator="false"]/cbc:Amount)) * 10 * 10) div 100)) or not(cbc:AllowanceTotalAmount)
BII2-T01-R016 BII2 Expected total sum of charges at document level MUST be equal to the sum of charges at document level, if expected total sum of charges at document level is provided (cbc:ChargeTotalAmount and (xs:decimal(cbc:ChargeTotalAmount)) = (round(xs:decimal(sum(/ubl:Order/cac:AllowanceCharge[cbc:ChargeIndicator="true"]/cbc:Amount)) * 10 * 10) div 100)) or not(cbc:ChargeTotalAmount)
BII2-T01-R017 BII2 Expected total amount for payment MUST be equal to the sum of line amounts minus sum of allowances at document level plus sum of charges at document level and VAT total amount, if expected total amount for payment is provided Long XPath used, check the schematron source
BII2-T01-R019 BII2 Each item property MUST have a data name, if item property is provided (cbc:Name)
BII2-T01-R020 BII2 Each item property MUST have a data value, if item property is provided (cbc:Value)
BII2-T01-R001 BII2 An order MUST have a customization identifier (cbc:CustomizationID)
BII2-T01-R002 BII2 An order MUST have a profile identifier (cbc:ProfileID)
BII2-T01-R004 BII2 An order MUST have a document issue date (cbc:IssueDate)
BII2-T01-R006 BII2 An order MUST have a document identifier (cbc:ID)
BII2-T01-R009 BII2 An order MUST be stated in a single currency (cbc:DocumentCurrencyCode)
BII2-T01-R003 BII2 Each order line MUST have a document line identifier that is unique within the order (cac:LineItem/cbc:ID)
BII2-T01-R010 BII2 Each order line ordered quantity MUST not be negative (cac:LineItem/cbc:Quantity) >= 0
BII2-T01-R011 BII2 Each order line item net price MUST not be negative ((cac:LineItem/cac:Price/cbc:PriceAmount) >= 0) or (not(cac:LineItem/cac:Price))
BII2-T01-R030 BII2 Each order line ordered quantity MUST have an associated unit of measure (cac:LineItem/cbc:Quantity/@unitCode)
BII2-T01-R031 BII2 Each order line MUST have an item identifier and/or an item name (cac:LineItem/cac:Item/cbc:Name) or (cac:LineItem/cac:Item/cac:StandardItemIdentification/cbc:ID) or (cac:LineItem/cac:Item/cac:SellersItemIdentification/cbc:ID)
BII2-T01-R022 BII2 An order MUST have the seller party name or a seller party identifier (cac:Party/cac:PartyName/cbc:Name) or (cac:Party/cac:PartyIdentification/cbc:ID)
EUGEN-T01-R015 EUGEN A country identification code MUST have a list identifier attribute “ISO3166-1:Alpha2” @listID = 'ISO3166-1:Alpha2'
EUGEN-T01-R014 EUGEN A document currency code MUST have a list identifier attribute “ISO4217” @listID='ISO4217'
EUGEN-T01-R011 EUGEN An endpoint identifier MUST have a scheme identifier attribute @schemeID
EUGEN-T01-R013 EUGEN An order type code MUST have a list identifier attribute “UNCL1001” @listID='UNCL1001' or @listID='UNCLD1001'
EUGEN-T01-R012 EUGEN A party identifier MUST have a scheme identifier attribute @schemeID
EUGEN-T01-R017 EUGEN A tax category identifier MUST have a scheme identifier attribute “UNCL5305” @schemeID = 'UNCL5305'
EUGEN-T01-R016 EUGEN A unit code attribute MUST have a unit code list identifier attribute “UNECERec20” not(attribute::unitCode) or (attribute::unitCode and attribute::unitCodeListID = 'UNECERec20')
OP-T01-R001 OP OrderTypeCode in an order MUST be from UN/ECE 1001 code list PEPPOL Subset Long XPath used, check the schematron source
OP-T01-R002 OP DocumentCurrencyCode MUST be coded using ISO code list 4217 Long XPath used, check the schematron source
OP-T01-R003 OP A Binary Object MIME code attribute MUST be coded using MIME Code Type version 2008 code list Long XPath used, check the schematron source
OP-T01-R004 OP An Enpoint Identifier Scheme identifier MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers". Long XPath used, check the schematron source
OP-T01-R005 OP An Party Identifier Scheme identifier MUST be from the list of PEPPOL Party Identifiers described in the "PEPPOL Policy for using Identifiers". Long XPath used, check the schematron source
OP-T01-R006 OP Country codes in an order MUST be coded using ISO code list 3166-1 Long XPath used, check the schematron source
OP-T01-R007 OP currencyID MUST be coded using ISO code list 4217 Long XPath used, check the schematron source
OP-T01-R008 OP A tax category identifier MUST be coded using UN/ECE 5305 BII2 Subset ( ( not(contains(normalize-space(.),' ')) and contains( ' AE E S Z AA H ',concat(' ',normalize-space(.),' ') ) ) )
OP-T01-R009 OP Unit code MUST be coded according to the UN/ECE Recommendation 20 (2009) Long XPath used, check the schematron source