2 releases
new 0.1.1 | Jan 18, 2025 |
---|---|
0.1.0 | Jan 17, 2025 |
#171 in Embedded development
133 downloads per month
6MB
22K
SLoC
Contains (JAR file, 44KB) gradle-wrapper.jar
einvoice-rs
The goal of this project is to implement
- XML parsing of CII and UBL e-invoices
- Validation / Parsing of CII and UBL e-invoices
- Generation of XML for CII and UBL e-invoices
- visualization of CII and UBL e-invoices
- generation of PDFs for CII e-invoices (zugferd)
- parsing of XMls embedded in PDFs (zugferd)
- provide cross-language and platform bindings for the above
[!CAUTION] Early stage of development, not ready for production use
License
This project is licensed under the terms described in the LICENSE file (MIT).
Features
- Serialization and Deserialization of CII and UBL XML invoices (EN 16931)
- Java Binding based on kotlin works for jre 8 and above
Roadmap
- Implement validation for Invoices
- Clean-Up generated files according to xsds / use stricter types
- add more language bindings
Running Tests
To run tests, run the following command
cargo test
This will validate that we can deserialize and serialize all tests in the xrechnung testsuite
Examples
Java
import com.schneppe.einvoice.InvoiceStandard;
import com.schneppe.einvoice.EinvoiceKt;
String xml = new String(Files.readAllBytes(path));
InvoiceStandard invoiceStandard = EinvoiceKt.validateInvoice(xml);
Rust
see examples for rust examples
Authors
Dependencies
~21MB
~307K SLoC