ZUGFeRD SharePoint Listesinden E-Fatura: PDF4me ile Power Automate'te JSON'u EN 16931 XML ve PDF/A-3'e Dönüştürme

PDF4me Create ZUGFeRD Invoice fatura verilerini hibrit bir PDF/A-3 e-faturaya dönüştüren bir Power Automate eylemidir. Bir SharePoint listesine yönlendirilen bu eylem, Compose eyleminin her satırdan oluşturduğu JSON verilerini alır, EN 16931 XML'ini kendisi yazar, okunabilir faturayı temel PDF'nize çizer, sonucu dosyalar ve alıcıya e-posta ile gönderir.
ZUGFeRD arattığınızda üç yerden birine ulaşırsınız: formatın ne olduğuna dair bir açıklama, zaten sahip olduğunuz bir dosyanın doğru olup olmadığını söyleyen bir doğrulayıcı veya faturalama yazılımı geliştiren geliştiriciler için PHP, Java veya C#'ta yazılmış bir kütüphane. Üçü de faturanın zaten bir yerde mevcut olduğunu varsayar. Hiçbirinin cevaplamadığı soru, bir finans ekibinin aslında sorduğu sorudur: fatura verileri bir listede, bir elektronik tabloda veya satılanları kaydeden herhangi bir sistemde bulunur ve diğer uçtan uyumlu bir e-fatura olarak çıkması gerekir. Bu akış, yedi adımda ve kod yazmadan, eksik olan orta noktayı tamamlar.
SharePoint listesine satıcı, alıcı, tek bir kalem ve tarihleri içeren bir satır eklenir. Dört saniye sonra, belge kitaplığında PDF/A-3 boyutunda bir fatura bulunur: alıcının yazılımının işlemesi için içine EN 16931 XML'i yerleştirilmiş, okunabilir bir sayfa. Bu XML'i asla siz yazmazsınız. Faturayı kısa bir JSON nesnesi olarak tanımlarsınız ve PDF4me şemayı oluşturur. Satır durumunu ve bağlantısını alır ve alıcı dosyayı e-posta ile alır.
Neden Odaklı Soru-Cevap
Fatura verilerini neden SharePoint listesinde tutuyoruz? Çünkü çoğu küçük finans ekibi için veriler zaten bu formatta: fatura başına bir satır ve her satır bir kişi tarafından dolduruluyor. Sütunlar, standartta istenen alanlarla bire bir eşleşiyor; bu da eşleşmenin listeyi açan herkes tarafından görülebileceği ve yeni bir faturanın izlenen bir klasörde yeni bir dosya yerine yeni bir satır olarak kaydedileceği anlamına geliyor.
Faturayı XML yerine JSON olarak tanımlamanın nedeni nedir? Çünkü Cross Industry Invoice sözdizimi ayrıntılı ve katıdır: iç içe geçmiş ad alanları, kimsenin hatırlamadığı öğe adları, tam olarak doğru yerde olması gereken kodlar. JSON nesnesi aynı şeyi çok daha az satırda, temsil ettikleri iş terimleri gibi okunan anahtarlarla ifade eder. PDF4me bunu şemaya dönüştürür, bu nedenle yanlış yapılması kolay olan kısım, sizin bakımını yapmanız gerekmeyen kısımdır.
Faturayı neden temel bir PDF dosyasına yazdırıyoruz? Çünkü bir ZUGFeRD dosyasının iki yarısı vardır ve ikisinin de uyumlu olması gerekir. XML, alıcının yazılımı içindir, yazdırılan sayfa ise onu açan kişi içindir. Render Invoice on PDF faturayı XML'i oluşturan aynı verilerden temel sayfaya çizer, böylece iki dosya asla birbirinden uzaklaşmaz; oysa düzen ayrı olarak tutulduğunda bu durum yaşanır.
Neden sıradan bir PDF değil de PDF/A-3? Çünkü PDF/A-3, ek dosya taşımasına izin verilen arşivleme formatıdır ve içine yerleştirilmiş XML bu ek dosyadır. Ayrıca, faturanın yıllar sonra bile okunabilir olmasını sağlayan kısımdır: yazı tipleri ve renk profilleri dosya içinde taşınır; bu da çoğu şirketin on yıl boyunca saklaması gereken bir belge için önemlidir.
Neler Alacaksınız?
Girdi: Fatura numarası, tarihler, para birimi, satıcı bloğu, alıcı bloğu ve bir kalem içeren bir satır. Çıktı: ZUGFeRD Invoices kütüphanesinde ZUGFeRD PDF/A-3 faturası, durumu ve bağlantısıyla güncellenmiş satır ve faturanın ekli olduğu alıcıya gönderilen bir e-posta.

