UBL, ebInterface and Practical Electronic Invoice Integration
Electronic invoicing is more than producing an XML file. Business systems need to exchange invoice data reliably while preserving the meaning of parties, line items, taxes, totals, payment information and references across different formats and implementations.
join.tech provides engineering around electronic invoice integrations, format analysis, validation, conversion and interoperability, with a focus on understanding the underlying invoice semantics rather than treating XML as an opaque document format.
Different electronic invoice formats often describe the same commercial concepts using different XML structures. Reliable integration therefore starts with the business meaning of an invoice, not only its syntax.
Current work includes:
A semantic model is particularly useful where invoices need to move between accounting systems, formats or integration boundaries without silently losing relevant information.
In practice, e-invoicing quickly becomes a systems-integration problem. Invoice data may originate in an ERP, billing application, project-management system or custom backend and then need to be transformed for customers, accounting platforms or external interfaces.
Typical engineering work includes:
As part of this work, join.tech develops invx, an open-source Rust toolkit and command-line application for working with structured electronic invoices.
invx reads supported invoice formats into a common canonical model. Validation, conversion and comparison then operate on invoice semantics rather than directly on format-specific XML.
Current functionality includes:
Two invoice documents can represent the same business information while looking very different at XML level. Element names, optional fields and format-specific representations can vary even where the commercial meaning remains unchanged.
Comparing XML directly therefore tends to mix syntactic differences with meaningful invoice differences. invx instead maps supported formats into a common invoice model before comparison.
This is useful for format conversions, migration projects and automated integration tests where the important question is whether invoice meaning has been preserved.
Invoice formats do not always have a one-to-one mapping. A concept available in one format may be restricted, represented differently or unavailable in another.
invx therefore performs conversion diagnostics before writing the target document. Potential problems are classified according to whether conversion is unsafe, potentially lossy or merely changes the representation without changing business meaning.
The guiding principle is simple: meaningful invoice information should not disappear silently during conversion.
join.tech also uses the technology in its own invoice workflow. Invoice data can be used to produce the conventional PDF document together with machine-readable UBL and ebInterface representations.
This provides a familiar human-readable invoice while making the same invoice information available for structured electronic processing.
invx is under active development. Support for UBL 2.1, ebInterface 6.1 and EN 16931 currently covers a practical subset and should not be interpreted as a claim of complete standards conformance or official certification.
The project deliberately favors explicit errors and diagnostics over silently discarding invoice information when a concept cannot be represented safely.
For electronic invoicing, invoice interoperability or related integration work: