peppol-om

July 30, 2026 · View on GitHub

Sonatype Central javadoc

If this project saved you some time or made your day a little easier, a star would mean a lot — it helps others find it too.

Peppol specific stuff for Oman (OM)

peppol-om is part of my Peppol solution stack. See https://github.com/phax/peppol for other components and libraries in that area.

This contains a set of Java libraries. They are licensed under the Apache 2.0 license. The minimum requirement is Java 17.

The backing specifications are:

Submodules

This project consists of the following submodules (in alphabetic order)

  • peppol-om-tdd - contains the main logic to create OM TDD documents based on PINT OM documents as well as documentation
    • Main class to build a complete TDD from scratch is PeppolOMTDD10Builder
    • To run the Schematron validation, use class PeppolOMTDDValidator
  • peppol-om-tdd-datatypes - contains the JAXB generated OM TDD data model
    • Main class to read and write TDD XML is PeppolOMTDD10Marshaller
  • peppol-om-testfiles - contains Peppol OM specific test files as a reusable component
    • Main class is PeppolOMTestFiles

Maven usage

Add the following to your pom.xml to use this artifact, replacing x.y.z with the real version number.

<dependency>
  <groupId>com.helger.peppol</groupId>
  <artifactId>peppol-om-tdd</artifactId>
  <version>x.y.z</version>
</dependency>

Building

This project requires Apache Maven 3.x and Java 17 for building. Simply run

mvn clean install

to build the solution.

News and noteworthy

v1.2.2 - 2026-07-30

  • Synchronized Schematron and example files with the updated OM TDD v1.0.1 release (2026-07-29) from https://docs.peppol.eu/poac/om/om-tdd/
  • Schematron rule ibr-tdd-42 now allows the Seller tax identifier to be omitted for import of goods, import of service RCM and profit margin self invoices

v1.2.1 - 2026-07-23

  • Synchronized Schematron and example files with the updated OM TDD 2026-Q2-v1.0.1 release
  • Schematron rule ibr-tdd-27 now requires the ReportedDocument cbc:UUID (btom-07) to be a valid UUID version 5

v1.2.0 - 2026-07-22

  • Synchronized XSD, Schematron and example files with the OM TDD 2026-Q2-v1.0.1 release (2026-07-17)
  • Added the new mandatory Schematron rules ibr-tdd-61/ibr-tdd-62 (Seller name) and ibr-tdd-63/ibr-tdd-64 (Buyer name)
  • Generated JAXB classes moved from package com.helger.peppol.om.tdd.v100 to com.helger.peppol.om.tdd.v10

v1.1.0 - 2026-07-17

  • Updated to ph-schematron v10.x

v1.0.0 - 2026-06-26

  • Synchronized XSD, Schematron and example files with the final OM TDD v1.0.0 release (2026-06-23)

v0.9.0 - 2026-06-09

  • Updated to the latest XSD + Schematron

v0.8.0 - 2026-04-28

  • Initial version
  • Namespace URI is urn:peppol:schema:om-taxdata:1.0
  • Expected CustomizationID is urn:peppol:taxdata:om-1
  • Expected ProfileID is urn:peppol:taxreporting

My personal Coding Styleguide | It is appreciated if you star the GitHub project if you like it.