Cari Plus ile e-Fatura Süreçlerinde XML ve UBL Formatları: Teknik Altyapı, Doğrulama ve Hata Çözüm Rehberi

C
Cari Plus ile e-Fatura Süreçlerinde XML ve UBL Formatları: Teknik Altyapı, Doğrulama ve Hata Çözüm Rehberi — Cari Plus Blog kapak görseli

e-Fatura Teknik Altyapısı: XML ve UBL Formatlarının Temelleri

XML ve UBL: e-Fatura'nın Ortak Dili

e-Fatura süreçlerinin sorunsuz işlemesi, farklı yazılımların birbiriyle konuşabilmesine bağlıdır. Bu iletişimin temelinde iki kritik format bulunur: XML (Extensible Markup Language) ve UBL (Universal Business Language). XML, verilerin hiyerarşik ve insan tarafından okunabilir bir yapıda saklanmasını sağlayan bir işaretleme dilidir. e-Fatura özelinde ise bu verinin ne anlama geldiğini standartlaştıran yapı UBL'dir. UBL, bir faturadaki "Tutar", "Vergi", "Alıcı" gibi her bir alanın evrensel olarak aynı etiketle tanımlanmasını sağlayarak, sizin sisteminizden çıkan bir faturanın karşı tarafın ön muhasebe yazılımı tarafından hatasız okunmasını garanti eder.

Temel Şema Yapısı ve Zorunlu Alanlar

Gelir İdaresi Başkanlığı (GİB) tarafından belirlenen UBL-TR şeması, Türkiye'deki e-Fatura ve e-Arşiv Fatura için zorunlu teknik çerçeveyi çizer. Bu şema, bir XML dosyasının içermesi gereken minimum alanları ve bu alanların veri tiplerini tanımlar. Örneğin, bir fatura XML'i oluşturulurken "cbc:ID" (Fatura No), "cbc:IssueDate" (Fatura Tarihi) ve "cac:AccountingSupplierParty" (Satıcı Bilgileri) gibi düğümlerin eksiksiz ve doğru formatta olması zorunludur. Bu yapısal zorunluluk, manuel veri girişinde yapılan küçük bir harf hatasının bile faturanın GİB entegratörleri tarafından reddedilmesine yol açabileceği anlamına gelir. Bu nedenle, Cari Plus gibi entegre bir ön muhasebe platformu, kullanıcının bu teknik detaylarla uğraşmadan, otomatik olarak şemaya uygun XML üretmesini sağlayarak süreci görünmez kılar.

Cari Plus'ta e-Fatura XML/UBL Yapıları ve Doğrulama Mekanizmaları

Gelen Fatura Senaryolarında Otomatik XML/UBL İşleme

e-Fatura süreçlerinizde en kritik noktalardan biri, gelen fatura XML'lerinin veya UBL belgelerinin sisteme hatasız aktarılmasıdır. Cari Plus, bu aşamada devreye girerek gelen belgeyi otomatik olarak ayrıştırır. Sistem, XML içerisindeki cbc:UUID ve cbc:IssueDate gibi zorunlu alanları anlık olarak doğrular. Eğer belge formatı UBL 2.1 standardına uygunsa, kalem bazında stok kartları ve maliyetler, manuel müdahaleye gerek kalmadan Cari Plus ön muhasebe modülüne işlenir.

Giden Faturalarda Şema (XSD) ve İş Kuralları Doğrulaması

Giden e-Arşiv Fatura akışında ise Cari Plus, Gelir İdaresi Başkanlığı'nın (GİB) belirlediği şema kontrollerini katmanlı olarak uygular. İlk katmanda, oluşturduğunuz fatura verisinin XSD şemasına uygunluğu kontrol edilir; örneğin cac:TaxTotal ile satır toplamlarının matematiksel tutarlılığı denetlenir. İkinci katmanda ise iş kuralları devreye girer. Burada, birim fiyat ile miktar çarpımının satır tutarını verip vermediği gibi ticari mantık hataları tespit edilir. Bu çok aşamalı doğrulama sayesinde, GİB'e gönderim öncesinde olası ret senaryolarının önüne geçilerek operasyonel süreklilik sağlanır.

Sık Karşılaşılan XML/UBL Hataları ve Cari Plus ile Çözüm Yöntemleri

XML Şema (XSD) Doğrulama Hataları

Gelir İdaresi Başkanlığı (GİB) tarafından yayınlanan XSD şemalarına uyumsuzluk, en sık karşılaşılan ret nedenidir. Özellikle zorunlu alanların (örneğin cbc:UUID veya cbc:IssueDate) eksik olması, fatura numarasının (ID) formatının yanlış belirlenmesi veya vergi kimlik numarası (VKN/TCKN) uzunluğunun hatalı girilmesi doğrulama sürecinde anında reddedilmeye yol açar. Cari Plus, bu hataları önlemek için entegre ettiği e-Fatura modülünde anlık şema kontrolü yapar; kullanıcı faturayı kaydetmeden önce eksik veya hatalı alanları görsel olarak işaretleyerek düzeltme imkanı sunar.