Fatura başına bir satır. Bu bölmedeki her sütun, akışın oluşturduğu JSON'da bir anahtar haline gelir.

Her fatura numarası için bir dosya, akış hesabı tarafından yazılır.

Alıcının gördüğü şekliyle, aynı dosyanın okunabilir yarısı.
İhtiyacınız Olanlar
- Power Automate. Power Automate'i açın. Standart bağlantı noktaları üzerinde otomatikleştirilmiş bir bulut akışı. SharePoint, Office 365 Outlook ve PDF4me için premium plana gerek yok.
- PDF4me API anahtarı. API anahtarınızı alın. Bu akış, PDF4me PDF bağlantısı olmak üzere tek bir PDF4me bağlantısı kullanır.
- İstekler için bir SharePoint listesi. Yakalanan liste ZUGFeRD Requests olarak adlandırılır ve InvoiceNumber, InvoiceDate, DueDate, Currency, Seller bloğu (ad, sokak, posta kodu, şehir, ülke, KDV ID), Buyer bloğu, ItemDescription, Quantity, UnitPrice, VATRate, bir Email sütunu, bir Status seçim sütunu ve akışın yazdığı bir OutputLink sütunu içerir.
- Temel fatura PDF dosyası. Yakalanan akış
BaseInvoice.pdfdosyasını ZUGFeRD Templates adlı bir kütüphanede saklar. Fatura bu sayfaya çizilir, bu nedenle antetli kağıdınız buraya ait olmalıdır. - Tamamlanmış faturalar için bir kütüphane. Yakalanan akış, ZUGFeRD Invoices yazılır.
- KDV ID da dahil olmak üzere kendi satıcı bilgileriniz. Bunlar liste sütunlarına girilir, böylece aynı işlem birden fazla tüzel kişilik için fatura düzenleyebilir.
Akışa Genel Bakış
- When an item is created (SharePoint)
ZUGFeRD Requestsadlı listeyi izler. - Compose ilgili satırdan fatura JSON'unu oluşturur.
- Dosya içeriğini
/ZUGFeRD Templates/BaseInvoice.pdfGet file content using path. - Create ZUGFeRD Invoice (PDF4me PDF), JSON'u EN 16931 XML'e dönüştürür ve hibrit PDF döndürür.
- Create file (SharePoint) işlemi, dosyayı
ZUGFeRD_<invoice number>.pdfolarak kaydeder. - Update item (SharePoint), Status
Generatedolarak ayarlar ve OutputLink doldurur. - Send an email (V2) (Office 365 Outlook), faturayı alıcıya gönderir.
Akışın genel görünümü

Baştan sona dört saniyeden biraz fazla sürüyor ve e-faturanın kendisi yaklaşık bir saniye sürüyor. En yavaş adım SharePoint'in dosyayı yazmasıdır.
Adım 1: Bir talep geldiğinde e-faturayı nasıl tetiklersiniz?
Şu ana kadar olan süreç: henüz hiçbir şey olmadı, bu tetikleyici.
Bir satır eklemek, fatura talebinin yapılma şeklidir, dolayısıyla bu bir sinyaldir.
- Automated cloud flow oluşturun ve SharePoint > When an item is created seçeneğini belirleyin.
- Yapılandır:
- Site Address:
PDF4me Support - https://ynoox1.sharepoint.com/sites/PDF4meSupport - List Name:
ZUGFeRD Requests
- Site Address:
When an item is created: yapılandırma

