# eu-einvoice: create and validate EU e-invoices (XRechnung, Peppol, ZUGFeRD) in Python, no Java

> Source: <https://dev.to/_c3d14d1e5876ae36a6dbe/eu-einvoice-create-and-validate-eu-e-invoices-xrechnung-peppol-zugferd-in-python-no-java-1b9f>
> Published: 2026-10-24 06:02:21+00:00

Germany (B2B from 2027), France (from Sept 2026) and Belgium (Peppol since Jan 2026) now require machine-readable e-invoices. Asking Claude to "write an XRechnung XML" usually gives you something that looks right but gets rejected: the VAT breakdown is off by a cent, the Leitweg-ID is missing, or an identifier uses the wrong scheme.

So I packaged the tooling as a skill:

I benchmarked it skill-creator style: the same tasks run by Claude with and without the skill. Both usually get there, but with the skill it's about 2× faster. In one case the user's Leitweg-ID was mistyped: the skill caught it, the baseline didn't. Details and all eval cases are in the repo.

Repo (MIT): [https://github.com/uulucky/claude-skill-eu-einvoice](https://github.com/uulucky/claude-skill-eu-einvoice)

Claude Code: `/plugin marketplace add uulucky/claude-skill-eu-einvoice` then `/plugin install eu-einvoice@uulucky-skills`

Python only: `pip install eu-einvoice`

Built with Claude Code. Feedback from anyone who actually deals with XRechnung or Peppol is very welcome.
