Reference · EN 16931 · BR-CL
BR-CL — Code lists
The EN 16931 business rules in the BR-CL family (Code lists), with CEN's own wording, the business terms each one names, and where each is asserted in a UBL invoice. To check a document against these rules, use the free EN 16931 validator.
These are the EN 16931 business rules of this family, as published by CEN/TC 434 in the validation artefacts that accompany the standard. The wording here is the rule text itself, and it is never a paraphrase. The codes in parentheses are business terms (BT-) and business term groups (BG-), the semantic model's names for the fields a rule constrains, and the location given with each rule is where it is asserted in a UBL invoice.
Rules
The document type code MUST be coded by the invoice and credit note related code lists of UNTDID 1001.
Location: cbc:InvoiceTypeCode | cbc:CreditNoteTypeCode
currencyID MUST be coded using ISO code list 4217 alpha-3
Location: cbc:Amount | cbc:BaseAmount | cbc:PriceAmount | cbc:TaxAmount | cbc:TaxableAmount | cbc:LineExtensionAmount | cbc:TaxExclusiveAmount | cbc:TaxInclusiveAmount | cbc:AllowanceTotalAmount | cbc:ChargeTotalAmount | cbc:PrepaidAmount | cbc:PayableRoundingAmount | cbc:PayableAmount
Invoice currency code MUST be coded using ISO code list 4217 alpha-3
Location: cbc:DocumentCurrencyCode
Tax currency code MUST be coded using ISO code list 4217 alpha-3
Location: cbc:TaxCurrencyCode
Value added tax point date code MUST be coded using a restriction of UNTDID 2005.
Location: cac:InvoicePeriod/cbc:DescriptionCode
Object identifier identification scheme identifier MUST be coded using a restriction of UNTDID 1153.
Location: cac:AdditionalDocumentReference[cbc:DocumentTypeCode = '130']/cbc:ID[@schemeID] | cac:DocumentReference[cbc:DocumentTypeCode = '130']/cbc:ID[@schemeID]
Invoiced note subject code shall be coded using UNCL4451
Location: /ubl:Invoice/cbc:Note | /cn:CreditNote/cbc:Note
Any identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list.
Location: cac:PartyIdentification/cbc:ID[@schemeID]
Any registration identifier identification scheme identifier MUST be coded using one of the ISO 6523 ICD list.
Location: cac:PartyLegalEntity/cbc:CompanyID[@schemeID]
Item classification identifier identification scheme identifier MUST be coded using one of the UNTDID 7143 list.
Location: cac:CommodityClassification/cbc:ItemClassificationCode[@listID]
Country codes in an invoice MUST be coded using ISO code list 3166-1
Location: cac:Country/cbc:IdentificationCode
Country codes in an invoice MUST be coded using ISO code list 3166-1
Location: cac:OriginCountry/cbc:IdentificationCode
Payment means in an invoice MUST be coded using UNCL4461 code list
Location: cac:PaymentMeans/cbc:PaymentMeansCode
Invoice tax categories MUST be coded using UNCL5305 code list
Location: cac:TaxCategory/cbc:ID
Invoice tax categories MUST be coded using UNCL5305 code list
Location: cac:ClassifiedTaxCategory/cbc:ID
Coded allowance reasons MUST belong to the UNCL 5189 code list
Location: cac:AllowanceCharge[cbc:ChargeIndicator = false()]/cbc:AllowanceChargeReasonCode
Coded charge reasons MUST belong to the UNCL 7161 code list
Location: cac:AllowanceCharge[cbc:ChargeIndicator = true()]/cbc:AllowanceChargeReasonCode
Item standard identifier scheme identifier MUST belong to the ISO 6523 ICD code list
Location: cac:StandardItemIdentification/cbc:ID[@schemeID]
Tax exemption reason code identifier scheme identifier MUST belong to the CEF VATEX code list
Location: cbc:TaxExemptionReasonCode
Unit code MUST be coded according to the UN/ECE Recommendation 20 with Rec 21 extension
Location: cbc:InvoicedQuantity[@unitCode] | cbc:BaseQuantity[@unitCode] | cbc:CreditedQuantity[@unitCode]
For Mime code in attribute use MIMEMediaType.
Location: cbc:EmbeddedDocumentBinaryObject[@mimeCode]
Endpoint identifier scheme identifier MUST belong to the CEF EAS code list
Location: cbc:EndpointID[@schemeID]
Delivery location identifier scheme identifier MUST belong to the ISO 6523 ICD code list
Location: cac:DeliveryLocation/cbc:ID[@schemeID]
What this does not cover
This page states what the rules say. To check a document against them, use the free EN 16931 validator.
Sources
- CEN/TC 434 EN 16931 validation artefacts (Schematron) — the published rule set this page quotes, in the abstract model and code list rule files.