Yeni satırdaki her sütun, sonraki altı işlemin kullanabileceği bir belirteç haline gelir.
Adım 2: Liste sütunlarından fatura JSON'unu nasıl oluşturursunuz?
Şu ana kadarki süreç: SharePoint tetikleyicisi.
Tek bir Compose işlemi, faturanın tamamını tanımlar. Bu aşamada sütun adlarınız, standartların beklediği adlarla eşleşir ve tek ekranda okunabilecek kadar kısadır.
- Data Operation > Compose.
- Aşağıdaki nesneyi Girişler alanına yapıştırın ve her değeri eşleşen belirteçle değiştirin.
{
"InvoiceId": "@{triggerBody()?['InvoiceNumber']}",
"TypeCode": "380",
"InvoiceType": "RECHNUNG",
"IssueDate": "@{triggerBody()?['InvoiceDate']}T00:00:00",
"DeliveryDate": "@{triggerBody()?['InvoiceDate']}T00:00:00",
"IsTest": false,
"Seller": {
"Name": "@{triggerBody()?['SellerName']}",
"VatId": "@{triggerBody()?['SellerVATID']}",
"Address": {
"Street": "@{triggerBody()?['SellerStreet']}",
"PostalCode": "@{triggerBody()?['SellerPostalCode']}",
"City": "@{triggerBody()?['SellerCity']}",
"Country": "@{triggerBody()?['SellerCountry']}"
}
},
"Buyer": {
"Name": "@{triggerBody()?['BuyerName']}",
"Address": {
"Street": "@{triggerBody()?['BuyerStreet']}",
"PostalCode": "@{triggerBody()?['BuyerPostalCode']}",
"City": "@{triggerBody()?['BuyerCity']}",
"Country": "@{triggerBody()?['BuyerCountry']}"
}
},
"LineItems": [
{
"ProductName": "@{triggerBody()?['ItemDescription']}",
"Quantity": @{triggerBody()?['Quantity']},
"UnitCode": "C62",
"UnitPrice": @{triggerBody()?['UnitPrice']},
"LineTotal": @{float(...)}
}
],
"Totals": {
"Currency": "@{triggerBody()?['Currency']?['Value']}",
"LineTotal": @{float(...)},
"TaxBasisTotal": @{float(...)},
"TaxPercent": @{triggerBody()?['VATRate']},
"TaxTotal": @{float(...)},
"GrandTotal": @{float(...)},
"ChargeTotal": 0,
"AllowanceTotal": 0
},
"Payment": {
"Currency": "@{triggerBody()?['Currency']?['Value']}",
"PaymentReference": "@{triggerBody()?['InvoiceNumber']}",
"DueDate": "@{triggerBody()?['DueDate']}T00:00:00"
}
}
Compose: yapılandırma

