Görüntüleyici.com

Ana sayfa/Rehberler/GİB e-Belge

e-Fatura XML Dosyası Nasıl Görüntülenir?

e-Fatura aslında bir XML dosyasıdır ve görüntüsü bu dosyanın içindeki verilerden üretilir. UBL-TR yapısında hangi alanın ne anlama geldiğini, dosyayı nasıl açacağınızı ve bir faturada neleri kontrol etmeniz gerektiğini anlatıyoruz.

Dizüstü bilgisayar başında deftere not alan kişi
Görsel: kaynak ve lisans bilgisi

e-Fatura XML'inin yapısı

Gelir İdaresi Başkanlığı'nın (GİB) e-Fatura uygulamasında fatura, uluslararası OASIS UBL 2.1 standardının Türkiye'ye uyarlanmış hâli olan UBL-TR biçiminde üretilir. Dosyanın kök öğesi Invoice'tur. Faturanın asıl kaydı bu XML'dir; ekranda veya kâğıtta gördüğünüz görünüm, dosyadaki veriden türetilen bir sunumdur.

Birkaç alanı tanımak dosyayı okumayı kolaylaştırır. ID alanı fatura numarasıdır ve GİB kılavuzlarına göre 16 karakterden oluşur: 3 karakterlik seri, 4 haneli yıl ve 9 haneli sıra numarası (örnek biçim: ABC2026000000001). UUID alanı ETTN, yani faturanın evrensel tekil numarasıdır. ProfileID faturanın senaryosunu belirtir; TEMELFATURA, TICARIFATURA ve e-Arşiv için EARSIVFATURA bu alanda görülen değerlerdendir. InvoiceTypeCode ise faturanın tipidir: SATIS, IADE, TEVKIFAT, ISTISNA gibi.

Satıcı AccountingSupplierParty, alıcı AccountingCustomerParty altında yer alır; VKN veya TCKN, vergi dairesi, adres ve iletişim bilgileri buradadır. Her mal veya hizmet satırı bir InvoiceLine öğesidir. Vergi toplamları TaxTotal, tevkifat tutarları WithholdingTaxTotal, genel toplamlar ve ödenecek tutar LegalMonetaryTotal içinde bulunur. Dosyada ayrıca mali mühür veya elektronik imza bloğu ve çoğu zaman faturanın görsel şablonunu taşıyan, base64 ile kodlanmış bir XSLT dosyası gömülüdür.

Dosyayı açmanın yolları

Faturayı kestiğiniz ya da aldığınız portal veya özel entegratör arayüzü faturayı zaten görsel hâliyle gösterir. Elinizde yalnızca XML dosyası varsa GİB'in e-Belge sitesinde Java tabanlı bir e-Fatura Görüntüleyici programı bulunur; XML'i açıp faturayı görsel hâliyle göstermek için tasarlanmıştır.

Kurulum istemiyorsanız iki seçenek kalır. XML Görüntüleyici dosyayı girintili ve satır numaralı ham XML olarak gösterir; bir alanın tam adını ve değerini görmek, entegrasyon hatası aramak için uygundur. e-Fatura XML Görüntüleyici ise etiketleri ayrıştırıp faturayı düzenli bir tabloya çevirir. Gömülü XSLT'yi çalıştırmadığı için görünüm gönderenin şablonundan farklıdır, ancak her faturada aynı düzeni kullandığından karşılaştırma yapmak kolaylaşır.

Görüntüleyici neyi gösterir, neyi yapmaz?

e-Fatura XML Görüntüleyici .xml uzantılı dosyayı tarayıcıda ayrıştırır. Üst bölümde belge türü, fatura numarası, ETTN, düzenleme tarihi ve saati görünür; ProfileID EARSIVFATURA ise belge e-Arşiv Fatura olarak etiketlenir. Satıcı ve alıcı kartlarında unvan ya da ad soyad, VKN veya TCKN, vergi dairesi, adres, e-posta ve telefon yer alır. Satır tablosu mal adı, miktar, birim, birim fiyat, iskonto, KDV oranı ve tutarı ile satır toplamını gösterir; C62 gibi birim kodları “Adet”, KGM “kg” olarak okunur hâle getirilir. Vergiler bölümünde tevkifat satırları ayrıca işaretlenir; toplamlar bölümünde mal hizmet toplamı, iskonto, vergiler hariç ve dahil tutar ile ödenecek tutar bulunur.

Faturayı “PDF indir” ile tek sayfalık bir özet belgeye, “Excel indir” ile Özet, Taraflar, Satırlar ve Vergiler sayfalarından oluşan bir .xlsx dosyasına aktarabilirsiniz. Dosya sunucuya yüklenmez.

Aracın yapmadıkları da önemlidir. Mali mühür veya imza doğrulaması, şema ve şematron denetimi yapmaz; faturanın GİB sisteminde kayıtlı olup olmadığını sorgulamaz. Dosyada imza bloğu varsa bunu bir uyarıyla belirtir, fakat imzanın geçerliliği hakkında hüküm vermez. Entegratörden ZIP içinde gelen faturaları önce ZIP Görüntüleyici ile arşivden çıkarmanız gerekir. Kök öğesi Invoice olmayan bir XML yüklerseniz araç bunun bir e-Belge gibi görünmediğini söyler.

Faturada kontrol edilecek noktalar

