What is UBL?

Universal Business Language (UBL) 2.1 is an OASIS XML standard for business documents including invoices, widely used as the syntax for Peppol BIS and national e-invoicing implementations.

How UBL Works

UBL defines XML schemas for business documents. A UBL invoice contains structured elements like:

<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">
  <cbc:ID>INV-2024-001</cbc:ID>
  <cbc:IssueDate>2024-01-15</cbc:IssueDate>
  <cac:AccountingSupplierParty>...</cac:AccountingSupplierParty>
  <cac:AccountingCustomerParty>...</cac:AccountingCustomerParty>
  <cac:InvoiceLine>...</cac:InvoiceLine>
</Invoice>

UBL Namespaces

UBL uses two main namespace prefixes:

  • cbc: Common Basic Components (simple values like dates, amounts)
  • cac: Common Aggregate Components (complex structures like parties, addresses)

UBL vs Peppol BIS

Peppol BIS Billing 3.0 is built on UBL 2.1 but adds specific business rules and restrictions. Think of UBL as the "language" and Peppol BIS as the "dialect" used on the Peppol network.

Why UBL Matters

International Standard

UBL is the de facto standard for cross-border e-invoicing in the EU. If you send invoices via Peppol, you're using UBL.

EN 16931 Compliant

UBL 2.1 is one of the two official syntaxes for EU e-invoicing. XRechnung, Peppol BIS, and many national formats are based on UBL.

Well Supported

Major accounting software, ERP systems, and e-invoicing platforms support UBL natively. Libraries exist for all programming languages.

How to Get Started

Step 1: Understand the Structure

UBL invoices follow a hierarchical XML structure. Study the core elements: parties, line items, tax totals, and payment means.

Step 2: Choose Your Profile

For EU use, implement Peppol BIS Billing 3.0 (based on UBL). For specific countries, check if they have additional requirements (e.g., XRechnung for Germany).

Step 3: Validate Thoroughly

UBL validation involves multiple levels: XML schema validation, business rule checking, and profile-specific rules.

How Invoice Navigator handles UBL

Invoice Navigator validates UBL 2.1 invoices as used across Peppol BIS, XRechnung, and other CIUS profiles. The engine parses UBL syntax, runs EN 16931 semantic checks, and applies profile-specific rules. Auto-remediation corrects structural issues without altering line items or tax calculations.

View API documentation

Validate Your UBL Invoice

Check UBL syntax and business rule compliance.

Validate Now

Continue Learning

Up Next

What is CII?

Cross Industry Invoice (CII) is a UN/CEFACT XML syntax for electronic invoices, used as the base format for ZUGFeRD, Factur-X, and one of the two EN 16931-compliant syntaxes.

Frequently Asked Questions

Related Resources