UBL İş Kuralları (Schematron) İhlalleri

XSD doğrulamasından geçen bir XML, UBL iş kurallarına takılabilir. Bu kurallar, fatura senaryosuna (temel, ticari) özgü mantıksal kontrolleri içerir. Örneğin, cac:TaxTotal içindeki vergi tutarının, kalemlerin vergi toplamıyla uyuşmaması veya para birimi kodunun (TRY, USD) senaryoya uygun olmaması tipik Schematron hatalarıdır. Cari Plus, bu mantıksal bütünlüğü otomatik hesaplama motoruyla sağlar; sistem, kalem detaylarından genel toplama kadar tüm matematiksel ilişkileri GİB'in güncel Schematron kurallarına göre önceden denetleyerek gönderim öncesi hata riskini sıfıra indirir.

Zarf (Envelope) ve İmza Hataları

Gönderici ve alıcı bilgilerinin (Posta Kutusu etiketleri) yanlış tanımlandığı durumlarda, fatura teknik olarak doğru olsa bile GİB sisteminde ilgili kutuya ulaşamaz. Benzer şekilde, mali mühür sertifikasının süresinin dolması veya imzalama algoritmasındaki uyumsuzluklar "Geçersiz İmza" hatası üretir. Cari Plus, entegratör altyapısı üzerinden zarf oluşturma ve mali mühür süreçlerini tamamen otomatize eder; sertifika geçerlilik süresini proaktif olarak takip ederek kullanıcıyı yenileme konusunda uyarır ve manuel müdahale gerektiren bu karmaşık süreci ortadan kaldırır.

Cari Plus ile e-Fatura Entegrasyonunda Veri Senkronizasyonu ve Otomasyon

Otomatik Veri Akışı ile Manuel Girişlerin Azaltılması

Geleneksel yöntemlerde, bir satış faturasının önce ticari programda kesilip ardından e-Fatura portalına manuel olarak aktarılması, hem zaman kaybına hem de veri tutarsızlıklarına yol açar. Cari Plus, bu kopukluğu ortadan kaldıran entegre bir otomasyon katmanı sunar. Sistem, stok modülünden düşülen bir irsaliyeyi veya cari modülde oluşturulan bir siparişi, herhangi bir mükerrer veri girişine ihtiyaç duymadan doğrudan e-Fatura veya e-Arşiv Fatura taslağına dönüştürür. Bu senkronizasyon sayesinde, ürün GTIP kodlarından birim fiyatlara, vergi oranlarından müşteri vergi numarasına kadar tüm kritik alanlar, kaynağından otomatik olarak çekilir.

Anlık Stok ve Cari Mutabakatın Sağlanması

Otomasyonun en kritik faydalarından biri, belge iletildiği anda muhasebe ve stok kayıtlarının eş zamanlı olarak güncellenmesidir. Cari Plus, bir e-Fatura'yı başarıyla ilettiğinde, ilgili cari hesabın borç/alacak dengesini anında günceller ve stok seviyelerini düşer. Bu, özellikle hızlı tüketim ürünleri satan işletmeler için hayati önem taşır; çünkü stokta olmayan bir ürünün faturasının kesilmesi veya tahsil edilmiş bir borcun sistemde açık görünmesi gibi operasyonel hataların önüne geçilir. Platform, Gelir İdaresi Başkanlığı (GİB) sistemlerinden dönen anlık durum bildirimlerini (zarf cevaplarını) işleyerek, faturanın başarıyla iletildiğini veya reddedildiğini kullanıcıya anında bildirir ve mali mühür süreçlerini arka planda sorunsuz bir şekilde yönetir.

Gelişmiş Senaryolar: Özel Entegratörler, Toplu Gönderim ve API Kullanımı

Özel Entegratörler ile Esnek Veri Yönetimi

İşletmeler, Gelir İdaresi Başkanlığı (GİB) onaylı özel entegratörler aracılığıyla e-belge süreçlerini yürütürken, e-Fatura ve e-Arşiv Fatura gönderimlerinde farklı teknik gereksinimlerle karşılaşabilir. Özel entegratörlerin kullandığı XML şemaları ve UBL profilleri, standart GİB formatından küçük farklılıklar gösterebilir. Cari Plus, bu senaryoda devreye girerek, farklı entegratörlerin zorunlu tuttuğu ek alanları (örneğin özel vergi kodları veya teslimat bilgileri) otomatik olarak eşleştiren dinamik bir şablon motoru sunar. Bu sayede, her entegratör değişikliğinde manuel format düzenlemesi yapma zorunluluğu ortadan kalkar ve operasyonel süreklilik sağlanır.

Toplu Gönderim ve Performans Optimizasyonu