Muhasebe kontrolünde işe yarayan bir sıra şöyledir. Önce alıcı VKN'sinin kendi VKN'nizle aynı olduğuna, ardından fatura tarihinin mal teslimi veya hizmet tarihine uygun olduğuna bakın; Vergi Usul Kanunu'nun 231. maddesi faturanın teslim veya hizmet tarihinden itibaren azami yedi gün içinde düzenlenmesini öngörür. Satırlarda miktar ile birim fiyatın çarpımının iskonto düşüldükten sonra satır toplamını verdiğini, KDV tutarının matrah ile oranın çarpımına eşit olduğunu doğrulayın.

Tevkifatlı faturalarda WithholdingTaxTotal altındaki tutarın ödenecek tutardan düşülüp düşülmediğini, yabancı para birimli faturalarda para birimi kodunu kontrol edin. Senaryo da önemlidir: yaygın uygulamaya göre TICARIFATURA senaryosundaki faturaya alıcı faturanın kendisine ulaşmasından itibaren sekiz gün içinde kabul veya red yanıtı verebilir, TEMELFATURA senaryosunda ise sistem üzerinden red yanıtı verilemez. Süre ve itiraz yolları için GİB kılavuzlarını ve mali müşavirinizi esas alın.

Görüntüleyicinin hata mesajları ne anlatır?

“XML ayrıştırılamadı. Dosya bozuk olabilir.” mesajı dosyanın geçerli bir XML olmadığını gösterir. En sık nedenler yarım inmiş dosya, XML yerine kaydedilmiş bir HTML hata sayfası ya da bir e-posta istemcisinin eki bozmasıdır. Dosyayı XML Görüntüleyici'de açtığınızda ilk satırın bir XML bildirimi veya Invoice öğesiyle başlaması gerekir; başka bir şey görüyorsanız dosyayı kaynağından yeniden indirin.

“Bu XML bir GİB e-Belgesi (UBL) gibi görünmüyor” mesajı ise dosyanın geçerli XML olduğunu ama kök öğesinin Invoice, DespatchAdvice, CreditNote veya ReceiptAdvice olmadığını söyler; mesajda bulunan kök öğenin adı da yazılır. Faturalar bazı entegrasyon akışlarında bir zarf dosyasının içinde taşınır ve zarfın kök öğesi faturanınkinden farklıdır. Böyle bir dosyayı XML Görüntüleyici'de açıp içindeki faturayı ayrı bir dosya olarak kaydetmeniz ya da faturayı entegratör arayüzünden tekil XML olarak indirmeniz gerekir.

Belge açıldığı hâlde “Belgede satır bilgisi bulunamadı” uyarısı görüyorsanız dosyada InvoiceLine öğesi yoktur. Bu, eksik üretilmiş bir belgeye ya da fatura olmayan bir yanıt belgesine işaret edebilir; toplamları tek başına esas almadan önce dosyanın kaynağını kontrol edin.

Paylaşmadan önce kişisel verileri maskeleme

Bir faturayı yazılım firmasına hata örneği olarak göndermek ya da eğitim materyalinde kullanmak istediğinizde XML'deki VKN, TCKN, IBAN, telefon ve e-posta açıkça görünür. e-Fatura XML Maskeleme aracı bu değerleri bulur ve yıldızla değiştirir; TCKN ve VKN doğrulama algoritmasıyla ayıklandığı için fatura numarası veya ETTN gibi sayılarla karışma olasılığı düşüktür. Unvan, ad soyad ve adres gibi serbest metin alanları otomatik yakalanmaz; bunları çıktı üzerinde elle kontrol edin.

Maskelenmiş dosyanın imzası artık geçerli değildir, çünkü imzalı bir belgede tek karakterin değişmesi bile imzayı bozar. Bu yüzden maskeli kopyayı yalnızca paylaşım için kullanın; yasal saklama ve ibraz için özgün, değiştirilmemiş XML'i koruyun.

Bu rehberdeki araçlar

Anlatılan işlemleri hemen tarayıcınızda, dosyanız sunucuya yüklenmeden yapın:

Sık sorulan sorular

Faturanın PDF'i mi, XML'i mi asıl belgedir?

e-Fatura elektronik belge olarak XML biçiminde düzenlenir; PDF veya kâğıt çıktı bu verinin görüntüsüdür. Saklama ve ibraz yükümlülükleri için elektronik belgeyi özgün hâliyle muhafaza edin; ayrıntı için mali müşavirinize danışın.

Görüntüleyicideki düzen neden gönderenin portalındaki faturadan farklı?

Gönderenin tasarımı XML'e gömülü XSLT şablonundan gelir. Tarayıcıdaki görüntüleyici bu şablonu çalıştırmaz, verileri kendi standart düzeninde gösterir. Rakamlar aynıdır, yalnızca yerleşim farklıdır.

ETTN ile fatura numarası arasındaki fark nedir?

Fatura numarası (ID) seri, yıl ve sıra numarasından oluşan 16 karakterlik okunur bir numaradır. ETTN (UUID) ise her belgeye verilen, tire ile ayrılmış uzun bir tekil kimliktir ve belgeyi sistemlerde ayırt etmek için kullanılır.

Tevkifatlı faturada ödenecek tutar neden vergiler dahil toplamdan düşük?

Tevkifatlı faturada KDV'nin bir kısmını alıcı sorumlu sıfatıyla beyan eder; bu kısım satıcıya ödenmez. Görüntüleyici tevkifat satırlarını vergiler bölümünde ayrıca işaretler, ödenecek tutar da toplamlarda ayrı satırda görünür.