Metin değerleri tırnak içinde belirteçlerdir. Para ve miktarlar ise çıplak sayılardır, bu yüzden float türünde işlem görürler.
Faturanın her bir bölümünün nereden geldiği
| JSON anahtarı | Taşıdığı şey | Kaynak |
|---|---|---|
InvoiceId, TypeCode, InvoiceType | Fatura numarası, ticari fatura için belge türü kodu 380 ve sayfaya basılan etiket | InvoiceNumber, ardından sabit değerler |
IssueDate, DeliveryDate | Faturanın düzenlendiği ve hizmetin teslim edildiği zaman | InvoiceDate, sonuna T00:00:00 eklenmiş |
Seller | Adı, KDV ID ve tam adres bloğu | SellerName, SellerVATID, SellerStreet, SellerPostalCode, SellerCity, SellerCountry |
Buyer | Müşterinin adı ve adresi | BuyerName, BuyerStreet, BuyerPostalCode, BuyerCity, BuyerCountry |
LineItems | Açıklama, birim kodu C62 olan miktar, birim fiyatı ve satır toplamı | ItemDescription, Miktar, UnitPrice |
Totals | Para birimi, net toplam, vergi matrahı, KDV oranı ve tutarı, genel toplam | Para birimi, VATRate ve hesaplanan tutarlar |
Payment | Para birimi, alıcının ödeme yaparken belirttiği referans kodu ve vade tarihi | Para Birimi, InvoiceNumber, DueDate |
İpucu: Para birimi anahtarları aritmetik gerektiren tek kısımdır ve tırnak içinde yazılmış dizeler yerine yalın sayılar olarak sonuçlanmalıdır; float ifadeler bunun içindir. LineTotal miktar çarpı birim fiyatıdır, TaxBasisTotal satır toplamlarının toplamıdır, TaxTotal vergi tabanı çarpı oranın 100'e bölünmesidir ve GrandTotal ikisinin toplamıdır. Yakalanan satır için bu 1005, 1005, 190,95 ve 1195,95'tir. Tırnak içinde yazılmış "1005" reddedilirken, düz 1005 kabul edilir.
3. Adım: Temel PDF dosyası nereden geliyor?
Şu ana kadarki akış: tetikleyici artı Compose.
ZUGFeRD dosyalarının okunabilir bir sayfası vardır ve bu sayfa buradan başlar.
- SharePoint > Get file content using path ekleyin.
- Yapılandır:
- Site Address:
PDF4me Support - https://ynoox1.sharepoint.com/sites/PDF4meSupport - File Path:
/ZUGFeRD Templates/BaseInvoice.pdf - Infer content type (gelişmiş):
Yes
- Site Address:
Get file content using path: yapılandırma

Antetli kağıdınızı bu dosyada saklayın. Her çalıştırmada yeniden okunur, bu nedenle üzerinde değişiklik yapılması bir sonraki faturayı da etkiler.
Adım 4: JSON verilerini ZUGFeRD PDF/A-3 formatına nasıl dönüştürürsünüz?
Şu ana kadarki akış: tetikleyici, Compose ve Get file content using path.
Bu işlem, elektronik faturayı oluşturur. JSON dosyasını okur, EN 16931 XML formatını kendisi yazar ve her iki parçayı da içeren tek bir dosya olarak geri gönderir.
- PDF4me PDF bağlantısından Create ZUGFeRD Invoice ekleyin.
- Yapılandır:
- ZUGFeRD version and Input Format:
2.0-JSON - Output Mode:
XmlWithPdf - Invoice JSON Data:
base64(outputs('Compose'))ifadesi - Conformance Level:
EN16931 - Render Invoice on PDF:
Yes - File Content: Get file content using path içeriğe uygulanan bir
base64()ifadesi - File Name:
BaseInvoice.pdf
- ZUGFeRD version and Input Format:
Create ZUGFeRD Invoice: yapılandırma

