errorsyntaxubl-2.1

UBL-SR-08:Quantity missing unit code

Fix: Add unitCode attribute using UN/ECE Rec 20.

Quantity elements must have unitCode attribute.

Severity
Fatal
Rule set
ubl-2.1
Country
All EU
Fix type
CONFIRM
Confidence
90%
Category
structural

Engine Classification

Requires user confirmation before application

What is UBL-SR-08?

UBL-SR-08 is a fatal validation rule defined in the ubl-2.1 specification. It validates the InvoicePeriod element in the UBL invoice XML.

When this rule fires, the invoice is rejected by Peppol access points and never reaches the buyer.

Target path: /Invoice/cac:InvoicePeriod

Why This Error Matters

Invoice will be rejected by EN16931 validators. These structural constraints ensure consistent processing by receiving systems.

UBL-SR-08 is a hard failure — the invoice must be corrected and re-sent before it can reach the recipient.

Validator Behavior

  • ·Causes invoice rejection
  • ·Fails UBL schema validation
  • ·Error returned: UBL-SR-08
  • ·Specification: ubl-2.1

How to Fix It

1.

Find quantities

InvoicedQuantity, BaseQuantity, etc.

2.

Add unitCode

C62 (unit), HUR (hour), KGM (kg), etc.

XML Example

Generic example based on the rule's target XPath. Your actual XML structure may differ.

Before
<!-- Required block is missing -->
<!-- <cac:InvoicePeriod> ... </cac:InvoicePeriod> -->
After
<!-- Add the required block -->
<cac:InvoicePeriod>
  <!-- child elements -->
</cac:InvoicePeriod>

Technical Reference

XPath/Invoice/cac:InvoicePeriod
Specubl-2.1
Operationremove_duplicates
StrategyRemove duplicate invoice periods, keeping the first occurrence

Common Causes

  • ·ERP system exports multiple references where only one is allowed in EN16931
  • ·Data consolidation merged records that should have been deduplicated
  • ·Template or mapping incorrectly configured to output duplicate elements
  • ·Manual editing introduced extra elements
  • ·Invoice conversion from another format did not merge duplicate entries

Seeing this in production? The API handles UBL-SR-08 automatically. See the fix response →

Frequently Asked Questions

Quantity elements must have unitCode attribute.

Add unitCode attribute using UN/ECE Rec 20. Invoice Navigator can propose a fix for this error, which you review and confirm before it is applied.

Yes, UBL-SR-08 is a critical error that will cause invoice rejection. It must be fixed before submission.

Related Errors

Related Content

Last updated: 3 March 2026

Share this guide:

Validate your invoice

Drop your XML here to check for UBL-SR-08

Fix UBL-SR-08 with one click

Upload your invoice and we'll suggest a fix for your review before applying it.