E-fatura entegrasyonu, bir işletmenin muhasebe veya ERP yazılımının faturaları Gelir İdaresi Başkanlığı (GİB) sistemine elle giriş yapmadan, doğrudan program içinden gönderip alabilmesini sağlayan teknik bağlantıdır. Fatura yazılımda kesilir, arka planda entegratöre iletilir, GİB'e ulaşır ve alıcıya düşer; kullanıcı portala girmez, XML görmez.
Kısa cevap: E-fatura entegrasyonu dört adımda kurulur. Bir özel entegratörle sözleşme yapılıp test hesabı alınır; yazılım faturayı UBL-TR formatında üretir; her gönderimden önce alıcının e-fatura mükellefi olup olmadığı sorgulanır ve belge buna göre e-fatura ya da e-arşiv fatura olarak gönderilir; son olarak GİB'den dönen kabul/ret durumu takip edilip belge yasal süresi boyunca arşivlenir. Tek belge tipi için bu iş genellikle birkaç haftada biter; zamanın büyük kısmı entegratörün servislerini doğru konuşturmaya gider.
E-fatura, e-arşiv fatura ve e-irsaliye arasındaki fark nedir?
Fark, belgenin kime gittiğinde ve neyi belgelediğindedir. E-fatura yalnızca iki e-fatura mükellefi arasında gider ve GİB üzerinden alıcının kutusuna düşer. Alıcı e-fatura sistemine kayıtlı değilse — bir son tüketici ya da küçük bir işletmeyse — aynı satış için e-arşiv fatura düzenlenir ve alıcıya e-posta veya çıktı olarak ulaştırılır. E-irsaliye ise faturanın değil, malın sevkiyatının belgesidir; ürün yola çıktığında düzenlenir, fatura daha sonra kesilebilir.
| Belge | Kime gider | Ne zaman düzenlenir | Alıcı yanıt verir mi |
|---|---|---|---|
| E-fatura | E-fatura mükellefi işletmeye | Satış anında | Ticari senaryoda evet (kabul/ret) |
| E-arşiv fatura | Mükellef olmayan işletme veya tüketiciye | Satış anında | Hayır |
| E-irsaliye | Malın gittiği tarafa | Sevkiyat anında | Evet (teslim alındı / kısmen / reddedildi) |
Entegrasyonun ilk kuralı buradan çıkar: yazılım, belgeyi göndermeden önce alıcının hangi gruba girdiğini sormak zorundadır. Bu sorguyu atlayan sistemler, mükellef olan bir alıcıya e-arşiv keser ve belge geçersiz olur.
E-fatura entegrasyonu hangi yöntemlerle yapılır?
Üç yol vardır ve işletmelerin büyük çoğunluğu ortadakini kullanır. GİB portalı, faturaların GİB'in kendi web arayüzünden elle girildiği yöntemdir; ücretsizdir ama bir entegrasyon değildir, her fatura tek tek yazılır. Özel entegratör, GİB'in yetkilendirdiği bir aracı firmanın servisleri üzerinden gönderim yapmaktır; entegratör GİB ile konuşur, yazılımınız entegratörle konuşur. Doğrudan entegrasyon ise işletmenin kendi altyapısını GİB'e bağlamasıdır; teknik ve idari yükü ağır olduğu için büyük kurumlara özgüdür.
Özel entegratörle çalışmanın pratik sonucu şudur: entegrasyonun kalitesi, seçilen entegratörün servis kalitesine bağlıdır. Dokümantasyonu güncel olmayan, test ortamı canlıdan farklı davranan ya da hata mesajları anlaşılmaz bir entegratör, iyi yazılmış bir entegrasyonu bile sorunlu hâle getirir. Kendi yazılımınızı yazdırmakla hazır bir çözüm almak arasında karar verirken bu bağımlılığı hesaba katmak gerekir; hazır paket mi, özel yazılım mı sorusunun cevabı entegrasyon tarafında da geçerlidir.
Entegrasyon adım adım nasıl ilerler?
- Entegratör seçimi ve sözleşme. Servis dokümantasyonunun güncelliği, test ortamının varlığı ve belge tiplerinin (e-fatura, e-arşiv, e-irsaliye) hangilerini desteklediği bu aşamada netleştirilir.
- Test hesabı ve ortam ayrımı. Entegratörler test ve canlı için ayrı adresler verir. Bu ikisini yazılımda tek bir yapılandırma anahtarına bağlamak, canlıya geçişte adresi elle değiştirme hatasının önüne geçer.
- UBL-TR üretimi. Fatura, GİB'in belirlediği UBL-TR XML şemasına göre üretilir: satıcı ve alıcı bilgileri, kalemler, KDV oranları, para birimi ve toplamlar. Şemanın zorunlu alanlarını eksik bırakan belge daha entegratörde reddedilir.
- Mükellef sorgulama. Her gönderimden önce alıcının vergi numarasıyla e-fatura kayıtlı kullanıcı olup olmadığı sorulur. Cevap belgenin e-fatura mı e-arşiv mi olacağını belirler.
- Gönderim ve durum takibi. Belge gönderilir, entegratörden bir belge kimliği alınır ve bu kimlikle durum sorgulanır: iletildi, GİB tarafından kabul edildi, alıcı tarafından kabul veya reddedildi. Ticari fatura senaryosunda alıcının belgeyi reddetme hakkı vardır; reddedilen faturanın muhasebeye yansıması geri alınmalıdır.
- Arşivleme. Gönderilen ve alınan tüm belgeler, imzalı XML hâlleriyle yasal saklama süresi boyunca erişilebilir tutulur. Entegratörün arşivi yeterli değildir; entegratör değişince o arşive erişim de değişebilir.
E-fatura entegrasyonunda en sık yapılan hatalar nelerdir?
Hataların çoğu kodda değil, akışın tasarımında yapılır. Aşağıdakiler Softana'nın sahada en sık karşılaştıklarıdır:
- Mükellef sorgusunu atlamak. Alıcının durumu bir kez sorgulanıp kaydedilir, sonra hiç güncellenmez. Alıcı bu arada e-fatura mükellefi olduysa belgeler yanlış tipte kesilmeye başlar.
- Test ve canlı adreslerini karıştırmak. Test ortamına gönderilen fatura mali olarak yok hükmündedir; canlıya geçişte tek bir adresin güncellenmemesi, faturaların hiç kesilmemiş olması demektir.
- Entegratörün hata kodlarını olduğu gibi göstermek. Kullanıcı ekranda sayısal bir kod ve İngilizce bir açıklama görür, ne yapacağını bilemez. Kodlar yazılım tarafında anlamlı mesajlara çevrilmelidir.
- Yanıt takibini kurmamak. Fatura gönderildikten sonra durumu izlenmezse reddedilen belgeler aylarca fark edilmez ve muhasebe kayıtları gerçeği yansıtmaz.
- Entegratöre sıkı sıkıya bağlanmak. Entegratörün alan adları ve servis yapısı yazılımın her yerine dağılırsa, entegratör değiştirmek entegrasyonu baştan yazmak anlamına gelir.
Entegrasyon ne kadar sürer, maliyeti neye bağlıdır?
Süre belge tipi sayısına ve mevcut yazılımın dışarıya açık bir arayüzünün olup olmadığına bağlıdır. Yalnızca e-fatura ve e-arşiv gönderen, ERP'si makul bir API sunan bir işletme için entegrasyon genellikle birkaç hafta sürer; e-irsaliye ve gelen belge işleme de eklenirse süre uzar. Yazılımın dışarıya hiç açık kapısı yoksa önce o kapının açılması gerekir ve asıl maliyet oraya gider.
Getiriyi ölçmenin en sade yolu elle harcanan zamanı hesaplamaktır. Günde 30 fatura kesen ve her faturayı portala elle girmek için ortalama 4 dakika harcayan bir işletme, günde 2 saat, ayda 40 saatten fazla zamanı yalnızca veri girişine ayırır. Entegrasyonla bu süre sıfıra iner; ayrıca elle girişten kaynaklanan tutar ve vergi numarası hataları da ortadan kalkar. Kendi rakamlarınızı bu formüle koyduğunuzda entegrasyonun kendini ne kadar sürede geri ödeyeceğini görebilirsiniz.
Entegratör değişince entegrasyon baştan mı yazılır?
Yazılım entegratöre doğrudan bağlandıysa büyük ölçüde evet. Her entegratörün servis yapısı, belge alan adları, durum kodları ve hata mesajları farklıdır; birinden diğerine geçmek, bu farkların dokunduğu her yeri yeniden yazmayı gerektirir. Çözüm, yazılımla entegratör arasına bir soyutlama katmanı koymaktır: yazılım tek ve sabit bir arayüzle konuşur, entegratöre özgü farkları bu katman üstlenir. Entegratör değiştiğinde yalnızca katman güncellenir, yazılıma dokunulmaz.
Softana'nın E-Belge platformu tam olarak bu katmanı sunar: e-fatura, e-arşiv ve e-irsaliye için tek bir REST API, entegratör farklarını arkada soyutlar, belge durumlarını tek yerden izletir ve durum değişikliklerinde yazılımınıza bildirim gönderir. Mevcut bir ERP'ye e-fatura eklemek ya da entegratör bağımlılığını azaltmak isteyen ekipler için entegrasyon danışmanlığı hizmetiyle analizden canlıya geçişe kadar süreç birlikte yürütülür.
İstanbul merkezli Softana, kendi e-belge altyapısını geliştirdiği için entegratör servislerinin dokümanda yazmayan davranışlarını yakından tanır. Yazılımınıza e-fatura eklemeyi planlıyorsanız, mevcut sisteminizi ve belge ihtiyacınızı anlatan kısa bir görüşme, entegrasyonun kapsamını ve süresini netleştirmek için yeterlidir.