Giriş formatı, hangi veri alanının görüneceğini belirler. 2.0-JSON seçerseniz, işlem Invoice XML Data Invoice JSON Data isteyecektir.
Her ayarın neye karar verdiği
| Alan | Buradaki değer | Kontrol ettiği şeyler |
|---|---|---|
| ZUGFeRD version and Input Format | 2.0-JSON | Çıktının hangi ZUGFeRD nesline ait olduğu ve verilerin JSON formatında geldiği seçimi yapılır. Bu seçim, Invoice JSON Data alanının görünmesini sağlar |
| Output Mode | XmlWithPdf | XML dosyasını tek başına değil, içine XML'in gömülü olduğu PDF dosyasından oluşan hibrit bir dosya olarak döndürün |
| Invoice JSON Data | base64(outputs('Compose')) | Fatura nesnesi, giriş sırasında base64 kodlamasıyla şifrelenmiştir |
| Conformance Level | EN16931 | Faturanın karşılamayı iddia ettiği profil ve dolayısıyla JSON'un sağlaması gereken anahtarlar |
| Render Invoice on PDF | Yes | Okunabilir faturayı, sayfayı olduğu gibi bırakmak yerine temel PDF dosyasının üzerine çizin |
| File Content, File Name | Temel PDF | Faturanın düzenlendiği sayfa ve işlemin raporlandığı isim |
İpucu: Bu işlem, açılır menünün format kısmına bağlı olarak Invoice XML Data, Invoice JSON Data veya Invoice CSV Data gösterir. Yalnızca seçiminize uyanı doldurun. Aynı çalıştırmada iki veri alanını doldurmak, bu işlemde doğrulama hatalarının en yaygın nedenidir.
Adım 5: Fatura nereye kaydedilecek?
Şu ana kadarki süreç: Her şey Create ZUGFeRD Invoice aşamasından geçiyor.
Dosya adı, dosyanın adını belirler ve bu sayede kütüphanede arama yapılabilirliği sağlanır.
- SharePoint ekle > Create file.
- Yapılandır:
- Site Address:
PDF4me Support - https://ynoox1.sharepoint.com/sites/PDF4meSupport - Folder Path:
/ZUGFeRD Invoices - File Name:
ZUGFeRD_ardından InvoiceNumber belirteci ve.pdf - File Content: Create ZUGFeRD Invoice işleminden Body belirteci
- Site Address:
Create file: yapılandırma

RE-2026-0007 için bu ZUGFeRD_RE-2026-0007.pdf olarak yazılır.
Adım 6: Sonucu istek üzerine nasıl kaydedersiniz?
Şu ana kadarki süreç: Her şey Create file aşamasından geçiyor.
Faturayı isteyen satırda, faturanın akıbeti de belirtilmelidir.
- SharePoint ekle > Update item.
- Yapılandır:
- Site Address:
PDF4me Support - https://ynoox1.sharepoint.com/sites/PDF4meSupport - List Name:
ZUGFeRD Requests - Id: Tetikleyiciden gelen ID belirteci
- Title: Tetikleyiciden gelen Title belirteci
- Status Value (gelişmiş):
Generated - OutputLink (gelişmiş): Kütüphane URL'si, ardından
ZUGFeRD_, InvoiceNumber belirteci ve.pdf
- Site Address:
Update item: yapılandırma

Bağlantı, kütüphane URL'sinden ve aynı ad kalıbı kullanılarak Create file; kütüphane adındaki boşluk zaten %20 olarak kodlanmıştır.
Adım 7: Faturayı alıcıya nasıl gönderirsiniz?
Şu ana kadarki süreç: Her şey Update item üzerinden ilerliyor.
Kütüphanede kalan bir elektronik fatura henüz düzenlenmemiştir, bu nedenle son işlem onu teslim eder.
- Office 365 Outlook > Send an email (V2) ekleyin.
- Yapılandır:
- Kime: Tetikleyiciden gelen Email belirteci
- Konu:
Your ZUGFeRD e-invoiceve ardından InvoiceNumber belirteci - Body: Alıcının ve faturanın adını belirten ve dosyanın EN 16931 XML gömülü bir PDF/A-3 dosyası olduğunu söyleyen bir satır
- Advanced parameters açın ve eki ekleyin:
- Attachments Adı - 1:
ZUGFeRD_artı InvoiceNumber belirteci artı.pdf - Attachments İçeriği - 1: Create ZUGFeRD Invoice işleminden File Content İçeriği belirteci
- Importance:
Normal
- Attachments Adı - 1:
Send an email (V2): yapılandırma