Yüksek işlem hacmine sahip işletmeler için toplu fatura gönderimi, teknik altyapının en kritik sınavlarından biridir. Aynı anda yüzlerce UBL-TR belgesinin işlenmesi, bellek yönetimi ve zaman aşımı (timeout) hatalarına yol açabilir. Cari Plus’ın kuyruk (queue) tabanlı mimarisi, toplu gönderimleri parçalara bölerek sunucu yükünü dengeler ve her bir ön muhasebe kaydının başarıyla iletilmesini garanti altına alır. Sistem, başarısız olan transferleri otomatik olarak yeniden dener ve kullanıcıya anlık durum raporu sunarak stok takibi ile eş zamanlı bir finansal görünürlük sağlar.

API Entegrasyonu ile Uçtan Uca Otomasyon

Modern işletmeler, e-belge süreçlerini kendi ERP veya e-ticaret sistemlerine tamamen entegre etmek ister. Cari Plus'ın sunduğu RESTful API servisleri, dış yazılımların doğrudan UBL formatında fatura üretmesine ve göndermesine olanak tanır. API üzerinden yapılan bir çağrıda, sistem gelen XML/UBL verisini anlık olarak doğrular, GİB şemasına uygunluğunu kontrol eder ve imzalama sürecini başlatır. Bu entegrasyon, manuel veri girişini tamamen ortadan kaldırarak cari takibi ve tahsilat süreçlerini tek bir panel üzerinden hatasız bir şekilde yönetme imkanı tanır. Özellikle Solviera gibi kurumsal çözümlerle çalışan işletmeler, bu API katmanı sayesinde tüm belge akışını kendi altyapıları içerisinde standardize edebilirler.

Sıkça Sorulan Sorular

XML, verilerin hiyerarşik yapıda saklanmasını sağlarken; UBL, bu verilerin anlamını standartlaştırır. Cari Plus'ta oluşturulan bir e-Fatura, Gelir İdaresi Başkanlığı'na gönderilmeden önce ilgili UBL şemasına uygun olmalıdır. Aksi takdirde karşı tarafın sistemi belgeyi okuyamaz veya doğrulama hataları alırsınız. Bu nedenle Cari Plus, faturaları UBL-TR formatında üretir ve XML'in her alanının doğru etiketlenmesini sağlayarak entegrasyonu güvenli hale getirir.

XML bir işaretleme dilidir; UBL ise XML tabanlı bir iş standardıdır. Yani XML, verileri etiketlerle yapılandırırken; UBL, bu etiketlerin adlarını ve hiyerarşisini belirleyerek 'fatura' gibi bir belgenin evrensel bir şablona oturmasını sağlar. Örneğin 'tutar' bilgisi her yazılımda farklı isimlendirilse de UBL'de 'TaxExclusiveAmount' gibi sabit bir alanla tanımlanır. Cari Plus, XML'in yapısal kurallarını UBL-TR şemasıyla birleştirir ve böylece farklı muhasebe sistemleri arasında hatasız veri alışverişi yapılır.

Cari Plus, e-Fatura uygulamasında güncel UBL-TR sürümünü destekler. GİB'in yayınladığı UBL-TR 1.2 (bazen 2.0 olarak da güncellenebilir) şeması baz alınır. Güncel sürümü kullanmak, yasal zorunlulukların yanı sıra sistem uyumluluğu açısından kritiktir. Cari Plus güncellemeleriyle bu sürümler otomatik olarak takip edilir, böylece kullanıcıların manuel müdahalesine gerek kalmaz. Faturanızın şema sürümünü kontrol etmek için XML dosyasının üst kısmındaki 'UBLVersionID' alanına bakabilirsiniz.

Zorunlu alanlar arasında belge numarası (ID), düzenlenme tarihi (IssueDate), fatura tipi (InvoiceTypeCode), satıcı ve alıcı bilgileri (Party), para birimi (DocumentCurrencyCode), vergi bilgileri (TaxTotal) ve tutar alanları (LegalMonetaryTotal) bulunur. Bu alanlardan herhangi biri eksik veya hatalıysa, Cari Plus e-Fatura gönderiminde doğrulama hatası oluşur. GİB'e gönderilen faturanın reddedilmemesi için şema şartlarına birebir uyum gerekir. Cari Plus, bu alanları otomatik doldurur ve kullanıcının müdahalesiyle zorunlu bilgilerin tamamlanmasını sağlar.

Bu hata genellikle faturanın UBL-TR şemasına uymayan bir alanın bulunmasından kaynaklanır. Örneğin yanlış etiket isimlendirmesi, geçersiz tarih formatı, hatalı alan tipi veya zorunlu alan eksikliği olabilir. Ayrıca özel karakterlerin hatalı kodlanması veya UBL namespace beyanının eksik olması da bu hatayı tetikler. Cari Plus'ın doğrulama motoru, hatanın hangi satırda olduğunu gösterir. Böylece kullanıcı ilgili alanı düzeltebilir veya Cari Plus destek ekibiyle iletişime geçerek sorunu çöz

C

Cari Plus Ekibi

Cari Plus, Solviera Teknoloji'nin Ön Muhasebe yazılımıdır. Blog yazılarımızda gelir-gider takibi, E-Fatura süreçleri ve işletme yönetimi hakkında faydalı bilgiler paylaşıyoruz.

Paylaş: