What is OASIS UBL?
UBL (Universal Business Language) is an open, royalty-free library of standard XML schemas for electronic business documents. It is published and maintained by OASIS (Organization for the Advancement of Structured Information Standards), a non-profit consortium that produces open standards for security, IoT, energy, content technologies, and emergency management.
UBL covers the full document family of a typical procurement and billing process: orders, order responses, despatch advices, receipt advices, invoices, credit notes, statements, catalogues, transport documents, and more. In e-invoicing, the UBL Invoice and UBL CreditNote schemas are the relevant ones — and they are the XML syntax behind almost every European e-invoicing CIUS, including Peppol BIS Billing 3.0, XRechnung, and several country-specific implementations.
OASIS — The Standards Body
OASIS is one of the longest-established open standards organisations on the internet, formed in 1993 as SGML Open. Its standards are developed in publicly chartered Technical Committees (TCs) with open membership, an open balloting process, and royalty-free intellectual property terms. Other well-known OASIS standards include OpenDocument Format (ODF), SAML, MQTT, and DITA.
The OASIS UBL TC is the technical committee responsible for UBL. It includes representatives from international standards organisations (UN/CEFACT, ISO/TC 154), national e-business initiatives, and large user organisations. The TC works in the open: drafts, meeting minutes, and ballots are published.
UBL's Lineage
UBL grew out of earlier XML business-document efforts (xCBL, ebXML) in the early 2000s. Its key milestones:
For e-invoicing purposes, UBL 2.1 remains the working version: EN 16931's UBL syntax binding is defined against UBL 2.1, and Peppol BIS Billing 3.0 also uses UBL 2.1. Newer UBL versions are backwards-compatible at the message level.
How UBL Schemas Are Built
UBL is built from a layered model:
1. Common Basic Components (CBC) — Atomic data items: text, dates, numeric amounts, codes, identifiers. Lives in the cbc: namespace.
2. Common Aggregate Components (CAC) — Reusable groupings of CBCs and other CACs (e.g. Address, Party, MonetaryTotal). Lives in the cac: namespace.
3. Document schemas — Top-level documents (Invoice, Order, etc.) assembled from CACs and CBCs. Each document has its own root namespace.
This layered design is what makes UBL extensible: a new document type can reuse the same cac:Party or cac:Address definitions used everywhere else, ensuring consistency across the document family.
UBL and EN 16931
EN 16931 defines the semantic data model for European e-invoices — business terms (BT-1 to BT-160) and business groups (BG-1 to BG-50). It does not define an XML format directly; instead, it specifies two binding syntaxes:
A Peppol BIS or XRechnung invoice is, mechanically, a UBL Invoice document with EN 16931 + Peppol/national Schematron rules layered on top. The mapping from each EN 16931 BT to a UBL XPath is published in the EN 16931 implementation guidelines.
Why UBL Matters for ERP Vendors
If you build software that issues, receives, or transforms European e-invoices, you almost certainly produce or consume UBL XML. Practical implications:
Invoice-2 root namespace with cbc: and cac: is non-negotiable; missing namespace declarations are a leading source of XSD failures.UBL-2.1 XSDs from docs.oasis-open.org or the relevant Peppol/EN 16931 distribution.Licensing
UBL is royalty-free. OASIS publishes UBL under a non-assertion IP policy: implementing UBL does not require a licence fee or membership. This is one of the reasons UBL has been widely adopted by national e-invoicing programmes: governments and ERP vendors can ship UBL-based products without negotiating IP terms.
Where You Encounter UBL in the Wild
The other major syntax — UN/CEFACT CII — is used by ZUGFeRD and Factur-X and dominates in the German and French hybrid-PDF context. UBL is the dominant syntax everywhere else in Europe.