Ek dosya, kendisini oluşturan işlemden baytlarını alır, bu nedenle SharePoint hiçbir zaman geri okunmaz.
Akışı Çalıştırın ve Doğrulayın
- Akışı Save.
- ZUGFeRD Requests alıcıyı, tek bir kalem öğesini, her iki tarihi ve kontrol edebileceğiniz bir adresi içeren bir satır ekleyin.
- Koşu geçmişini açın. Yedi işlemin tamamı yeşil renkte olmalı ve tüm koşu birkaç saniye sürmelidir.
- ZUGFeRD Invoices kütüphanesini açın ve dosyanın fatura numarası altında mevcut olup olmadığını kontrol edin.
- Önceki satıra geri dönün: Status Generated olarak görünmeli ve OutputLink faturayı açmalıdır.
- E-postadaki eki açın ve her iki bölümü de kontrol edin: sayfada doğru miktarlar gösterilmeli ve dosya içinde XML verileri bulunmalıdır.
Yakalanan işlem toplamda yaklaşık dört saniye sürdü ve e-fatura da bu süre içinde oluşturuldu. Sonuç olarak, ZUGFeRD_RE-2026-0007.pdf yaklaşık 331 KB boyutunda olup Almanca bir fatura olarak görüntülenir: satıcı Berlin bulunan Muster GmbH (KDV ID DE123456789), müşteri Muenchen bulunan Test Kunde AG, belge türü 380, %19 KDV'li tek satırlık Consulting, net 1.005,00 EUR, KDV 190,95 EUR ve toplam 1.195,95 EUR.
Peki, tam olarak ne inşa ettiniz? Kendi kayıtlarınızdan başlayan bir e-fatura hattı. Veriler finans departmanının sakladığı yerde kalıyor, standart XML ile karşılanıyor (siz asla yazmak zorunda kalmadınız), alıcı yazılımının otomatik olarak okuyabileceği ve personelinin ekranda okuyabileceği bir dosya alıyor ve talep satırı gönderildiğini kaydediyor.
Yeniden derlemeye gerek kalmadan ekleyebileceğiniz yaygın varyasyonlar
Bu, ZUGFeRD faturası oluşturmanın diğer yöntemleriyle nasıl karşılaştırılır?
Her satır alternatifi açıklıyor. Son satır ise bu akışı gösteriyor.
| Karşılaştırmak | Kim yönetiyor? | Verilerin kaynağı | Bakımını yaptığınız şeyler |
|---|---|---|---|
| ZUGFeRD dışa aktarma özelliğine sahip faturalama yazılımı ile bu akış karşılaştırması | Ürünün içindeki herkes | Ürünün kendi kayıtları | Abonelik ve ürünün desteklediği her şey |
| E-fatura platformu ile bu akış karşılaştırması | Finans, bir portal aracılığıyla | Yüklemeler veya entegrasyon | Belge bazlı bir sözleşme ve ona ilişkin bağlantı |
| Geliştirici kütüphanesi ve bu akış karşılaştırması | Bir uygulama geliştiricisi, uygulama içinde | Veritabanınız, kod aracılığıyla | Kod, şema güncellemeleri ve sürümler |
| Bu akış | Liste satırı ekleyebilen herkes | Ekibin tuttuğu bir SharePoint listesi | Bir JSON nesnesi ve temel bir PDF dosyası |
Sıkça sorulan sorular
ZUGFeRD faturası nedir?
ZUGFeRD faturası, iki şekilde çalışan tek bir dosyadır. Açılıp okunabilen normal bir PDF dosyasıdır ve içinde aynı faturayı yapılandırılmış veri olarak içeren bir XML eki bulunur. Alıcının muhasebe sistemi XML dosyasını okur ve faturayı kimsenin elle yazmasına gerek kalmadan kaydederken, ödeme departmanındaki kişi yine de bir sayfa görür.
Bu format, elektronik faturalama için Alman forumu olan FeRD geliyor ve Fransız muadili de aynı fikri farklı bir isim altında sunan Factur-X.
ZUGFeRD formatı nedir?
Teknik olarak, bu Cross Industry Invoice sözdiziminde gömülü bir XML dosyası ve verilerin ne kadar eksiksiz olduğunu belirten bir profil içeren bir PDF/A-3 konteyneridir. Burada kullanılan profil, e-faturalama için Avrupa semantik standardına karşılık gelen EN16931: EN 16931 bir faturanın çekirdeği olarak tanımladığı alanlar kümesi.
Otomasyonun pratik sonucu, çıktının sayfa üzerinde değil, XML üzerinde değerlendirilmesidir. Profilin istediği verileri sağlarsanız dosya onaylanır; sayfayı daha güzel hale getirirseniz hiçbir şey değişmez.
ZUGFeRD faturası nasıl oluşturulur?
Üç şeye ihtiyacınız var: yapılandırılmış biçimde fatura verileri, insan tarafından yazılacak bir sayfa ve XML'i PDF/A-3 eki olarak PDF'ye yazan bir araç.
Bu akışta veriler JSON'a dönüştürülmüş bir SharePoint satırıdır, sayfa BaseInvoice.pdf ve Create ZUGFeRD Invoice üçüncü kısmı XmlWithPdf Output Mode ile gerçekleştirir. Verileriniz zaten Cross Industry Invoice XML'i veya CSV satırı olarak mevcutsa, giriş biçimini değiştirin ve bunun yerine onu besleyin. Akışın geri kalanı değişmez.
ZUGFeRD ve XRechnung arasındaki fark nedir?
İkisi de aynı Avrupa standardını karşılıyor ve aralarındaki fark ambalajda. ZUGFeRD hibrit bir format: içinde XML bulunan okunabilir bir PDF; bu da faturaların elle açılmasını bekleyen müşterilere gönderilmesi için uygun. XRechnung ise yalnızca XML formatında ve Alman kamu sektörü alıcılarının talep ettiği format.
Kurumsal firmalara gönderim yapıyorsanız, hibrit dosya genellikle daha güvenli bir seçenektir çünkü dosyayı açan herkes tarafından okunabilir. Kamu kurumlarına fatura kesiyorsanız, göndermeden önce ilgili kurumun hangi formatı gerektirdiğini kontrol edin.
Sorun giderme
Çalıştırma geçmişinde Compose çıktısını açın ve her şeyden önce JSON olarak okuyun. Boş bir sütun, anahtarı boş bırakır ve tırnak işaretlerini koruyan bir para değeri, sayı beklenirken metin olarak gelir. Her ikisi de düzgün görünen ancak yine de dönüştürmede başarısız olan bir nesne üretir.
Conformance Level profilin hangi alanları gerektirdiğini belirler. JSON dosyasında profilin beklediği anahtarlar eksik olsa bile EN16931 iddiasında bulunmak, dosya normal şekilde açılsa bile doğrulamayı başarısız kılar. Ya eksik anahtarları sağlayın ya da daha düşük bir profil seviyesine geçin.
Render Invoice on PDF Hayır olarak ayarlandığı için XML, herhangi bir çizim yapılmadan gömüldü. Dosya hala geçerli bir e-fatura, ancak insan müdahalesi gerektiren kısım, temel PDF'nin içerdiği bilgilerden oluşuyor.
E-posta adımındaki ek içeriğini ve Create file adımındaki File Content kontrol edin. Her ikisi de Create ZUGFeRD Invoice adımından gelmelidir. Bunun yerine temel PDF dosyasını eklemek, doğru görünen ancak yazılımlarının okuyabileceği hiçbir şey içermeyen bir sayfa gönderir.
Sonraki Adımlar
Alıcılarınızın nihayetinde hangi formata ihtiyaç duyarsa duysun, her e-fatura zorunluluğu aslında aynı yedi adımlı süreci (bir satır gelir, fatura veri olarak tanımlanır, bir dosya oluşturulur, arşivlenir, kaydedilir ve gönderilir) gerektirir.