· kaynak dev.to (home feed)
eu-einvoice, Java olmadan Python'a XRechnung, Peppol ve ZUGFeRD fatura üretimi getiriyor
Bir dev.to yazısı, AB e-fatura zorunlulukları yaklaşırken XRechnung, Peppol ve ZUGFeRD faturaları üreten ve doğrulayan MIT lisanslı Python kütüphanesi ve Claude skill'i olan eu-einvoice'u tanıtıyor.

Bir geliştirici, makine tarafından okunabilir AB faturaları oluşturan ve doğrulayan MIT lisanslı bir Python paketi olan eu-einvoice'u yayınladı; paket, onu Claude için bir "skill" olarak paketleyen isteğe bağlı bir sarmalayıcıyla birlikte geliyor. Proje 24 Ekim 2026 tarihinde dev.to üzerinde yayınlanan bir yazıda ortaya çıktı ve tam da blok genelinde e-fatura zorunlulukları dalgası sürerken geldi.
Uyum saati
Yazıya göre Almanya 2027'den itibaren makine tarafından okunabilir B2B faturaları zorunlu kılacak, Fransa Eylül 2026'da bunu izliyor ve Belçika Ocak 2026'dan beri Peppol tabanlı faturalama gerektiriyor. Daha önce sıradan PDF faturaları gönderen geliştiriciler ve küçük işletmeler artık resmi doğrulamadan geçen XML üretmek zorunda. Yazarın argümanı, bir dil modelinden bu XML'i serbestçe yazmasını istemenin güvenilmez olduğu: çıktı makul görünebilir ama KDV dökümü bir kuruş sapmış olabilir, Alman kamu alıcılarının kullandığı Leitweg-ID eksik olabilir ya da bir tanımlayıcı yanlış şema ile etiketlenmiş olabilir.
Kütüphane ne yapıyor
eu-einvoice işi iki parçaya bölüyor. Bir dil modeli faturanın düz metin halindeki açıklamasını bir JSON modeline çeviriyor ve oradan itibaren deterministik bir script devralıyor: satır toplamlarını, KDV dökümünü ve belge toplamlarını hesaplıyor, ardından faturayı UBL ya da CII ile — AB'nin temel e-fatura standardı olan EN 16931 için kullanılan iki XML sözdizimi — ya da Factur-X/ZUGFeRD hibrit bir PDF/A-3 dosyası olarak üretiyor.
Üretilen dosyalar daha sonra resmi kural kümelerine karşı doğrulanıyor: CEN EN 16931, Almanya'nın XRechnung'a uyguladığı KoSIT kuralları ve Peppol ağı için OpenPeppol kuralları. Yazı, bu doğrulayıcıların Python'dan yönetilen Saxon-HE üzerinden çalıştığını ve bu nedenle ayrı bir Java runtime'a gerek olmadığını vurguluyor. Doğrulama başarısız olduğunda araç hangi kuralın ihlal edildiğini ve nasıl düzeltileceğini bildiriyor. Ayrıca resmi kuralların denetlemediği tanımlayıcıların kontrol basamaklarını da doğruluyor; bunlar arasında Alman Leitweg-ID, Fransız SIREN şirket numarası ve Belçika kuruluş numaraları var. Kütüphane gelen belgeleri de işliyor — alınmış bir XRechnung dosyasını okumak için yazı, faturanın ne kadar ödenecek olduğunu sorma örneğini veriyor.
Claude skill'i olarak paketlendi
Sadece pip install eu-einvoice ile kurulan pip paketinin ötesinde, araç seti bir Claude Code eklentisi olarak eklenti marketi üzerinden dağıtılıyor; JSON modellemesini Claude yapıyor, aritmetik ve doğrulamayı script yapıyor. Yazar, skill ile ve skillsiz çalıştırılan özdeş görevleri kıyasladı ve her iki yapılandırmanın da genellikle işi tamamladığını, ancak skill sürümünün kabaca iki kat hızlı çalıştığını bildiriyor. Bir değerlendirme vakasında skill, taban çizgisinin kaçırdığı hatalı yazılmış bir Leitweg-ID'yi yakladı — tam da deterministik denetimlerin yakalamak için tasarlandığı hata sınıfından bu. Bu rakamlar yazarın kendi ölçümleri; değerlendirme vakaları, kendisi de Claude Code ile geliştirilmiş olan projenin GitHub deposunda yayımlandı.
Neden önemli
AB e-fatura zorunlulukları, fatura üretimini bir biçimlendirme işinden makine tarafından zorlanan kurallara sahip bir uyum görevine dönüştürüyor. Bu proje, yaygınlaşması muhtemel bir örüntüyü gözler önüne seriyor: bir dil modeli belirsiz ön ucu — "bu müşteriye üç lisans artı KDV için fatura kes" cümlesini yapılandırılmış veriye çevirme işini — üstlenirken, geleneksel kod toplamları hesaplıyor ve resmi doğrulamayı çalıştırıyor; böylece halüsinasyona dayalı aritmetik ve bozuk tanımlayıcılar, vergi otoritelerının ve ticari ortakların diğer türlü reddedeceği belgelerin dışında tutuluyor. Python tabanlı ekipler için, Java araç zinciri olmadan doğrulama yapan MIT lisanslı bir paket, Alman ve Fransız son tarihleri gelmeden çok önce uyumu test etmenin eşiğini düşürüyor.
- #python
- #e-invoicing
- #xrechnung
- #peppol
- #open-source