NAV Navbar
Logo
C#

Başlarken

Versiyon Tarihçesi

Tarih Açıklama
2019-12-31 (Yeni) E-Fatura menüsünde Hal Tipi Fatura başlığı ve fatura senaryoları başlığı altınada Hal Tipi fatura örnekleri eklenmiştir.
2019-12-27 (Yeni) E-İrsaliye menüsünde muhtelif müşteriler ya da alıcısı e-irsaliye sistemine kayıtlı olmayanlara belge düzenlemenin açıklandığı E-İrsaliye başlığı güncellendi.
2019-10-05 Kamu kurumlarına düzenlenecek e-fatura kılavuzu GİB Dokümanları ve UBL-Fatura Örnekleri bölümüne eklendi.
2019-08-16 Z-Rapor servisi eklendi
2019-07-02 E-Mutabakat servisi eklendi
2019-04-18 E-SMM (Serbest meslek makbuz) servisi eklendi
2019-04-13 Proxy servisi eklendi
2019-04-02 Faturalama (Kontör, Bakiye, Kullanım) servisi eklendi
2019-01-01 E-Fatura, e-arşiv fatura, e-irsaliye entegrasyon kılavuzu ilk versiyon yayınlandı

Başlarken

İZİBİZ E-Dönüşüm Entegrasyon kılavuzuna hoşgeldiniz. Bu kılavuz yazılımlarını İZİBİZ sistemlerine entegre etmek isteyen firmalara yol göstermek için hazırlanmıştır. Entegrasyon kılavuzumuz aşağıda ki ürünleri desteklemektedir |

Eğer entegrasyona yeni başlıyorsanız Başlarken başlığı altında ki bilgileri okumanızı tavsiye ederiz.

Yardım Talebi

Entegrasyon süreci ile ilgili her türlü teknik sorularınızı entegrasyon@izibiz.com.tr adresine iletebilirsiniz.

Tanımlar ve Kısaltmalar

Tanım Açıklama
Başkanlık T.C. Maliye Bakanlığı Gelir İdaresi Başkanlığı
GİB T.C. Maliye Bakanlığı Gelir İdaresi Başkanlığı
E-Fatura Elektronik Fatura
Gönderici Birim e-Faturanın düzenlenmesinden ve gönderilmesinden sorumlu birim
Posta Kutusu Gönderilen e-faturanın alınmasından sorumlu birim
HTTP (Hyper Text Transfer Protocol) Hiper Metin Transferi Protokolü
HTTPS (Hyper Text Transfer Protocol Secure) Hiper Metin Transferi Protokolü–Güvenli
Merkez Gönderici Birim ile Posta Kutusu arasındaki iletişimi sağlayan ve denetleyen birim
MTOM (Message Transfer Optimization Method) Mesaj Transferi Optimizasyon Mekanizması. Web servisleri üzerinden verimli bir şekilde ikilik dosya iletimine olanak sağlayan veri iletim yöntemi
MD5 (Message-Digest Algorithm 5) Veri bütünlüğünü test etmek içinkullanılan, tek yönlü şifreleme algoritması
Schematron/Şematron XML belgelerini mantıksal olarak kontrol etmek için kullanılan kural tabanlı doğrulama dili
Sistem Yanıtı Fatura veya uygulama yanıtı içeren zarfların durumları ile ilgili olarak birimlerden gönderilen cevap mesajlarıdır.
SOAP (Simple Object Access Protocol) Basit Nesne Erişim Protokolü. Dağıtık uygulamalarda ve web servislerinin haberleşmesinde kullanılmak üzere tasarlanan, sunucu/istemci mantığına dayalıiletişim protokolü
SSL (Secure Sockets Layer) Bilginin bütünlüğü ve gizliliği için,internet üzerinde iki taraf arasında oluşan trafiğin şifrelenerek, gizliliğinin ve bütünlüğünün korunmasını sa ğlayan bir protokol
Schema/Şema XML dosyalarında taşınan verilerin nasıl yorumlanacağının belirtimi
TCKN T.C. Kimlik Numarası
VKN Vergi Kimlik Numarası
Veritabanı Çeşitli kaynaklardan elde edilen verilerin depolandığı veri yapısı
VPN (Virtual Private Network) Telekomünikasyon altyapısı kullanılarak güvenli ve özel veri aktarımını sağlayan sanal özel ağ teknolojisi
W3C WWW Birliği
Web Servis Bilgisayarlar arasında ağ üzerinden etkileşimi ve uyumluluğu sağlayan yazılım sistemi
WSDL (Web Services Description Language) Web Servislerinin tanımlandığı, erişim ve işlev bilgilerinin detaylı olarak sunulduğu XML tabanlı metin işaretleme dili
WS-I (Web Services Interoperability) Değişik web servis belirtimlerinin birlikte çalışabilmesini sağlayan endüstri konsorsiyumu
WS-I Basic Profile SOAP, WSDL, UDDI gibi temel web servis belirtimlerinin birlikte çalışabilmesini sağlayan profil
XML (Extensible Markup Language) Verinin tanımlanması ve tarif edilmesi için kullanılan genişletilebilir işaretleme dili
XSD (XML Schema Definition) XML belgelerinin uyması gereken kuralların belirlendiği metin işaretleme dili
XSLT (Extensible Stylesheet Language Transformations) Genişletilebilir Biçimlendirme Dili Dönüşümleri, XML dokümanlarını dönüştürmek için kullanılan ve orijinal dokümanı değiştirmeden, yeni bir doküman oluşturmaya olanak sağlayan
UBL (Universal Business Language) Evrensel İş Dili
UBL-TR UBL Türkiye Özelleştirmesi
Uygulama Elektronik Fatura Uygulaması
Uygulama Yanıtı Ticari fatura senaryosunda alınan bir faturaya ait “KABUL”, “RED” veya “İADE” bilgisini içeren belge türüdür.
Fatura Tarihi Faturanın kaynak sistemde düzenleme tarihi
E-Fatura Numarası Faturaya Ait E-fatura Numarası
Sistem Referansı Kaynak sistemden gelen folyo/çek/fatura referans numarası
Senaryo Kullanılan fatura senaryosu (Temel Fatura / Ticari Fatura)
Fatura Tipi Fatura Tipi Kodu (Satış / İade)
Alıcı Ünvan / Ad Soyad Alıcı cari hesap ünvanı
TCKN / VKN Alıcı vergi kimlik numarası
Fatura Net Tutar KDV Tutarı / Toplam Tutarı
GTB Gümrük ve Ticaret Bakanlığı
GÇB Gümrük Çıkış Belgesi
ZIP Veri sıkıştırma ve arşivleme formatı

Belge Numarası Yönetimi

Belge Görüntüleme

Kullandığınız Java Versiyonuna Göre E-Belge Görüntüleyici İndirebilirsiniz: E-Belge Görüntüleyici Java 1.6 İndir
E-Belge Görüntüleyici Java 1.7 İndir

Belge Gönderme Kontrolleri

Özel entegratör sistemi senkron çalışmaktadır. Yani herhangi bir servise gönderilen istek sunucu tarafından anlık olarak işlenerek sonuç dönülür. Yüklenen belgelerde hatalı durum tespit edilmesi durumunda webservis hata (SOAP Fault) dönülmektedir.

Belge gönderiminde aşağıda ki kontroller yapılmaktadır:

Belge Oluşturma

Özel Entegeratör webservislerine gönderilecek belgelerin (fatura, irsaliye, müstahsil vs) UBL-TR formatında istemci ortamında oluşturulması gerekmektedir. UBL-TR XML belge oluşturmak için iki yöntem kullanılabilir :

Belge Tipi Çalıştırılacak Komut Oluşacak Sınıf Belge Tipi
E-Fatura / E-Arşiv Fatura xsd /c UBL-Invoice-2.1.xsd ../common/UBL-CommonExtensionComponents-2.1.xsd ../common/UBL-CommonBasicComponents-2.1.xsd ../common/UBL-UnqualifiedDataTypes-2.1.xsd ../common/UBL-CoreComponentParameters-2.1.xsd ../common/CCTS_CCT_SchemaModule-2.1.xsd ../common/UBL-CommonAggregateComponents-2.1.xsd UBL-Invoice-2.1.cs InvoiceType
E-İrsaliye xsd /c UBL-DespatchAdvice-2.1.xsd ../common/UBL-CommonExtensionComponents-2.1.xsd ../common/UBL-CommonBasicComponents-2.1.xsd ../common/UBL-UnqualifiedDataTypes-2.1.xsd ../common/UBL-CoreComponentParameters-2.1.xsd ../common/CCTS_CCT_SchemaModule-2.1.xsd ../common/UBL-CommonAggregateComponents-2.1.xsd UBL-DespatchAdvice-2.1.cs DespatchAdviceType
E-İrsaliye Yanıtı xsd /c UBL-ReceiptAdvice-2.1.xsd ../common/UBL-CommonExtensionComponents-2.1.xsd ../common/UBL-CommonBasicComponents-2.1.xsd ../common/UBL-UnqualifiedDataTypes-2.1.xsd ../common/UBL-CoreComponentParameters-2.1.xsd ../common/CCTS_CCT_SchemaModule-2.1.xsd ../common/UBL-CommonAggregateComponents-2.1.xsd UBL-ReceiptAdvice-2.1.cs ReceiptAdviceType
Müstahsil Makbuzu xsd /c UBL-CreditNote-2.1.xsd ../common/UBL-CommonExtensionComponents-2.1.xsd ../common/UBL-CommonBasicComponents-2.1.xsd ../common/UBL-UnqualifiedDataTypes-2.1.xsd ../common/UBL-CoreComponentParameters-2.1.xsd ../common/CCTS_CCT_SchemaModule-2.1.xsd ../common/UBL-CommonAggregateComponents-2.1.xsd UBL-CreditNote-2.1.cs CreditNoteType


Ödeme Şekilleri

e-Arşiv ve e-Fatura ödeme paymentmeans tag’ini fatura içerisinde kullanıyorsanız bu alanın örnek kod’ları aşağıdaki gibidir.

KOD AÇIKLAMASI
48 KREDIKARTI/BANKAKARTI
46 EFT/HAVALE
10 KAPIDAODEME
1 Diğerleri

Diğer kodlar için aşağıdaki referanslardan yararlanabilirsiniz. * Referans 1: http://www.unece.org/trade/untdid/d11a/tred/tred4461.htm ** Referans 2: https://www.stylusstudio.com/edifact/D01C/4461.htm

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Entegrasyon Sıkça Sorulan Sorular

Entegrasyon sürecinde karşılaşılan soruların cevapları:

Soru: Ürün bazlı (E-Fatura, E-İrsaliye) kayıtlı kullanıcıları sorgulayabileceğimiz bir servis mevcut mu ?

Cevap: Kimlik Doğrulama webservisinde bulunan Mükellef Listesi Çekme (GetGibUserList) metodumuzu kullanarak E-Fatura ve E-İrsaliye mükellef listesini çekebilirsiniz. DOCUMENT_TYPE parametresine E-Fatura için INVOICE, E-İrsaliye için DESPATCHADVICE gönderilmelidir. Her iki ürüne ait etiketleri toplu çekmek için ALL değeri gönderilebilir. Parametre gönderilmez veya boş gönderilirse bütün liste dönülecektir.

Kimlik Doğrulama Webservisi

Entegrasyon sürecinin ilk adımı olan kimlik doğrulamayı sağlayan servistir. Yapılan her işlem mutlaka aktif bir oturum ile yapılmalıdır.

İstemci (client) Örnek Projeler

Webservice entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Oturum Açma (Login)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
REQUEST_HEADER.SESSION_ID String Evet Request Header objesi içerisinde bulunan SESSION_ID login servisinde -1 olarak gönderilmelidir.
USER_NAME String Evet Sisteme tanımlı kullanıcı adı. Test hesabı için entegrasyon@izibiz.com.tr e-posta adresiyle iletişime geçebilirsiniz.
PASSWORD String Evet Sisteme tanımlı kullanıcıya ait şifre.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
SESSION_ID String Sonraki metod çağrılarında kullanılacak oturum bilgisi.

Oturum Kapatma (Logout)

Web servis istemcisinin özel entegratör platformunda ki oturumu kapatmasını sağlayan servistir.

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Oturum kapatılmak istenen session ID değeri



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
RETURN_CODE String Oturum başarı ile sonlandırılmışsa 0 döner

Mükellef Listesi Çekme (GetGibUserList)

E-Fatura ve E-İrsaliye sistemine kayıtlı firmalara ait GB/PK etiketlerinin sıkıştırılmış olarak istenilen tipte dönüldüğü servistir.

Mükellef Çekme Senaryoları

İşlem
DOCUMENT ALIAS ALIAS_MODIFY REGISTER_TIME
Aktif E-Fatura ve E-İrsaliye posta kutusu etiketlerini çekme ALL PK - -
Aktif E-Fatura ve E-İrsaliye GB ve PK etiketlerini çekme ALL ALL - -
Aktif E-Fatura posta kutusu etiketlerini çekme INVOICE PK - -
Aktif E-İrsaliye posta kutusu etiketlerini çekme DESPATCHADVICE PK - -
Belirli tarihten sonra (2019-12-01) eklenen veya silinen E-Fatura ve E-İrsaliye posta kutusu etiketlerini çekme ALL PK 2019-12-01 -
Belirli tarihten sonra (2019-12-01) eklenen veya silinen E-Fatura ve E-İrsaliye GB ve PK etiketlerini çekme ALL ALL 2019-12-01 -
Belirli tarihten sonra (2019-12-01) eklenen veya silinen E-Fatura posta kutusu etiketlerini çekme INVOICE PK 2019-12-01 -
Belirli tarihten sonra (2019-12-01) eklenen veya silinen E-İrsaliye posta kutusu etiketlerini çekme DESPATCHADVICE PK 2019-12-01
Belirli tarihten sonra (2019-12-01) E-Fatura veya E-İrsaliye mükellefi olan firmaların etiketlerini çekme ALL ALL - 2019-12-01
Belirli tarihten sonra (2013-12-01) E-Fatura veya E-İrsaliye mükellefi olan firmaların belirtilen bir tarihten (2019-12-01) sonra eklenen veya silinen etiketlerini çekme ALL ALL 2019-12-01 2013-12-01
Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
TYPE String Hayır Listenin dönüleceği dosya tipi. XML ve CSV olabilir. Varsayılan XMLdir.
DOCUMENT_TYPE String Hayır Mükellef listesi çekilmek istenilen ürün tipi. E-Fatura için INVOICE, E-İrsaliye için DESPATCHADVICE gönderilmelidir. Her iki ürüne ait etiketleri çekmek için ALL değeri gönderilebilir. Parametre gönderilmez bütün ürünlere ait Aktif etiket listesi dönülecektir.
ALIAS_TYPE String Hayır Mükelleflerin etiketlerine göre çekmek için kullanılır. Sadece Gönderici Birim etiketini çekmek için GB, Posta Kutusu etiketini çekmek için PK gönderilmelidir. Bütün etiketleri çekmek için ALL değeri gönderilebilir. Varsayılan PKdir. Parametre gönderilmez ise sadece PK etiket listesi dönülecektir. Belge göndermek için sadece PK etiketlerine ihtiyaç bulunmaktadır.
REGISTER_TIME_START DateTime Hayır Mükellefiyet başlangıç tarihi. Belirli bir tarihten sonra e-fatura veya e-irsaliye mükellefi sisteme dahil olmuş mükellefleri çekmek için kullanılabilir. Eğer tarih içerisinde saat bilgisi gönderilirse sonuç dönülürken dikkate alınacaktır. format: YYYY-AA-GG veya YYYY-AA-GGTSS:DD:SS formatında 2013-01-01, 2013-01-01T01:01:01
ALIAS_MODIFY_DATE DateTime Hayır Etiket durum değişiklik tarihi. Belirli bir tarihten sonra sisteme eklenen veya silinen etiketleri çekmek için kullanılabilir. Bu parametre gönderilirse gönderilen tarihten sonra sisteme eklenen veya silinen etiketler dönülecektir. Eğer tarih içerisinde saat bilgisi gönderilirse sonuç dönülürken dikkate alınacaktır. format: YYYY-AA-GG veya YYYY-AA-GGTSS:DD:SS formatında 2013-01-01, 2013-01-01T01:01:01



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CONTENT Base64Encoded Kriterlere uygun mükelleflere ait GB ve PK adresleri

XML dosyasının içerisinde bulunan USER objesinin elamanları şu şekildedir :

Eleman Tip Açıklama
USER.IDENTIFIER String Mükellefe ait VKNsı.
USER.ALIAS String Mükellefe ait GB veya PK etiketi. format: urn:mail:defaultgb@firma.com
USER.TITLE String Firmanın GİB e-fatura sisteminde tanımlı ünvanı.
USER.TYPE String Firmanın GİB e-fatura sisteminde tanımlı tipi. OZEL veya KAMU olabilir.
USER.UNIT String Etiketin tipi. GB veya PK
USER.DOCUMENT_TYPE String E-Fatura için INVOICE, E-İrsaliye için DESPATCHADVICE dönülmektedir.
USER.REGISTER_TIME DateTime Firmanın GİB e-fatura sistemine ilk kayıt olduğu tarih. formatı: 2013-07-01T15:22:11
USER.ALIAS_CREATION_TIME DateTime Etiketin oluşturulduğu tarih. formatı: 2013-07-01T15:22:11
USER.DELETED String Eleman sadece silinmiş etiketlerde bulunur. Değeri Y olur. Silinmemiş etiketlerde bu eleman bulunmaz.
USER.DELETION_TIME DateTime Eleman sadece silinmiş etiketlerde bulunur. Etiketin GİB sisteminde kapatıldığı tarih. formatı: 2013-07-01T15:22:11

E-Fatura Mükellefi Sorgulama (CheckUser)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
USER.IDENTIFIER String Evet Mükellefiyeti sorgulanacak firmanın vergi kimlik numarası
DOCUMENT_TYPE String Evet Mükelleffiyet kontrol edilecek ürün tipi. E-Fatura için INVOICE, E-İrsaliye için DESPATCHADVICE gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
USER.IDENTIFIER String Mükellefe ait VKNsı.
USER.ALIAS String Mükellefe ait GB veya PK etiketi.
USER.TITLE String Firmanın GİB sisteminde tanımlı ünvanı.
USER.TYPE String Firmanın GİB sisteminde tanımlı tipi. OZEL veya KAMU olabilir.
USER.REGISTER_TIME Date Firmanın GİB sistemine ilk kayıt olduğu tarih. formatı: 2013-07-01T15:22:11
USER.UNIT String Etiketin tipi. GB veya PK
USER.ALIAS_CREATION_TIME DateTime Etiketin oluşturulduğu tarih. formatı: 2013-07-01T15:22:11

E-Fatura Webservisi

e-Fatura servisi, e-fatura mükellefinin fatura gönderimini ve gelen faturaları kendisi sistemine çekmesini sağlayan webservis uygulamasıdır.

GİB Dokümanları

Doküman Açıklama İndir
UBL-TR Fatura UBL-TR v1.2 (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan fatura belgesinde geçen elemanlara ait XSD, tanımlama, kullanım şekilleri, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Ortak Elemanlar UBL-TR (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan belgelerde geçmesi muhtemel elemanlara ait (ortak elemanlar örneğin: Adres, Parasal Toplamlar, Taraf gibi) XSD, açıklama, kullanım şartları, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Kod Listeleri UBL-TR kapsamında kullanılan Kodlama Sistemleri ve Kimlik Şemaları hakkında bilgi vermek amacı ile hazırlanmıştır.
Gümrük İşlemleri Kılavuzu Elektronik Fatura Uygulamasında yolcu beraberi eşya ihracı ve mal ihracı faturalarını e-fatura sistemine entegre edecek ve uygulamaya ilişkin yazılım geliştireceklerin teknik konularda ihtiyaç duyabilecekleri bilgileri vermek amacıyla hazırlanmıştır.
İhracat Faturası Ek Alanlar İhracat faturalarında eklenmesi zorunlu ve isteğe bağlı alanların açıklamak için hazırlanmıştır.
SGK E-Fatura Teknik Kılavuzu Elektronik Fatura Uygulamasında Sosyal Güvenlik Kurumuna (SGK) düzenlenecek faturaların e-fatura sistemine entegre edecek uygulamaya ilişkin yazılım geliştireceklerin teknik konularda ihtiyaç duyabilecekleri bilgileri vermek amacıyla hazırlanmıştır.
Kamu E-Fatura Teknik Kılavuzu e-Fatura Uygulamasına kayıtlı olan vergi mükelleflerimiz, 5018 sayılı Kamu Mali Yönetimi ve Kontrol Kanunu ile belirlenmiş merkezi yönetim kapsamında yer alan ve Muhasebat ve Mali Kontrol Genel Müdürlüğü (MGM) tarafından geliştirilen Yeni Harcama Yönetim Sistemini (MYS) kullanan kamu idareleri ve bunlara bağlı harcama birimleri adına, 1.3.2019 tarihinden itibaren GİB e-Fatura Uygulaması aracılığı ile e-Fatura düzenleyip gönderebileceklerdir. Teknik kılavuz hazırlanmıştır.
Hal Tipi Fatura Kılavuzu Hal Komisyoncularının düzenlediği KOMİSYONCU veya SATIŞ faturalarının işleyişinin açıklandığı teknik kılavuzdur.

UBL-Fatura Örnekleri

E-Fatura ve E-Arşiv Fatura sistemi üzerinden düzenlebilecek ve gönderilebilecek fatura senaryoları ve örnek fatura XML dosyası aşağıda listelenmiştir.

Fatura Senaryosu Açıklama XML HTML
Temel Satış Faturası Alıcısı tarafından elektronik ortamda kabul veya reddedilemeyen fatura tipidir.
Ticari Satış Faturası Alıcısı tarafından elektronik ortamda kabul veya reddedilebilen fatura tipidir.
İade Faturası Alınan bir fatura üzerinde ki yanlış tutar veya eksik bilgi sebebi ile düzenlenen fatura tipidir. İade faturası TEMELFATURA olarak gönderilmesi zorunludur.
Farklı KDV Oranlarına Sahip Fatura Fatura satırında farklı KDV oranlarının bulunduğu fatura örneğidir. Her satırda farklı KDV oranı vardır.
0 KDV Fatura Fatura satırında KDV oranı 0 olan satış faturası örneğidir. KDV 0 olduğu durumlarda muafiyet sebebi belirtilmelidir.
Dövizli Satış Faturası Fatura para birimi TL dışında farklı bir para birimi ile düzenlenen fatura örneğidir. Faturanın içerisinde tutarlar döviz cinsindendir. TL karşlıkları XML içerisinde bulunmaz. TL karşılıkları görsel üzerinde tutar ile kur çarpılarak gösterilir.
Bedelsiz (%100 İskontolu) Satış Faturası Promosyon, Eşantiyon veya Numune Ürün Teslimlerinde bedelsiz düzenlenen fatura örneğidir. Bu faturalarda KDV 0 hesaplandığı için muafiyet sebebi belirtilmelidir. Bu faturaların muafiyet kodu 351 olur. Muafiyet sebebi ise müşteri tarafından girilebilir.
Satırda Çoklu İskontolu Satış Faturası Bir fatura satırında birden fazla iskonto içeren fatura örneğidir.
İstisna Faturası İstisna Faturası
Özel Mathrah Faturası Özel Matrah Faturası
Tevkifat Faturası Tevkifat Faturası
İhraç Kayıtlı Fatura İhraç Kayıtlı Fatura
İhracat Faturası İhracat Faturası
Yolcu Beraberi (Taxfree) Yolcu Beraberi (Taxfree)
SGK Faturası SGK Faturası TEMELFATURA senaryosunda gönderilmek zorundadır.
Kamu Faturası Kamu kurum ve kuruluşlarına düzenlenen fatura örneğidir. TEMELFATURA senaryosunda göndermek zorundadır.
Hal Komisyon Faturası Hal Komisyoncularının komisyon kazançları için düzenledikleri fatura tipidir. Faturanın HKS senaryosunda gönderilmesi zorunludur.
Hal Satış Faturası Hal Komisyoncularının mal üretici veya tüccarın malını satışında düzenledikleri fatura tipidir. Satış fatura tipinde var olan özelliklerinin yanında Mal Sahibi Bilgileri (mal sahibi Ad Soyad /Unvan ve Mal Sahibi VKN/TCKN olmak üzere iki ayrı alan)ve künye numarası sütunlarının olması gerekmektedir. Künye no sütunu zorunlu alan olup 19 Haneden az veya çok girilememelidir.
Gelir Vergisi(GV) Stopajlı Fatura Gelir vergisi stopajı uygulanan fatura örneğidir.
Kurumlar Vergisi(KV) Stopajlı Fatura Kurumlar vergisi stopajı uygulanan fatura örneğidir.
Ek Belge İçeren Fatura Faturanın ekinde belge gönderildiği durumlarda düzenlenecek fatura örneğidir.
E-Arşiv Fatura - İnternet Internet üzerine yapılan satış için düzenlenen fatura tipidir. Bu faturalar alıcısına elektronik ortamda iletilmek zorundadır. Bu faturalar diğer satış faturalarından farklı bir seriden gönderilmeldir.
E-Arşiv Fatura - Normal Internet üzerine yapılan satış dışında düzenlenen fatura tipidir. Bu faturalar alıcısına elektronik ortamda iletilebileceği gibi kağıt olarakta teslim edilebilir.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Test Hesaplar

Test sürecinde düzenlenen faturaların/irsaliyelerin göndericisi, alıcısı ve etiketler için aşağıda ki bilgiler kullanılmalıdır.

Gönderici VKN Gönderici Etiket Alıcı VKN Alıcı Etiket
4840847211 urn:mail:defaultgb@izibiz.com.tr 4840847211 urn:mail:defaultpk@izibiz.com.tr

Dikkat Edilecek Hususlar

Uygulamanızı tasarlarken aşağıda ki bilgiler faydalı olacaktır:

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login servisi ile oturum açarak session id alınacak. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. Kimlik Doğrulama (Authentication) Webservisinde bulunan GetGibUserList servisi ile GIB e-fatura mükellef listesini her 2 saatte özel entegratör platformundan çekmeniz gerekmektedir. Güncel listeyi çektikten sonra Cari listenizde ki firmaların e-fatura mükellefi olup olmadığını güncellemelisiniz.
  3. E-Fatura Mükellefi olan firmalara kesilen faturaları UBL-TR formatına dönüştürerek (ekte örnek fatura bulunuyor) İzibiz sunucularına gönderebilirsiniz. Her fatura içerisinde faturanın görüntülenmesini sağlayan XSLT dokümanı olmalıdır.
  4. SendInvoice metodu ile fatura gönderimi yapılacak. Gönderim esnasında eğer faturanın alıcısına ait birden fazla Posta Kutusu bulunuyorsa ekranda seçilerek gönderilmesi sağlanmalı. Sadece 1 adet PK adresi varsa seçim yapılmadan gönderim sağlanabilir.
  5. GetInvoiceStatus metodu ile gelen/giden faturaların durumları sorgulanacak. Nihai duruma erişene kadar faturanın durumu özel entegratör sisteminden minumum 4 saatte bir sorgulanmalıdır. Sık sorgulama yapmayınız.
  6. GetInvoice metodu ile firmaya gelen faturalar müşteri bilgisayarına aktarılır. İzibiz sistemlerine gelen yeni faturaları almanız gerekmektedir. Servis ile yeni gelen en fazla 100 adet faturayı çekebilirsiniz. Eğer dönen listede 100 adet fatura varsa yeniden getinvoice servisi çağırılarak başka fatura olup olmadığı kontrol edilmelidir. Dönen listede 100den az fatura varsa tekrar sorgulama yapmaya gerek yoktur. Fatura çekme zamanlayıcı ile yapılıyorsa en az 15 dk bir servis çağırılmalıdır.
  7. MarkInvoice metodu ile başarılı şekilde teslim alınan faturalar izibiz sistemlerinde okundu olarak işaretlenir. Böylece bir sonra ki getinvoice servisi çağrılınca dönülmez.
  8. SendInvoiceResponseWithServerSign metodu ile gelen ticari bir faturaya kabul veya red yanıtı gönderebilirsiniz.
  9. Gelen bir faturaya 8 gün içerisinde kabul veya red gönderilebilir. 8 günü geçtikten sonra kabul/red yapılması engellenmelidir. Temel faturalar için yanıt gönderilmesi kısıtlanmalıdır.
  10. Ticari bir faturaya elektronik ortamda en fazla 1 adet yanıt gönderilebilir. Bundan dolayı bir faturaya başarıyla yanıt (kabul/red) gönderilmişse farklı bir yanıt gönderilmesi kısıtlanmalıdır.
  11. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı e-fatura programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

E-Fatura Entegrasyon Kontrol Listesi

Durum Kontrol
Evet / Hayır Oturum Açmak için Kimlik Doğrulama (Authentication) webservisinde ki Login metodu kullanıldı.
Evet / Hayır Oturum açıldıktan sonra bütün isteklerde aynı Session ID kullanılıyor. Eğer Aktif session bulunamadı hatası dönülürse yeni oturum açılıyor.
Evet / Hayır E-Fatura mükellef listesi çekmek için Kimlik Doğrulama (Authentication) webservisinde ki GetGibUserList metodu kullanılıyor.
Evet / Hayır Gönderilen her istek ile REQUEST_HEADER objesinde ki SESSION_ID ve APPLICATION_NAME alanları dolu gönderiliyor.
Evet / Hayır Fatura numarası ataması müteselsilliği sağlıyor.
Evet / Hayır Her türlü fatura senaryosuna göre fatura SendInvoice metodu kullanılarak gönderildi (TEMEL, TICARI, IHRACAT, YOLCUBERABERI,SGK)
Evet / Hayır Her türlü fatura tipinden örnek fatura gönderildi. (Satış, Iade, Tevkifat, Özel Matrah vs)
Evet / Hayır Özel entegratöre iletilen faturalar için muhasebe paketi/ERP'de değişiklik yapılamıyor. Kayıt kitleniyor.
Evet / Hayır Alıcı tarafında hata almış faturalar aynı fatura numarası ama farklı ETTN ile tekrar SendInvoice servisi kullanılarak gönderilebiliyor.
Evet / Hayır 7 günden geriye fatura düzenlenemiyor.
Evet / Hayır GetInvoice metodu kullanılarak yeni gelen bütün faturalar içerikleri ile beraber (XML) müşteri ortamına çekiliyor.
Evet / Hayır Özel entegratörden fatura çekme özelliği ekranda bir butona değilde zamanlayıcı ile belirli aralıkta otomatik yapılıyorsa bu süre konfiguratif ve en az 15dk olarak belirlendi.
Evet / Hayır Özel entegratörden fatura çekme ekranda bir buton ile kullanıcıya bırakıldıysa kullanıcı çok sık butona tıklasa bile 5 dakika da bir yapılıyor.
Evet / Hayır Özel entegratörden GetInvoice metodu ile çekilen faturaların XMLleri (file sisteme veya veritabanına) kaydediliyor.
Evet / Hayır Başarı ile kaydedilen faturalar için MarkInvoice kullanılarak alındı mesajı gönderildi.
Evet / Hayır Alınan bütün faturalar için toplu alındı mesajı gönderilmek için GetInvoice metodu ile dönülen INVOICE listesi MarkInvoice metoduna parametre olarak gönderiliyorsa fatura içeriğinin (Base64Binary) bulunduğu INVOICE.CONTENT alanı boşaltılıyor. Böylece network trafik oluşturulması önleniyor.
Evet / Hayır Faturaların durumu zamanlayıcı ile otomatik sorgulanıyorsa bu süre konfiguratif ve en az 4 saat olarak belirlendi.
Evet / Hayır Nihai duruma ulaşmış giden faturaların (GetInvoiceStatus servisi ile dönülen SUBSTATUS parametresinin değeri SUCCEED veya FAILED ise) durumları sorgulanmıyor.
Evet / Hayır Gelen temel faturaların durumları sorgulanmıyor.
Evet / Hayır Gelen ticari faturaların durumları yanıt verildikten sonra sorugulanmaya başlanıyor ve GetInvoiceStatus servisi ile dönülen STATUS parametresinin değeri SUCCEED veya FAILED olana kadar sorgulanıyor.
Evet / Hayır Alıcı sisteme ulaştıktan sonra üzerinden 8 gün geçmiş gelen veya giden faturaların durumları sorgulanmıyor.
Evet / Hayır Nihai duruma ulaşmamış faturalar için durum sorgulaması GetInvoiceStatus metodu ile yapılıyor.
Evet / Hayır Durum sorgulaması yapılacak fatura birden fazla ise GetInvoiceStatus metodunda UUID parametresi çoklanarak tek bir istek ile yapılıyor. Yani her fatura için ayrı ayrı durum sorgulaması yapılmıyor.
Evet / Hayır İhracat faturaların durumları sorgulanınca GTB numarası vs alınıp müşteriye gösteriliyor.
Evet / Hayır Gelen temel fatura senaryosunda ki faturalara kabul veya ret yanıtı gönderilemiyor.
Evet / Hayır Gelen ticari fatura senaryosunda ki faturalara kabul veya red yanıtı SendInvoiceResponseWithServerSign metodu ile gönderildi.
Evet / Hayır Ret edilen ticari faturalar için red sebebi mutlaka gönderiliyor.
Evet / Hayır Fatura görüntülemek için indirdilen fatura XML içerisinde ki XSLT ile transform edip HTML görüntüsünü oluşturuluyor.
Evet / Hayır Kullanıcı uygulamayı kapattığında Kimlik Doğrulama (Authentication) webservisinde ki Logout metodu kullanarak oturum kapatıldı.

İstemci (client) Örnek Projeler

Webservice entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Fatura Sınıfı (InvoiceType) Nasıl Üretilir ?

.NET üzerinden XSD dosyasından sınıf üretmek için şu adımları uygulayınız:

  1. http://www.efatura.gov.tr/dosyalar/kilavuzlar/UBL-TR1.2.1_Paketi.zip adresinden paket indirilir.
  2. İndirilen dosya unzip edilir.
  3. .Net Framework yüklü olan bir bilgisayarda başlat>Developer Command Prompt yazılır ve gelen seçenek tıklanarak komut dosyası açılır
  4. 2.maddedeki unzip yapılan dizine cd UNZIP_EDILEN_DIZIN olarak gidilir.
  5. Gelen ekranda aşağıdaki komutu yapıştırıyoruz.
    xsd /c UBL-Invoice-2.1.xsd UBL-CommonExtensionComponents-2.1.xsd UBL-CommonBasicComponents-2.1.xsd UBL-UnqualifiedDataTypes-2.1.xsd UBL-CoreComponentParameters-2.1.xsd CCTS_CCT_SchemaModule-2.1.xsd UBL-CommonAggregateComponents-2.1.xsd
  6. Bu işlemin sonunda e-Fatura/E-Arşiv fatura oluşturmak için gerekli bütün sınıflar UBL-Invoice-2.1.cs dosyası içerisinde oluşturulacaktır.
  7. Fatura InvoiceType sınıfı ile üretilmektedir.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Fatura Gönderme (SendInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER.SESSION_ID String Evet Request Header objesi içerisinde bulunan SESSION_ID gönderilmelidir.
REQUEST_HEADER.COMPRESSED String Hayır Binary Fatura içeriği sıkıştırılmış/sıkıştırılmamış bilgisi. Varsayılan değer Y olduğu için gönderilmediği durumda fatura sıkıştırılarak/ziplenerek gönderilmesi beklenmektedir. Faturayı XML olarak göndermek için mutlaka eleman eklenmeli ve N değeri gönderilmelidir.
SENDER String Hayır Faturayı gönderen tarafın vergi kimlik numarasını vkn attribute içerisine, gönderici birim etiketini alias attribute eklenmelidir. Eğer eleman gönderilmezse oturum açılan kullanıcının bağlı olduğu hesapta ki VKN ve gönderici birim etiketi kullanılacaktır. Sender elemanı gönderilmesini tavsiye ederiz.
RECEIVER String Hayır Faturanın alıcı tarafının vergi kimlik numarasını vkn attribute içerisine, posta kutusu etiketini alias attribute içerisine eklenmelidir. Eğer eleman gönderilmezse fatura içerisinde ki alıcı taraf (AccountingCustomerParty) içerisinde ki VKN ve o VKN için tanımlanmış herhangi bir posta kutusu etiketi kullanılacaktır. Receiver elemanı gönderilmesini tavsiye ederiz. Özellikle alıcı tarafından posta kutusu tercihi talep edilmişse bu eleman kullanılmalıdır.
INVOICE.CONTENT Array Evet Faturanın Base64Binary tipinde XML veya Ziplenmiş içeriği. Bir istek ile çoklu fatura gönderimi yapılabilir. Birden fazla fatura göndermek için INVOICE elemanı çoklanmalıdır.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Hata Kodları

Hata Kodu Açıklama
-1 Beklenmedik bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.
10001 Sistemde Beklenmedik Bir Hata Oluştu: {HATA SEBEBİ}
10002 Oturum oluşturulamadı
10003 Belge Şematron Kontrolünden Geçemedi: {HATA SEBEBİ}
10004 Geçersiz oturum. Lütfen tekrar oturum oluşturunuz ve tekrar deneyiniz
10005 Hesabınızın {ÜRÜN ADI} ürün aktif degildir
10006 Yetkiniz bulunmamaktadır
10007 İstek ZİP bir dosya içermelidir
10008 Belirtilen kriterlere uygun kayıt bulunamamıştır
10009 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10010 Bir istek boyutu maksimum 5MB veya 100 adet belge içerebilir
10011 Tekrarlanan işlem: kayıt sistemde mevcuttur
10012 Kullanıcı aktif degil {kullanıcı adı}
10013 Gönderilen istek geçersizdir. Hata sebebi {0}
10014 Geçersiz İmza
10015 Servis desteklenmemektedir. Servis adı
10016 Müşteri sistemde aktif degildir.
10017 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10018 Yetkisiz erişim tespit edildi! {HATA SEBEBİ}

Taslak Fatura Yükleme (LoadInvoice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Fatura sıkıştırılarak/ziplenerek gönderiliyorsa COMPRESSED alanı gönderilmeyebilir veya Y olarak gönderilebilir. Faturayı XML formatında sıkıştırılmadan yüklemek için mutlaka COMPRESSED eleman eklenmeli ve N değeri gönderilmelidir.
INVOICE.CONTENT Array Evet Faturanın Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Bir istek ile çoklu fatura gönderimi yapılabilir. Birden fazla fatura göndermek için INVOICE elemanı çoklanmalıdır.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Hata Kodları

Hata Kodu Açıklama
-1 Beklenmedik bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.
10001 Sistemde Beklenmedik Bir Hata Oluştu: {HATA SEBEBİ}
10002 Oturum oluşturulamadı
10003 Belge Şematron Kontrolünden Geçemedi: {HATA SEBEBİ}
10004 Geçersiz oturum. Lütfen tekrar oturum oluşturunuz ve tekrar deneyiniz
10005 Hesabınızın {ÜRÜN ADI} ürün aktif degildir
10006 Yetkiniz bulunmamaktadır
10007 İstek ZİP bir dosya içermelidir
10008 Belirtilen kriterlere uygun kayıt bulunamamıştır
10009 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10010 Bir istek boyutu maksimum 5MB veya 100 adet belge içerebilir
10011 Tekrarlanan işlem: kayıt sistemde mevcuttur
10012 Kullanıcı aktif degil {kullanıcı adı}
10013 Gönderilen istek geçersizdir. Hata sebebi {0}
10014 Geçersiz İmza
10015 Servis desteklenmemektedir. Servis adı
10016 Müşteri sistemde aktif degildir.
10017 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10018 Yetkisiz erişim tespit edildi! {HATA SEBEBİ}

E-Fatura Okuma (GetInvoice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir. Değerler: Y/N
SEARCH_KEY.LIMIT String Hayır Kaç fatura okunmak istendiği. Eğer eleman gönderilmezse 10 adet fatura, fatura içerikleri (XML) ile beraber en fazla 100 adet fatura, sadece fatura başlıklarını çekildiğindeise en fazla 25.000 adet fatura dönülür.
SEARCH_KEY.FROM String Hayır Gönderici firma gönderici birim (GB) etiketine göre çekmek için kullanılabilir. Örneğin birden fazla GB etiketi olan bir firmanın sadece muhasebe departmanından gelen faturaları okumak için kullanılabilir. format: urn:mail:muhasebegb@firma.com
SEARCH_KEY.TO String Hayır Birden fazla Posta Kutusu (PK) etiketi olan bir firmanın sadece bir PK adresine gelen faturaları çekmek için kullanılabilir. Eğer etiket gönderilmez ise kullanıcının yetkisine bağlı olarak bütün faturalar dönülür. format: urn:mail:muhasebepk@firma.com
SEARCH_KEY.ID String Hayır Fatura numarası ile fatura okumak için kullanılabilir. format: FYA2018000000001
SEARCH_KEY.UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile fatura okumak için kullanılabilir. GUID formatında
SEARCH_KEY.DATE_TYPE String Hayır Belirli tarih aralığında fatura çekmek istendiğinde belirlenen tarih tipidir. CREATE değeri gönderilirse fatura oluşturulma tarihine göre getirilir, boş veya ISSUE değeri gönderilirse fatura tarihine göre getirilmektedir.
SEARCH_KEY.START_DATE String Hayır Belirli tarih aralığında fatura çekmek istendiğinde dönem başlangıç tarihi format: YYYY-MM-DD
SEARCH_KEY.END_DATE String Hayır Belirli tarih aralığında fatura çekmek istendiğinde dönem bitiş tarihi format: YYYY-MM-DD
SEARCH_KEY.READ_INCLUDED Boolean Hayır Fatura okurken daha önce okunmuş faturaları dönüşe dahil edilip edilmeyeceğini belirler. true değeri gönderilirse fatura daha önce okunmuş olsa bile yanıta eklenir. Gönderilmezse veya false gönderilirse sadece yeni gelen faturalar dönülür. Değerler: true/false
SEARCH_KEY.DRAFT_FLAG String Hayır Taslak faturaları sonuca eklenmesi için kullanılan parametredir. Y değeri gönderilirse taslak faturalar diğer kriterlere uyan faturalarla beraber sonuca eklenir. Parametre gönderilmezse veya N gönderilirse taslak faturalar sonuca eklenmez. Değerler: Y/N
SEARCH_KEY.DIRECTION String Hayır Belge yönü. Gelen veya Giden faturaları çekmek için kullanılabilir. Gelen faturaları çekmek için IN, giden faturaları çekmek için OUT değeri gönderilebilir. Varsayılan değer IN olduğu için eğer parametre gönderilmezse sadece gelen faturalar dönülecektir. Gönderilebilecek değerler: IN, OUT
HEADER_ONLY String Hayır Fatura içerik ile beraber mi yoksa sadece özet bilgisi mi okunmak istenildiğini belirler. Eleman gönderilmezse veya N değeri gönderilirse faturalar XML ile beraber dönülür. Y değeri gönderilirse faturaların özeti dönülür. Değerler: Y/N



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE ComplexType Sorgu kriterine uyan fatura(lar)ın listesi. Fatura numarası ID, fatura evrensel tekil tanımlama numarası UUID ve e-fatura sisteminde tanımlı tekil numara değeri LIST_ID attribute içerisinde dönülmektedir.
INVOICE.HEADER ComplexType Faturaya ait özet bilgiler içermektedir.
HEADER.SENDER String Faturayı gönderen firma VKN'si.
HEADER.RECEIVER String Faturayı alan firma VKN'si.
HEADER.SUPPLIER String Faturayı gönderen firma ünvanı.
HEADER.CUSTOMER String Faturayı alan firma ünvanı.
HEADER.ISSUE_DATE String Fatura tarihi.
HEADER.PAYABLE_AMOUNT String Toplam ödenecek tutar.
HEADER.FROM String Faturayı gönderen Gönderici Birim (GB)
HEADER.TO String Faturanın geldiği Posta Kutusu (PK)
HEADER.PROFILEID String Faturanın senaryosu. TEMELFATURA, TICARIFATURA,IHRACATFATURA, YOLCUBERABER değerleri olabilir.
HEADER.INVOICE_TYPE_CODE String Faturanın tipi. SATIS, IADE, ISTISNA, IHRACAT, OZELMATRAH, TEVKIFAT, IHRACKAYITLI değerleri olabilir.
HEADER.STATUS String Faturanın durumu. Detay için Fatura durum sorgulama ekranında bulunan Fatura Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Fatura durum açıklaması. Detay için Fatura durum sorgulama ekranında bulunan Fatura Durumları başlığını inceleyiniz.
HEADER.GIB_STATUS_CODE String Faturanın GİB'de ki durum kodu. Detay için Fatura durum sorgulama ekranında bulunan GİB Durum Kodları başlığını inceleyiniz.
HEADER.GIB_STATUS_DESCRIPTION String Faturanın GİB'de ki durumunun kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
HEADER.RESPONSE_CODE String Ticari fatura için verilen yanıtı içeren zarfın durum kodu
HEADER.RESPONSE_DESC String Ticari fatura için verilen yanıtı içeren zarfın durum açıklaması
HEADER.CDATE String Faturanın sistemimize ulaştığı tarih
HEADER.ENVELOPE_IDENTIFIER String Faturanın zarf IDsi.
INVOICE.CONTENT String Faturanın içeriği. Eğer COMPRESSED elemanı N olarak gönderilmişse XML dosya, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş XML dosyası dönülür.

Fatura Görsel Okuma (GetInvoiceWithType)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Bu serviste COMPRESSED elemanı dikkate alınmamaktadır. Talep edilen formatta sıkıştırılmış/ziplenmiş olarak dönülecektir. İstemciye çektikten sonra unzip edilmelidir.
SEARCH_KEY.ID String Hayır Fatura numarası ile fatura okumak için kullanılabilir. örnek FYA2018000000001 UUID elamanı gönderilmemişse zorunludur.
SEARCH_KEY.UUID String Hayır Fatura Evrensel Tekil Tanımlama Numarası (ETTN) ile fatura okumak için kullanılabilir. ID elamanı gönderilmemişse zorunludur.
SEARCH_KEY.TYPE String Evet Faturanın çekilmek istenilen tipi: PDF, HTML, XML olabilir.
SEARCH_KEY.DIRECTION String Evet Belge yönü. Gelen veya Giden faturaları çekmek için kullanılabilir. Gelen faturaları çekmek için IN, giden faturaları çekmek için OUT değeri gönderilebilir. Varsayılan değer IN olduğu için eğer parametre gönderilmezse sadece gelen faturalar dönülecektir. Gönderilebilecek değerler: IN, OUT
HEADER_ONLY String Evet Fatura görseli çekmek için N gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE ComplexType Sorgu kriterine uyan fatura(lar)ın listesi. Fatura numarası ID, fatura evrensel tekil tanımlama numarası UUID ve e-fatura sisteminde tanımlı tekil numara değeri LIST_ID attribute içerisinde dönülmektedir.
INVOICE.HEADER ComplexType Faturaya ait özet bilgiler içermektedir.
HEADER.SENDER String Faturayı gönderen firma VKN'si.
HEADER.RECEIVER String Faturayı alan firma VKN'si.
HEADER.SUPPLIER String Faturayı gönderen firma ünvanı.
HEADER.CUSTOMER String Faturayı alan firma ünvanı.
HEADER.ISSUE_DATE String Fatura tarihi.
HEADER.PAYABLE_AMOUNT String Toplam ödenecek tutar.
HEADER.FROM String Faturayı gönderen Gönderici Birim (GB)
HEADER.TO String Faturanın geldiği Posta Kutusu (PK)
HEADER.PROFILEID String Faturanın senaryosu. TEMELFATURA, TICARIFATURA,IHRACATFATURA, YOLCUBERABER değerleri olabilir.
HEADER.INVOICE_TYPE_CODE String Faturanın tipi. SATIS, IADE, ISTISNA, IHRACAT, OZELMATRAH, TEVKIFAT, IHRACKAYITLI değerleri olabilir.
HEADER.STATUS String Faturanın durumu. Detay için Fatura Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Fatura durum açıklaması. Detay için Fatura Durumları başlığını inceleyiniz.
HEADER.GIB_STATUS_CODE String Faturanın GİB'de ki durum kodu. Detay için GİB Durum Kodları başlığını inceleyiniz.
HEADER.GIB_STATUS_DESCRIPTION String Faturanın GİB'de ki durumunun kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
HEADER.RESPONSE_CODE String Ticari fatura için verilen yanıtı içeren zarfın durum kodu
HEADER.RESPONSE_DESC String Ticari fatura için verilen yanıtı içeren zarfın durum açıklaması
HEADER.CDATE String Faturanın sistemimize ulaştığı tarih
HEADER.ENVELOPE_IDENTIFIER String Faturanın zarf IDsi.
INVOICE.CONTENT Base64Binary Faturanın talep edilen formatta (PDF, HTML) sıkıştırılmış/ziplenmiş dosyası dönülür. İstemciye çektikten sonra unzip edilmeldir.

Fatura Okundu İşaretleme (MarkInvoice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
MARK.value String Hayır Başarı ile alındıysa READ gönderilmeli. Daha önce alındı olarak işaretlenen bir faturayı tekrar çekmeden önce UNREAD olarak gönderilebilir.
INVOICE.ID String Hayır İşaretlenecek faturanın numarası. Örnek: FYA2018000000001
INVOICE.UUID String Hayır İşaretlenecek faturanın ETTNsi. GUID formatında olmalı.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Fatura Durum Sorgulama (GetInvoiceStatus)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
INVOICE.ID String Hayır Durumu sorgulanacak faturanın 16 hane fatura numarası. örnek: FYA2018000000001 Eğer UUID elemanı gönderilmezse zorunludur.
INVOICE.UUID String Hayır Durumu sorgulanacak faturanın GUID formatında Evrensel Tekil Tanımlama Numarası. Eğer ID elemanı gönderilmezse zorunludur.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE_STATUS ComplexType Sorgu kriterine uyan fatura(lar)ın listesi. Fatura numarası ID, fatura evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
INVOICE_STATUS.STATUS String Faturanın e-fatura sisteminde ki durumu. Detay için Fatura Durumları başlığını inceleyiniz.
INVOICE_STATUS.STATUS_DESCRIPTION String Fatura durum açıklaması. Detay için Fatura Durumları başlığını inceleyiniz.
INVOICE_STATUS.GIB_STATUS_CODE String Faturanın GİB'de ki durum kodu. Faturanın GİB'de ki durumu e-fatura sistemi tarafından henüz sorgulanmadıysa eleman dönülmez. Detay için GİB Durum Kodları başlığını inceleyiniz.
INVOICE_STATUS.GIB_STATUS_DESCRIPTION String Faturanın GİB'de ki durumunun kodunun açıklaması. Faturanın GİB'de ki durumu e-fatura sistemi tarafından henüz sorgulanmadıysa eleman dönülmez. Detay için GİB Durum Kodları başlığını inceleyiniz.
INVOICE_STATUS.RESPONSE_CODE String Ticari fatura için verilen yanıtı içeren zarfın durum kodu. Eğer faturanın senaryosu TICARIFATURA değilse eleman dönülmez.
INVOICE_STATUS.RESPONSE_DESC String Ticari fatura için verilen yanıtı içeren zarfın durum açıklaması. Eğer faturanın senaryosu TICARIFATURA değilse eleman dönülmez.
INVOICE_STATUS.GTB_REFNO String Gümrük Sistemine alınan ihracat faturaları için, Gümrük ve Ticaret Bakanlığı tarafından üretilen 23 haneli bir referans numarasıdır. 23 haneli bir referans numarası ile belge tarihi yükümlü tarafından gümrük beyannamesinin 44 no’lu kutusunda “Belge Referans No” ve “Belge Tarihi” alanlarında beyan edilecektir. İhracat faturası değilse dönülmez.
INVOICE_STATUS.GTB_GCB_TESCILNO String Gümrük İdaresi fiili ihracatı tamamlanan eşyanın kabul uygulama yanıtı ile ilgilisine dönülen Gümrük Çıkış Belgesi (GÇB) tescil numarasıdır. İhracat faturası değilse dönülmez.
INVOICE_STATUS.GTB_FIILI_IHRACAT_TARIHI String Gümrük İdaresi tarafından fiili ihracatı tamamlanan ihracat faturaları için döndüğü fiili ihraç tarihi bilgisidir. Gümrük İdaresi bu bilgiyi fiili ihracat (intaç) gerçekleştiğinde dönecektir. Eğer ihracat faturası için bu alan dönülmemişse hala fiili ihracat yapılmamıştır. İhracat faturası değilse dönülmez.
INVOICE_STATUS.CDATE String Faturanın e-fatura sistemine yüklendiği/ulaştığı tarih
INVOICE_STATUS.DIRECTION String Gelen fatura için IN, Gönderilen fatura için OUT
INVOICE_STATUS.ENVELOPE_IDENTIFIER String Faturanın zarf IDsi. Taslak faturalar için eleman dönülmez.

Giden Fatura Durumları

DURUM KODU
DURUM AÇIKLAMASI
STATUS_SUBSTATUS ALINACAK AKSİYON
100 DURUM HENÜZ GÜNCELLENMEDİ LOAD_SUCCEED Durum sorgulanması yapmaya devam edilecek
101 KUYRUĞA EKLENDİ LOAD_SUCCEED Fatura Yükleme - Başarılı
102 TASLAK İŞLENİYOR LOAD_PROCESSING Belge İşleniyor
103 PAKETLENİYOR PACKAGE_PROCESSING Belge GİB'e Göndermek İçin Zarflanıyor
104 PAKETLENDİ PACKAGE_SUCCEED Belge Zarflandı GİB'e Gönderilecek
105 PAKETLEME HATASI PACKAGE_FAILED Belge Zarflanırken Hata Oluştu. Tekrar Denenecektir.
106 İMZALANIYOR SIGN_PROCESSING Belge İmzalanıyor
107 İMZALANDI" SIGN_SUCCEED Belge İmzalandı
109 GİB'DEN YANIT BEKLİYOR SEND_WAIT_GIB_RESPONSE Belge GİB'e Gönderildi
110 ALICIDAN YANIT BEKLİYOR SEND_WAIT_SYSTEM_RESPONSE Belge Alıcıya Başarıyla Ulaştırıldı. Sistem Yanıtı Bekliyor.
111 ALICIDAN ONAY BEKLİYOR SEND_WAIT_APPLICATION_RESPONSE Ticari Belge Alıcıdan Onay Bekliyor
112 KABUL EDİLDİ ACCEPTED_SUCCEED Belge Kabul Edildi
117 RET EDİLDİ REJECTED_WAIT_SYSTEM_RESPONSE Red alıcıdan yanıt bekliyor
120 RET EDİLDİ REJECTED_SUCCEED Belge Ret Edildi
134 ZAMAN AŞIMI OLUŞTU SEND_TIMEOUT Belge GİB'e Gönderilirken Zaman Aşımına Uğradı.
135 GÖNDERİLİYOR SEND_PROCESSING Belge GİB'e Gönderiliyor
136 GÖNDERME İŞLEMİ BAŞARISIZ SEND_FAILED Belge GİB'e Gönderilirken Hata Oluştu
137 GÖNDERİLDİ SEND_SUCCEED Belge GİB'e Gönderildi
139 OTOMATİK GÖNDERİM HATASI AUTO_FAILED Otomatik Gönderim Hatası
140 FATURA NUMARASI ATANDI LOAD_ID_ASSIGNED Belge Numarası Atandı
141 FATURA NUMARASI ATANMA BEKLENİYOR LOAD_WAIT_ID_ASSIGNED Belge Numarası Atandı

Gelen Fatura Durumları

DURUM KODU
DURUM AÇIKLAMASI
STATUS_SUBSTATUS ALINACAK AKSİYON
133 ALINDI RECEIVE_SUCCEED Temel fatura alındı
132 ALINDI RECEIVE_WAIT_APPLICATION_RESPONSE Ticari Fatura yanıt bekliyor
134 ZAMAN AŞIMI OLUŞTU ACCEPT/REJECT_TIMEOUT İŞLEM SİSTEM TARAFINDAN OTOMATİK TEKRARLANCAKTIR
122 KABUL EDİLDİ ACCEPTED_SUCCEED
123 KABUL İŞLENİYOR ACCEPTED_PROCESSING
124 KABUL GİBDEN YANIT BEKLİYOR ACCEPT_GIB_RESPONSE
125 KABUL ALICIDAN YANIT BEKLİYOR ACCEPT_WAIT_SYSTEM_RESPONSE
126 KABUL İŞLEMİ BAŞARISIZ ACCEPT_FAILED
127 RED ALICIDAN YANIT BEKLİYOR REJECT_WAIT_SYSTEM_RESPONSE
128 RED GİBDE YANIT BEKLİYOR REJECT_WAIT_GIB_RESPONSE
129 RED İŞLENİYOR REJECT_PROCESSING
130 REDDEDİLDİ REJECT_SUCCEED
131 RED İŞLEMİ BAŞARISIZ FAILED

GİB Durum Kodları

Kod Açıklama Alınacak Aksiyon
1000 ZARF KUYRUĞA EKLENDİ Durum kodunun güncellenmesi beklenmelidir.
1100 ZARF İŞLENİYOR Durum kodunun güncellenmesi beklenmelidir.
1110 ZIP DOSYASI DEĞİL Belge yeniden gönderilmeli
1111 ZARF ID UZUNLUĞU GEÇERSİZ Belge yeniden gönderilmeli
1120 ZARF ARŞİVDEN KOPYALANAMADI Belge yeniden gönderilmeli
1130 ZIP AÇILAMADI Belge yeniden gönderilmeli
1131 ZIP BİR DOSYA İÇERMELİ Belge yeniden gönderilmeli
1132 XML DOSYASI DEĞİL Belge yeniden gönderilmeli
1133 ZARF ID VE XML DOSYASININ ADI AYNI OLMALI Belge yeniden gönderilmeli
1140 DOKUMAN AYRIŞTIRILAMADI Belge yeniden gönderilmeli
1141 ZARF ID YOK Belge yeniden gönderilmeli
1142 ZARF ID VE ZIP DOSYASI ADI AYNI OLMALI Belge yeniden gönderilmeli
1143 GEÇERSİZ VERSİYON Belge yeniden gönderilmeli
1150 SCHEMATRON KONTROL SONUCU HATALI Belge yeniden gönderilmeli
1160 XML SEMA KONTROLÜNDEN GEÇEMEDİ Belge yeniden gönderilmeli
1161 İMZA SAHİBİ TCKN VKN ALINAMADI Belge yeniden gönderilmeli
1162 İMZA KAYDEDİLEMEDİ Belge yeniden gönderilmeli
1163 GÖNDERİLEN ZARF SİSTEMDE DAHA ÖNCE KAYITLI OLAN BİR FATURAYI İÇERMEKTEDİR Belge yeniden gönderilmeli
1170 YETKİ KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1171 GÖNDERİCİ BİRİM YETKİSİ YOK Belge yeniden gönderilmeli
1172 POSTA KUTUSU YETKİSİ YOK Belge yeniden gönderilmeli
1175 İMZA YETKİSİ KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1176 İMZA SAHİBİ YETKİSİZ Belge yeniden gönderilmeli
1177 GEÇERSİZ İMZA Belge yeniden gönderilmeli
1180 ADRES KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1181 ADRES BULUNAMADI Belge yeniden gönderilmeli
1182 KULLANICI EKLENEMEDİ Belge yeniden gönderilmeli
1183 KULLANICI SİLİNEMEDİ Belge yeniden gönderilmeli
1190 SİSTEM YANITI HAZIRLANAMADI Belge yeniden gönderilmeli
1195 SİSTEM HATASI Belge yeniden gönderilmeli
1200 ZARF BAŞARIYLA İŞLENDİ Özel entegratörden gönderilen Belgede sorun tespit edilmedi. Sonra ki aşamalara geçilecek.
1210 DOKUMAN BULUNAN ADRESE GÖNDERİLEMEDİ GİB’in tekrar gönderme denemesi sonlandıktan sonra, 1215 durum kodu alınır ise belgeler yeniden gönderilmeli
1215 DOKÜMAN GÖNDERİMİ BAŞARISIZ. TEKRAR GÖNDERME SONLANDI Belge yeniden gönderilmeli
1220 HEDEFTEN SİSTEM YANITI GELMEDİ Bu durum kodundan sonra 1230 HEDEFTEN SİSTEM YANITI BAŞARISIZ GELDİ durum kodu alınır ise Belge yeniden gönderilmelidir.
1230 HEDEFTEN SİSTEM YANITI BAŞARISIZ GELDİ Belge yeniden gönderilmeli
1300 BAŞARIYLA TAMAMLANDI Başarılı olan Belge aynı numara ile gönderilemez.

Toplu Fatura Durum Sorgulama (GetInvoiceStatusAll)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
UUID String Evet Durumu sorgulanacak faturanın GUID formatında Evrensel Tekil Tanımlama Numarası. Birden fazla fatura durum sorgulamak için INVOICE elementini çoklayınız.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE_STATUS ComplexType Sorgu kriterine uyan fatura(lar)ın listesi. Fatura numarası ID, fatura evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
INVOICE_STATUS.STATUS String Faturanın e-fatura sisteminde ki durumu. Detay için Fatura Durumları başlığını inceleyiniz.
INVOICE_STATUS.STATUS_DESCRIPTION String Fatura durum açıklaması. Detay için Fatura Durumları başlığını inceleyiniz.
INVOICE_STATUS.GIB_STATUS_CODE String Faturanın GİB'de ki durum kodu. Faturanın GİB'de ki durumu e-fatura sistemi tarafından henüz sorgulanmadıysa eleman dönülmez. Detay için GİB Durum Kodları başlığını inceleyiniz.
INVOICE_STATUS.GIB_STATUS_DESCRIPTION String Faturanın GİB'de ki durumunun kodunun açıklaması. Faturanın GİB'de ki durumu e-fatura sistemi tarafından henüz sorgulanmadıysa eleman dönülmez. Detay için GİB Durum Kodları başlığını inceleyiniz.
INVOICE_STATUS.RESPONSE_CODE String Ticari fatura için verilen yanıtı içeren zarfın durum kodu. Eğer faturanın senaryosu TICARIFATURA değilse eleman dönülmez.
INVOICE_STATUS.RESPONSE_DESC String Ticari fatura için verilen yanıtı içeren zarfın durum açıklaması. Eğer faturanın senaryosu TICARIFATURA değilse eleman dönülmez.
INVOICE_STATUS.GTB_REFNO String Gümrük Sistemine alınan ihracat faturaları için, Gümrük ve Ticaret Bakanlığı tarafından üretilen 23 haneli bir referans numarasıdır. 23 haneli bir referans numarası ile belge tarihi yükümlü tarafından gümrük beyannamesinin 44 no’lu kutusunda “Belge Referans No” ve “Belge Tarihi” alanlarında beyan edilecektir. İhracat faturası değilse dönülmez.
INVOICE_STATUS.GTB_GCB_TESCILNO String Gümrük İdaresi fiili ihracatı tamamlanan eşyanın kabul uygulama yanıtı ile ilgilisine dönülen Gümrük Çıkış Belgesi (GÇB) tescil numarasıdır. İhracat faturası değilse dönülmez.
INVOICE_STATUS.GTB_FIILI_IHRACAT_TARIHI String Gümrük İdaresi tarafından fiili ihracatı tamamlanan ihracat faturaları için döndüğü fiili ihraç tarihi bilgisidir. Gümrük İdaresi bu bilgiyi fiili ihracat (intaç) gerçekleştiğinde dönecektir. Eğer ihracat faturası için bu alan dönülmemişse hala fiili ihracat yapılmamıştır. İhracat faturası değilse dönülmez.
INVOICE_STATUS.CDATE String Faturanın e-fatura sistemine yüklendiği/ulaştığı tarih
INVOICE_STATUS.DIRECTION String Gelen fatura için IN, Gönderilen fatura için OUT
INVOICE_STATUS.ENVELOPE_IDENTIFIER String Faturanın zarf IDsi. Taslak faturalar için eleman dönülmez.

Giden Fatura Durumları

DURUM KODU
DURUM AÇIKLAMASI
STATUS_SUBSTATUS ALINACAK AKSİYON
100 DURUM HENÜZ GÜNCELLENMEDİ LOAD_SUCCEED Durum sorgulanması yapmaya devam edilecek
101 KUYRUĞA EKLENDİ LOAD_SUCCEED Fatura Yükleme - Başarılı
102 TASLAK İŞLENİYOR LOAD_PROCESSING Belge İşleniyor
103 PAKETLENİYOR PACKAGE_PROCESSING Belge GİB'e Göndermek İçin Zarflanıyor
104 PAKETLENDİ PACKAGE_SUCCEED Belge Zarflandı GİB'e Gönderilecek
105 PAKETLEME HATASI PACKAGE_FAILED Belge Zarflanırken Hata Oluştu. Tekrar Denenecektir.
106 İMZALANIYOR SIGN_PROCESSING Belge İmzalanıyor
107 İMZALANDI" SIGN_SUCCEED Belge İmzalandı
109 GİB'DEN YANIT BEKLİYOR SEND_WAIT_GIB_RESPONSE Belge GİB'e Gönderildi
110 ALICIDAN YANIT BEKLİYOR SEND_WAIT_SYSTEM_RESPONSE Belge Alıcıya Başarıyla Ulaştırıldı. Sistem Yanıtı Bekliyor.
111 ALICIDAN ONAY BEKLİYOR SEND_WAIT_APPLICATION_RESPONSE Ticari Belge Alıcıdan Onay Bekliyor
112 KABUL EDİLDİ ACCEPTED_SUCCEED Belge Kabul Edildi
120 RET EDİLDİ REJECTED_SUCCEED Belge Ret Edildi
134 ZAMAN AŞIMI OLUŞTU SEND_TIMEOUT Belge GİB'e Gönderilirken Zaman Aşımına Uğradı.
135 GÖNDERİLİYOR SEND_PROCESSING Belge GİB'e Gönderiliyor
136 GÖNDERME İŞLEMİ BAŞARISIZ SEND_FAILED Belge GİB'e Gönderilirken Hata Oluştu
137 GÖNDERİLDİ SEND_SUCCEED Belge GİB'e Gönderildi
139 OTOMATİK GÖNDERİM HATASI AUTO_FAILED Otomatik Gönderim Hatası
140 FATURA NUMARASI ATANDI LOAD_ID_ASSIGNED Belge Numarası Atandı
141 FATURA NUMARASI ATANMA BEKLENİYOR LOAD_WAIT_ID_ASSIGNED Belge Numarası Atandı

Gelen Fatura Durumları

DURUM KODU
DURUM AÇIKLAMASI
STATUS_SUBSTATUS ALINACAK AKSİYON
133 ALINDI RECEIVE_SUCCEED
134 ZAMAN AŞIMI OLUŞTU ACCEPT/REJECT_TIMEOUT - YANLIŞ
122 KABUL EDİLDİ ACCEPTED_SUCCEED
123 KABUL İŞLENİYOR ACCEPTED_PROCESSING
124 KABUL GİBDEN YANIT BEKLİYOR ACCEPT_GIB_RESPONSE
125 KABUL ALICIDAN YANIT BEKLİYOR ACCEPT_WAIT_SYSTEM_RESPONSE
126 KABUL İŞLEMİ BAŞARISIZ ACCEPT_FAILED
127 RED ALICIDAN YANIT BEKLİYOR REJECT_WAIT_SYSTEM_RESPONSE
128 RED GİBDE YANIT BEKLİYOR REJECT_WAIT_GIB_RESPONSE
129 RED İŞLENİYOR REJECT_PROCESSING
130 REDDEDİLDİ REJECT_SUCCEED
131 RED İŞLEMİ BAŞARISIZ FAILED

GİB Durum Kodları

Kod Açıklama Alınacak Aksiyon
1000 ZARF KUYRUĞA EKLENDİ Durum kodunun güncellenmesi beklenmelidir.
1100 ZARF İŞLENİYOR Durum kodunun güncellenmesi beklenmelidir.
1110 ZIP DOSYASI DEĞİL Belge yeniden gönderilmeli
1111 ZARF ID UZUNLUĞU GEÇERSİZ Belge yeniden gönderilmeli
1120 ZARF ARŞİVDEN KOPYALANAMADI Belge yeniden gönderilmeli
1130 ZIP AÇILAMADI Belge yeniden gönderilmeli
1131 ZIP BİR DOSYA İÇERMELİ Belge yeniden gönderilmeli
1132 XML DOSYASI DEĞİL Belge yeniden gönderilmeli
1133 ZARF ID VE XML DOSYASININ ADI AYNI OLMALI Belge yeniden gönderilmeli
1140 DOKUMAN AYRIŞTIRILAMADI Belge yeniden gönderilmeli
1141 ZARF ID YOK Belge yeniden gönderilmeli
1142 ZARF ID VE ZIP DOSYASI ADI AYNI OLMALI Belge yeniden gönderilmeli
1143 GEÇERSİZ VERSİYON Belge yeniden gönderilmeli
1150 SCHEMATRON KONTROL SONUCU HATALI Belge yeniden gönderilmeli
1160 XML SEMA KONTROLÜNDEN GEÇEMEDİ Belge yeniden gönderilmeli
1161 İMZA SAHİBİ TCKN VKN ALINAMADI Belge yeniden gönderilmeli
1162 İMZA KAYDEDİLEMEDİ Belge yeniden gönderilmeli
1163 GÖNDERİLEN ZARF SİSTEMDE DAHA ÖNCE KAYITLI OLAN BİR FATURAYI İÇERMEKTEDİR Belge yeniden gönderilmeli
1170 YETKİ KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1171 GÖNDERİCİ BİRİM YETKİSİ YOK Belge yeniden gönderilmeli
1172 POSTA KUTUSU YETKİSİ YOK Belge yeniden gönderilmeli
1175 İMZA YETKİSİ KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1176 İMZA SAHİBİ YETKİSİZ Belge yeniden gönderilmeli
1177 GEÇERSİZ İMZA Belge yeniden gönderilmeli
1180 ADRES KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1181 ADRES BULUNAMADI Belge yeniden gönderilmeli
1182 KULLANICI EKLENEMEDİ Belge yeniden gönderilmeli
1183 KULLANICI SİLİNEMEDİ Belge yeniden gönderilmeli
1190 SİSTEM YANITI HAZIRLANAMADI Belge yeniden gönderilmeli
1195 SİSTEM HATASI Belge yeniden gönderilmeli
1200 ZARF BAŞARIYLA İŞLENDİ Özel entegratörden gönderilen Belgede sorun tespit edilmedi. Sonra ki aşamalara geçilecek.
1210 DOKUMAN BULUNAN ADRESE GÖNDERİLEMEDİ GİB’in tekrar gönderme denemesi sonlandıktan sonra, 1215 durum kodu alınır ise belgeler yeniden gönderilmeli
1215 DOKÜMAN GÖNDERİMİ BAŞARISIZ. TEKRAR GÖNDERME SONLANDI Belge yeniden gönderilmeli
1220 HEDEFTEN SİSTEM YANITI GELMEDİ Bu durum kodundan sonra 1230 HEDEFTEN SİSTEM YANITI BAŞARISIZ GELDİ durum kodu alınır ise Belge yeniden gönderilmelidir.
1230 HEDEFTEN SİSTEM YANITI BAŞARISIZ GELDİ Belge yeniden gönderilmeli
1300 BAŞARIYLA TAMAMLANDI Başarılı olan Belge aynı numara ile gönderilemez.

Uygulama Yanıtı Gönderme (SendInvoiceResponseWithServerSign)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
STATUS String Evet Faturaya verilecek yanıt. KABUL veya RED değeri alabilir.
INVOICE ComplexType Evet Yanıt gönderilecek fatura listesi
DESCRIPTION String Evet Yanıt ile beraber gönderilecek mesaj. Ret edilen faturalar için Red Sebebi bu alana yazılabilir. STATUS KABUL ise ve bu alan gönderilmezse Fatura kabul edildi, STATUS RED ise Reddedildi mesajı varsayılan olarak eklenecektir.

Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String İşlem başarılı ise 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.


Servisten Dönebilecek Hatalar

Hata Açıklaması Açıklama
Daha önce yanıtlanmış bir fatura için tekrar yanıt gönderilemez! Fatura UUID:xxxxxxx Bir faturaya en fazla 1 defa yanıt gönderilebilmektedir. Bundan dolayı yanıt gönderilmiş faturalara tekrar yanıt gönderilmesi istemci tarafında kısıtlanmalıdır.
Fatura ID : FYA201800000001 sistemde bulunamadı! E-Fatura sisteminde gelen fatura kutusunda bulunmayan bir faturaya uygulama yanıtı gönderme yapıldığı zaman dönülmektedir. Özellikle birden fazla hesabı olan firmalarda, erişim yetkisi olan bir kullanıcı tarafından istemciye indirilen bir faturaya, faturaya erişim yetkisi olmayan bir kullanıcı tarafından yanıt gönderilince karşılaşılmaktadır.
Uygulama yanıtı 8 gün geciktiği için cevap gönderilemez Ticari fatura özel entegratör sistemine ulaştıktan sonra 8 gün içerisinde yanıtlanmalıdır. İstemci 8 günü geçen faturalar için kontrol eklemelidir. 8 günü hesaplamak için GetInvoice servisinde fatura için dönülen CDATE alanına 8 gün eklenebilir.
Fatura durumu yanıtlama için uygun olmadıgından işlem sonlandı! Fatura UUID:XXX-XXX-, STATUS:XXXXX-XXXXX Uygulama yanıtı gönderilmiş ve hala süreci tamamlanmamış bir faturaya tekrar yanıt gönderildiğinde dönülen hatadır.

E-Arşiv Fatura Webservisi

E-Fatura mükellefi olmayan firma veya nihai tüketiciye düzenlenen faturaların özel entegratör sistemine gönderilmesi ve raporlamasını sağlayan webservis uygulamasıdır.

GİB Dokümanları

Doküman Açıklama İndir
UBL-TR Fatura UBL-TR v1.2 (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan fatura belgesinde geçen elemanlara ait XSD, tanımlama, kullanım şekilleri, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Ortak Elemanlar UBL-TR (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan belgelerde geçmesi muhtemel elemanlara ait (ortak elemanlar örneğin: Adres, Parasal Toplamlar, Taraf gibi) XSD, açıklama, kullanım şartları, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Kod Listeleri UBL-TR kapsamında kullanılan Kodlama Sistemleri ve Kimlik Şemaları hakkında bilgi vermek amacı ile hazırlanmıştır.
Gümrük İşlemleri Kılavuzu Elektronik Fatura Uygulamasında yolcu beraberi eşya ihracı ve mal ihracı faturalarını e-fatura sistemine entegre edecek ve uygulamaya ilişkin yazılım geliştireceklerin teknik konularda ihtiyaç duyabilecekleri bilgileri vermek amacıyla hazırlanmıştır.
İhracat Faturası Ek Alanlar İhracat faturalarında eklenmesi zorunlu ve isteğe bağlı alanların açıklamak için hazırlanmıştır.
SGK E-Fatura Teknik Kılavuzu Elektronik Fatura Uygulamasında Sosyal Güvenlik Kurumuna (SGK) düzenlenecek faturaların e-fatura sistemine entegre edecek uygulamaya ilişkin yazılım geliştireceklerin teknik konularda ihtiyaç duyabilecekleri bilgileri vermek amacıyla hazırlanmıştır.
Kamu E-Fatura Teknik Kılavuzu e-Fatura Uygulamasına kayıtlı olan vergi mükelleflerimiz, 5018 sayılı Kamu Mali Yönetimi ve Kontrol Kanunu ile belirlenmiş merkezi yönetim kapsamında yer alan ve Muhasebat ve Mali Kontrol Genel Müdürlüğü (MGM) tarafından geliştirilen Yeni Harcama Yönetim Sistemini (MYS) kullanan kamu idareleri ve bunlara bağlı harcama birimleri adına, 1.3.2019 tarihinden itibaren GİB e-Fatura Uygulaması aracılığı ile e-Fatura düzenleyip gönderebileceklerdir. Teknik kılavuz hazırlanmıştır.
Hal Tipi Fatura Kılavuzu Hal Komisyoncularının düzenlediği KOMİSYONCU veya SATIŞ faturalarının işleyişinin açıklandığı teknik kılavuzdur.

UBL-Fatura Örnekleri

E-Fatura ve E-Arşiv Fatura sistemi üzerinden düzenlebilecek ve gönderilebilecek fatura senaryoları ve örnek fatura XML dosyası aşağıda listelenmiştir.

Fatura Senaryosu Açıklama XML HTML
Temel Satış Faturası Alıcısı tarafından elektronik ortamda kabul veya reddedilemeyen fatura tipidir.
Ticari Satış Faturası Alıcısı tarafından elektronik ortamda kabul veya reddedilebilen fatura tipidir.
İade Faturası Alınan bir fatura üzerinde ki yanlış tutar veya eksik bilgi sebebi ile düzenlenen fatura tipidir. İade faturası TEMELFATURA olarak gönderilmesi zorunludur.
Farklı KDV Oranlarına Sahip Fatura Fatura satırında farklı KDV oranlarının bulunduğu fatura örneğidir. Her satırda farklı KDV oranı vardır.
0 KDV Fatura Fatura satırında KDV oranı 0 olan satış faturası örneğidir. KDV 0 olduğu durumlarda muafiyet sebebi belirtilmelidir.
Dövizli Satış Faturası Fatura para birimi TL dışında farklı bir para birimi ile düzenlenen fatura örneğidir. Faturanın içerisinde tutarlar döviz cinsindendir. TL karşlıkları XML içerisinde bulunmaz. TL karşılıkları görsel üzerinde tutar ile kur çarpılarak gösterilir.
Bedelsiz (%100 İskontolu) Satış Faturası Promosyon, Eşantiyon veya Numune Ürün Teslimlerinde bedelsiz düzenlenen fatura örneğidir. Bu faturalarda KDV 0 hesaplandığı için muafiyet sebebi belirtilmelidir. Bu faturaların muafiyet kodu 351 olur. Muafiyet sebebi ise müşteri tarafından girilebilir.
Satırda Çoklu İskontolu Satış Faturası Bir fatura satırında birden fazla iskonto içeren fatura örneğidir.
İstisna Faturası İstisna Faturası
Özel Mathrah Faturası Özel Matrah Faturası
Tevkifat Faturası Tevkifat Faturası
İhraç Kayıtlı Fatura İhraç Kayıtlı Fatura
İhracat Faturası İhracat Faturası
Yolcu Beraberi (Taxfree) Yolcu Beraberi (Taxfree)
SGK Faturası SGK Faturası TEMELFATURA senaryosunda gönderilmek zorundadır.
Kamu Faturası Kamu kurum ve kuruluşlarına düzenlenen fatura örneğidir. TEMELFATURA senaryosunda göndermek zorundadır.
Hal Komisyon Faturası Hal Komisyoncularının komisyon kazançları için düzenledikleri fatura tipidir. Faturanın HKS senaryosunda gönderilmesi zorunludur.
Hal Satış Faturası Hal Komisyoncularının mal üretici veya tüccarın malını satışında düzenledikleri fatura tipidir. Satış fatura tipinde var olan özelliklerinin yanında Mal Sahibi Bilgileri (mal sahibi Ad Soyad /Unvan ve Mal Sahibi VKN/TCKN olmak üzere iki ayrı alan)ve künye numarası sütunlarının olması gerekmektedir. Künye no sütunu zorunlu alan olup 19 Haneden az veya çok girilememelidir.
Gelir Vergisi(GV) Stopajlı Fatura Gelir vergisi stopajı uygulanan fatura örneğidir.
Kurumlar Vergisi(KV) Stopajlı Fatura Kurumlar vergisi stopajı uygulanan fatura örneğidir.
Ek Belge İçeren Fatura Faturanın ekinde belge gönderildiği durumlarda düzenlenecek fatura örneğidir.
E-Arşiv Fatura - İnternet Internet üzerine yapılan satış için düzenlenen fatura tipidir. Bu faturalar alıcısına elektronik ortamda iletilmek zorundadır. Bu faturalar diğer satış faturalarından farklı bir seriden gönderilmeldir.
E-Arşiv Fatura - Normal Internet üzerine yapılan satış dışında düzenlenen fatura tipidir. Bu faturalar alıcısına elektronik ortamda iletilebileceği gibi kağıt olarakta teslim edilebilir.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Dikkat Edilecek Hususlar

Uygulamanızı tasarlarken aşağıda ki bilgiler faydalı olacaktır:

E-Arşiv Entegrasyon Testleri

Test Test Açıklama
Oturum Açma
Nihai Tüketiciye Fatura Gönderme
Firmaya Fatura Gönderme
Satış Faturası Gönderme
İade Faturası Gönderme
Tevkifatlı Fatura Gönderme
Alıcısına Kağıt Ortamda Teslim Edilecek Fatura Gönderme
Alıcısına Kağıt Ortamda Teslim Edilecek ve Ayrıca Elektronik Ortamda İletilecek Fatura Gönderme
Alıcısına Elektronik Ortamda İletilecek Fatura Gönderme
İnternet Üzerinden Yapılan Satış İçin Fatura Gönderme
İrsaliyeli Fatura Gönderme
Raporlanmadan Önce Fatura İptal Etme
Raporlandıktan Sonra Fatura İptal Etme
Hatalı Düzenlenmiş Faturayı Tekrar Yüklemek Üzere İptal Etme
Faturayı Tekrar E-Posta Olarak İletme Talebi Gönderme
İmzalı Fatura Çekme
Fatura Görselini Çekme
Bir Faturanın Durumunu Sorgulama
Birden Fazla Faturanın Durumunu Sorgulama
Rapor Listesi Çekme
Rapor İçeriği Çekme

İstemci (client) Örnek Projeler

Webservice entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-Arşiv Fatura Gönderme (WriteToArchieveExtended)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir.
INVOICE_PROPERTIES.EARSIV_FLAG String Evet E-Arşiv fatura için Y olmalıdır.
INVOICE_PROPERTIES.EARSIV_PROPERTIES ComplexType Evet E-Arşiv faturaları için kullanılabilecek parametreler
EARSIV_PROPERTIES.EARSIV_TYPE String Evet Gönderilen e-arşiv faturasının tipi: NORMAL veya INTERNET değerleri olabilir. Internet üzerinde yapılan satış için düzenlenen faturalarında e-arşiv tipi INTERNET olmak zorundadır. Diğerleri fatura tipleri için NORMAL olacaktır.
EARSIV_PROPERTIES.SUB_STATUS String Evet Varsayılan değer NEW. E-Arşiv faturasını göndermek için NEW değeri gönderilmelidir. Taslaklara yüklemek için ise DRAFT değeri gönderilebilir.
EARSIV_PROPERTIES.SERI String Hayır Fatura numara atamasının E-Arşiv platformu üzerinde yapılması istenildiği durumlarda hangi seri ile numara atanacağını belirleyen alandır. Maksimum 3 hane alfanumerik değer içermelidir. Gönderilecek seri önce portal ekranları kullanılarak e-arşiv sisteminde tanımlanmalıdır. Tanımlanmayan seri gönderildiğinde hata dönülecektir.
EARSIV_PROPERTIES.EARSIV_EMAIL_FLAG String Hayır E-Arşiv faturasının alıcı tarafa e-posta olarak gönderilmek isteniyorsa Y değeri gönderilmelidir. Varsayılan değer N dir. DİKKAT: Eğer E-Arşiv sisteminde müşterinin e-posta gönderme hizmeti yoksa Y değeri gönderilince hata alacaktır. Bu durumda özel entegratör ile iletişime geçerek e-posta gönderim hizmetini aktiflemesi talep edilmelidir.
EARSIV_PROPERTIES.EARSIV_EMAIL String Hayır E-Arşiv faturasının iletileceği e-posta adresi. E-Posta formatında olmalıdır. EARSIV_EMAIL_FLAG= Y olarak gönderilmişse bu alan zorunludur. DİKKAT: Eğer EARSIV_EMAIL_FLAG gönderilmemiş veya N olarak gönderilmişse bu alanda ki değer veritabanına kaydedilecek ama e-posta gönderilmeyecektir.
EARSIV_PROPERTIES.EARSIV_SMS_FLAG String Hayır E-Arşiv faturasının alıcıya özel entegratör sistemi üzerinden SMS olarak göndermek isteniyorsa Y değeri gönderilmelidir. Varsayılan değer N dir. DİKKAT: Eğer E-Arşiv sisteminde müşterinin SMS gönderme hizmeti yoksa Y değeri gönderilince hata alacaktır. Bu durumda özel entegratör ile iletişime geçerek SMS gönderim hizmetini aktiflemesi talep edilmelidir.
EARSIV_PROPERTIES.SMS_PHONE_NUMBER String Hayır E-Arşiv faturasının iletileceği 10 hane telefon numarası. Format: 1234567890. Telefon numarasının başında 0 olmadığına dikkat ediniz. EARSIV_SMS_FLAG= Y olarak gönderilmişse bu alan zorunludur. DİKKAT: Eğer EARSIV_SMS_FLAG gönderilmemiş veya N olarak gönderilmişse bu alanda ki değer veritabanına kaydedilecek ama SMS gönderilmeyecektir.
EARSIV_PROPERTIES.EARCHIVE_TEST_FLAG String Hayır Kullanmayınız Kullanım sonlandırılmıştır.
EARSIV_PROPERTIES.ARCH_INVOICE_ID String Hayır Kullanmayınız Kullanım sonlandırılmıştır.
EARSIV_PROPERTIES.EARCHIVE_TEST_FLAG String Hayır Kullanmayınız Kullanım sonlandırılmıştır.
INVOICE_PROPERTIES.PDF_PROPERTIES ComplexType Hayır Kullanmayınız Kullanım sonlandırılmıştır.
INVOICE_PROPERTIES.ARCHIVE_NOTE String Hayır E-Arşiv faturalara not eklenebilecek parametredir.
INVOICE_PROPERTIES.INVOICE_CONTENT Base64Binary Evet Faturanın UBL-TR formatında ki dosyasının Base64Binary tipinde sıkıştırılmış/ziplenmiş içeriği.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Hata Kod Listesi

Hata Kodu Açıklama
-1 Beklenmedik bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.: {HATA SEBEBİ}
10001 Sistemde Beklenmedik Bir Hata Oluştu: {HATA SEBEBİ}
10002 Oturum oluşturulamadı
10003 Belge kontrolden geçemedi. Hata sebebi: {HATA SEBEBİ}
10004 Geçersiz oturum. Lütfen oturum açıp tekrar deneyiniz
10005 Hesabınızın {ÜRÜN ADI} ürün aktif degildir. Lütfen firma yetkiliniz ile görüşünüz.
10006 Yetkiniz bulunmamaktadır
10007 İstek ZİP bir dosya içermelidir
10008 Belirtilen kriterlere uygun kayıt bulunamamıştır {KRITER}
10009 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. Belge Tipi: Belge No: ve ETTN:
10010 Bir istek boyutu maksimum 5MB veya 100 adet belge içerebilir
10011 Tekrarlanan işlem: kayıt sistemde mevcuttur
10012 Kullanıcı aktif degil {kullanıcı adı}
10013 Gönderilen istek geçersizdir. Hata sebebi {HATA SEBEBİ}
10014 Geçersiz İmza Hata Sebebi: {HATA SEBEBİ}
10015 Servis desteklenmemektedir. Servis adı
10016 Müşteri sistemde aktif degildir.
10017 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10018 Yetkisiz erişim tespit edildi! {HATA SEBEBİ}

E-Arşiv Fatura Okuma (ReadFromArchive)

Özel entegratör sistemine gönderilen e-arşiv faturalarının farklı formatlarda (XML,HTML,PDF) okumasını sağlayan servistir.


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir.
INVOICE_ID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) ile fatura okumak için kullanılabilir. GUID formatında
PORTAL_DIRECTION String Evet OUT değeri gönderilecek.
EXTERNAL_ID String Hayır Kullanmayınız
PROFILE String Evet faturayı almak istediğini formattır. PDF, HTML, XML değeri alabilir. XML değeri gönderilmezse faturanın imzalı UBL-TR XML dosyası dönülecektir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE Base64Binary Faturanın talep edilen formatta ki içeriği. Eğer COMPRESSED elemanı N olarak gönderilmişse sıkıştırılmamış, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş olarak dönülür. Sonuç alındıktan sonra ilgili formatta işlem yapılabilir.
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda request return objesi dönülmez.


Servisten Dönebilecek Hatalar

Hata Açıklaması Açıklama
Fatura okunurken hata oluştu..Okumaya çalıştığınız UUID: xxxxxxx ile fatura bulunmadı… webservis isteğinde zorunlu olan bir veya birden fazla parametre eksik gönderilmiştir.

E-Arşiv Durum Sorgulama (GetEArchiveStatus)

Özel entegratör platformuna gönderilen bir veya birden çok faturanın durumunu sorgulamayı sağlayan servistir.


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
UUID String Evet Durumu sorgulanacak faturanın Evrensel Tekil Tanımlama Numarası (ETTN). GUID formatında. Birden fazla faturanın durumunu sorgulamak için bu parametre çoklanır.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE.HEADER ComplexType Kritere uyan faturaların durumlarınını içeren objedir.
HEADER.INVOICE_ID String Fatura numarası
HEADER.UUID String Faturanın Evrensel Tekil Tanımlama Numarası (ETTN)
HEADER.PROFILE String Faturanın senaryosu (EARSIVFATURA)
HEADER.INVOICE_DATE String Fatura tarihi
HEADER.STATUS String Fatura durumu kodu. Lütfen E-Arşiv Durum başlığını inceleyiniz.
HEADER.STATUS_DESC String Faturanın durum açıklaması Lütfen E-Arşiv Durum başlığını inceleyiniz.
HEADER.EMAIL_STATUS String E-Posta gönderim durum kodu. Lütfen E-Arşiv E-Posta Durum başlığını inceleyiniz.
HEADER.EMAIL_STATUS_DESC String E-Posta gönderim durum açıklaması. Lütfen E-Arşiv E-Posta Durum başlığını inceleyiniz.
HEADER.REPORT_ID String Faturanın GİB'e gönderilen rapor numarası. Raporlanmamış faturalarda parametre dönülmez.
HEADER.WEB_KEY String Fatura alıcısının e-arşiv platformu üzerinden ulaşabileceği URL.
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda request return objesi dönülmez.

E-Arşiv Durumları

Durum Kodu Durum Açıklaması
100 KUYRUĞA EKLENDİ
105 TASLAK OLARAK EKLENDİ
110 İŞLENİYOR
120 RAPORLANACAK
130 RAPORLANDI
150 RAPORLANMADAN İPTAL EDİLDİ. RAPORLANMAYACAK.
200 FATURA ID BULUNAMADI

E-Arşiv E-Posta Gönderim Durumları

Durum Kodu Durum Açıklaması
100 HENÜZ İŞLENMEDİ
110 İŞLENİYOR
120 İŞLENDİ
130 E-MAIL GÖNDERİM SONLANDI

E-Arşiv Fatura İptal (CancelEArchiveInvoice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
INVOICE_ID String Hayır İptal edilecek faturanın numarası. FYA201800000001 formatında
INVOICE_UUID String Evet İptal edilecek faturanın Evrensel Tekil Tanımlama Numarası (ETTN). GUID formatında
UPLOAD_FLAG String Hayır E-Arşiv platformunda bulunmayan bir faturayı iptal etmek için Y degeri gönderilmesi ve İptal Tarihi, Toplam Tutar ve Fatura Tarihi parametrelerinin doldurulması gerekir.
EARSIV_CANCEL_EMAIL String Hayır İptal edilecek e-arşiv faturasının alıcısına e-posta olarak bildirimi için kullanılacak parametre. Birden fazla e-posta adresini virgül , ile ayırarak gönderebilirsiniz. E-Posta formatında olmalıdır. (adsoyad@domain.com)
DELETE_FLAG String Hayır Sisteme yüklenmiş ama raporlanmamış bir e-Arşiv faturasını hiç raporlamamak için kullanılan parametredir. Y değeri gönderilirse fatura GİB'e hiç bir türlü raporlanmayacaktır. Silinen fatura müteselsilliği bozmamak için tekrar yüklenmelidir.
IPTAL_TARIHI String Hayır E-Arşiv platformunda bulunmayan bir faturanın iptal isteğinde gönderilecek. Faturanın iptal tarihi.
TOPLAM_TUTAR String Hayır İptal edilen faturanın ödenecek tutarı. E-Arşiv platformunda bulunmayan bir faturayı iptal ederken gönderilmelidir.
IPTAL_NOTU String Hayır İptal edilen faturanın iptal not değeri. E-Arşiv faturasını iptal ederken not eklemek istendiğinde gönderilmelidir.
INVOICE_CONTENT String Hayır Kullanmayınız



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner.

E-Arşiv Faturasını E-Posta Olarak Tekrar Gönderme (GetEmailEarchiveInvoice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
FATURA_UUID String Evet E-Posta olarak iletilecek faturanın Evrensel Tekil Tanımlama Numarası (ETTN). GUID formatında.
FATURA_ID String Hayır Kullanılmamaktadır
EMAIL String Evet E-Arşiv faturasının iletileceği e-posta adresi. E-Posta formatında olmalıdır. Birden fazla e-postaya göndermek için virgül (,) ile ayırarak gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda request return objesi dönülmez.

E-Arşiv Durumları

Durum Kodu Durum Açıklaması
100 KUYRUĞA EKLENDİ
105 TASLAK OLARAK EKLENDİ
110 İŞLENİYOR
115 İŞLENİYOR
120 İŞLENDİ
130 RAPORLANDI
200 FATURA ID BULUNAMADI

E-Arşiv E-Posta Gönderim Durumları

Durum Kodu Durum Açıklaması
100 HENÜZ İŞLENMEDİ
110 İŞLENİYOR
120 İŞLENDİ
130 E-MAIL GÖNDERİM SONLANDI

E-Arşiv Rapor Listesini Çekme (GetEArchiveReport)

Özel entegratör platformunda mükellefe ait oluşturulan bir döneme ait rapor listesini çekmek için kullanılır. Bu servis sadece rapor listesini döndecektir. Servisin döndüğü raporlara ait içerikleri almak için ReadEArchiveReport servisi kullanılabilir.


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
REPORT_PERIOD String Evet Rapor listesinin alınmak istenilen dönem bilgisi. Örnek: Mayıs 2018 dönemi için 201805
REPORT_STATUS_FLAG String Hayır Rapor durumunun sonuca eklenmesi isteniyorsa Y, değilse N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REPORT ComplexType Dönem için oluşturulan raporların listesi. Birden fazla rapor varsa REPORT objesi çoklu olur.
REPORT.REPORT_NO String Raporun numarası GUID formatında
REPORT.STATUS String Raporun durumu. İşlenmiş rapor durumu SUCCEED olur.
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda request return objesi dönülmez.

E-Arşiv Rapor Çekme (ReadEArchiveReport)

Mükellef için GİB'e gönderilen raporun imzalı XML dosyasını okumayı sağlayan servistir.


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
RAPOR_ID String Evet Detay/içeriği çekilecek raporun IDsi. Rapor IDsine GetEArchiveReport servisini kullanarak erişebilirsiniz.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
EARCHIVEREPORT Base64Binary GİB'e gönderilen raporun imzalı XML dosyasının sıkıştırılmış/ziplenmiş ve Base64 encode edilmiş değeri.
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda request return objesi dönülmez.

E-İrsaliye Webservisi

e-İrsaliye servisi, irsaliye gönderimini sağlayan uygulamadır.

  1. Hazırlanan E-İrsaliye XML dosyasının gönderici ve alıcısı ürünleri sevk eden ve teslim alan firma bilgilerini içerecektir. XML içerisinde GİB başkanlığına ait bilgi bulunmayacaktır.
  2. Alıcısı E-İrsaliye mükellefi olan firmaların posta kutusu etiketine gönderilecek.
  3. Alıcısı E-İrsaliye mükellefi olmayan firmalara ait belgeler Gelir İdaresi Başkanlığında açılan sanal posta kutusu etiketine gönderilecektir. 3900892152-urn:mail:irsaliyepk@gib.gov.tr
  4. Gönderilen e-irsaliye GİB sisteminde başarıyla işlendikten sonra irsaliye yazdırılıp kargoya verilebilir.

GİB Dokümanları

Doküman Açıklama İndir
UBL-TR İrsaliye UBL-TR v1.2 (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan sevk irsaliyesi belgesinde geçen elemanlara ait XSD, tanımlama, kullanım şekilleri, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR İrsaliye Yanıtı UBL-TR v1.2 (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan irsaliye Yanıtı belgesinde geçen elemanlara ait XSD, tanımlama, kullanım şekilleri, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Ortak Elemanlar UBL-TR (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan belgelerde geçmesi muhtemel elemanlara ait (ortak elemanlar örneğin: Adres, Parasal Toplamlar, Taraf gibi) XSD, açıklama, kullanım şartları, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Kod Listeleri UBL-TR kapsamında kullanılan Kodlama Sistemleri ve Kimlik Şemaları hakkında bilgi vermek amacı ile hazırlanmıştır.

UBL-İrsaliye Senaryoları

E-İrsaliye sistemi üzerinden düzenlebilecek ve gönderilebilecek e-irsaliye senaryoları ve örnek XML dosyaları aşağıda listelenmiştir.

Senaryosu Açıklama XML HTML
Temel e-İrsaliye Malların sevkiyatını sağlayan taraf e-İrsaliyeyi Malları teslim alan tarafa gönderir.
Kısmi Gönderim İçeren e-İrsaliye Malların sevkiyatını sağlayan taraf sipariş edilen malların bir kısmını gönderdiği durumlarda düzenlediği senaryodur.
Farklı Tarafların Bulunduğu e-İrsaliye Malların Sevkiyatını Sağlayan, Malları Teslim Alan, Malların Satın Alımını Sağlayan, Malları Satan ve Tüm sürecin başlamasını Sağlayan Alıcı tarafın bulunduğu e-İrsaliye Senaryosudur.

UBL-İrsaliye Yanıt Senaryoları

E-İrsaliye sistemi üzerinden gönderilebilecek e-irsaliye yanıt senaryoları ve örnek XML dosyaları aşağıda listelenmiştir.

Senaryosu Açıklama XML HTML
Bütün Sevkiyatı Kabul Eden e-İrsaliye Yanıtı Malların teslim alan tarafın bütün malları kabul ettiğini bildiren e-İrsaliye yanıt senaryosudur.
Şikayet İçeren e-İrsaliye Yanıtı e-İrsaliye'deki tüm ürünler malları alan taraf tarafından kabul edilmiştir. Fakat mallar geç gönderildiği için şikayette bulunduğu e-İrsaliye yanıt senaryosudur.
Hasarlı Ürünleri Bildiren e-İrsaliye Yanıtı Malları teslim alan tarafın gelen e-İrsaliye'deki malların ilk iki kaleminde hasarlı ürünler bulunduğunu bildiren e-İrsaliye senaryosudur.
Fazla/Eksik Ürünlerin Bildirilmesine Dair e-İrsaliye Yanıtı Malları teslim alan tarafın fazla ürünlerin iadesine ve eksik ürünlerin bildirilmesine dair düzenlediği e-İrsaliye yanıt senaryosudur.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Test Hesaplar

Test sürecinde düzenlenen faturaların/irsaliyelerin göndericisi, alıcısı ve etiketler için aşağıda ki bilgiler kullanılmalıdır.

Gönderici VKN Gönderici Etiket Alıcı VKN Alıcı Etiket
4840847211 urn:mail:defaultgb@izibiz.com.tr 4840847211 urn:mail:defaultpk@izibiz.com.tr

Dikkat Edilecek Hususlar

E-İrsaliye uygulamanızı tasarlarken aşağıda ki bilgiler faydalı olacaktır:

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login metodu ile oturum açarak session id alınacaktır. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.

  2. Kimlik Doğrulama (Authentication) Webservisinde bulunan GetGibUserList metodu ile GIB e-irsaliye mükellef listesini her 2 saatte entegrasyon sunucularından çekmenizi tavsiye ederiz. Güncel listeyi çektikten sonra cari listenizde ki firmaların e-irsaliye mükellefi olup olmadığını güncellemelisiniz.

  3. E-İrsaliyeler UBL-TR-DesptachAdvice formatında hazırlanacaktır. Her e-irsaliye içerisinde görüntülenmesini sağlayan XSLT dokümanı olmalıdır.

  4. LoadDespatchAdvice metodu ile irsaliye dosyalarının özel entegratör portalında taslak olarak yüklenmesi sağlanabilir.

  5. SendDespatchAdvice metodu ile irsaliye gönderimi yapılacak. Gönderim esnasında eğer alıcı mükellefe ait birden fazla Posta Kutusu bulunuyorsa ekranda seçilerek gönderilmesi sağlanmalı. Sadece 1 adet PK adresi varsa seçim yapılmadan gönderim sağlanabilir.

  6. GetDespatchAdviceStatus metodu ile gelen/giden irsaliyelerin durumları sorgulanacak. Nihai duruma erişene kadar belgenin durumu entegrasyon sunucularından minumum 4 saatte bir sorgulanmalıdır. Sık sorgulama yapmayınız.

  7. GetDespatchAdvice metodu ile firmaya gelen irsaliyeleri müşteri bilgisayarına aktarılır. Sisteme gelen yeni irsaliyeleri almanız gerekmektedir. Servis ile yeni gelen en fazla 100 adet belgeyi çekebilirsiniz. Eğer dönen listede 100 adet kayıt varsa yeniden GetDespatchAdvice servisi çağırılarak başka belge olup olmadığı kontrol edilmelidir. Dönen listede 100den az kayıt varsa tekrar sorgulama yapmaya gerek yoktur.

  8. MarkDespatchAdvice metodu ile başarılı şekilde teslim alınan irsaliyeler eirsaliye sisteminde okundu olarak işaretlenir. Böylece bir sonra ki GetDespatchAdvice servisi çağrılınca aynı kayıt dönülmez.

  9. Logout metodu ile kullanıcı e-fatura programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

Entegrasyon Test Senaryoları

İstemci (client) Örnek Projeler

Webservice entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-İrsaliye Gönderme (SendDespatchAdvice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. İrsaliye sıkıştırılarak/ziplenerek gönderiliyorsa COMPRESSED alanı gönderilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için mutlaka COMPRESSED eleman eklenmeli ve N değeri gönderilmelidir.
SENDER String Hayır İrsaliye gönderen tarafın vergi kimlik numarasını vkn attribute içerisine, gönderici birim etiketini alias attribute eklenmelidir. Eğer eleman gönderilmezse oturum açılan kullanıcının bağlı olduğu hesapta ki VKN ve gönderici birim etiketi kullanılacaktır. Sender elemanı gönderilmesini tavsiye ederiz.
RECEIVER String Evet E-İrsaliye mükellefi ise firmanın VKN/TCKNosunu vkn attribute içerisine, posta kutusu etiketini alias attribute içerisine eklenmelidir. Eğer E-irsaliye mükellefi değil ise GİB'de tanımlanan sanal etikete gönderileceği için vkn olarak GİB'in VKNsi (3900892152), posta kusutusu olarakta GİB'de urn:mail:irsaliyepk@gib.gov.tr değerini alias attribute içerisine eklenmelidir.
DESPATCHADVICE.CONTENT Base64Binary Evet İrsaliyenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Bir istek ile çoklu XML gönderimi yapılabilir. Birden fazla irsaliye göndermek için DESPATCHADVICE elemanı çoklanmalıdır.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Hata Kod Listesi

Hata Kodu Açıklama
-1 Beklenmedik bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.
10001 Sistemde Beklenmedik Bir Hata Oluştu: {HATA SEBEBİ}
10002 Oturum oluşturulamadı
10003 Belge Şematron Kontrolünden Geçemedi: {HATA SEBEBİ}
10004 Geçersiz oturum. Lütfen tekrar oturum oluşturunuz ve tekrar deneyiniz
10005 Hesabınızın {EIRSALIYE} ürün aktif degildir
10006 Yetkiniz bulunmamaktadır
10007 İstek ZİP bir dosya içermelidir
10008 Belirtilen kriterlere uygun kayıt bulunamamıştır
10009 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10010 Bir istek boyutu maksimum 5MB veya 100 adet belge içerebilir
10011 Tekrarlanan işlem: kayıt sistemde mevcuttur
10012 Kullanıcı aktif degil {kullanıcı adı}
10013 Gönderilen istek geçersizdir. Hata sebebi {0}
10014 Geçersiz İmza
10015 Servis desteklenmemektedir. Servis adı
10016 Müşteri sistemde aktif degildir.
10017 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10018 Yetkisiz erişim tespit edildi! {HATA SEBEBİ}

Taslak İrsaliye Yükleme (LoadDespatchAdvice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. İrsaliye sıkıştırılarak/ziplenerek gönderiliyorsa COMPRESSED alanı gönderilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için mutlaka COMPRESSED eleman eklenmeli ve N değeri gönderilmelidir.
DESPATCHADVICE ComplexType Evet İrsaliye numarasını ID attribute içerisine, Evrensel tekil tanımlama numarasını (ETTN) UUID attribute eklenmelidir.
DESPATCHADVICE.CONTENT Base64Binary Evet İrsaliyenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Bir istek ile çoklu XML gönderimi yapılabilir. Birden fazla irsaliye göndermek için DESPATCHADVICE elemanı çoklanmalıdır.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Hata Kod Listesi

Hata Kodu Açıklama
-1 Beklenmedik bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.
10001 Sistemde Beklenmedik Bir Hata Oluştu: {HATA SEBEBİ}
10002 Oturum oluşturulamadı
10003 Belge Şematron Kontrolünden Geçemedi: {HATA SEBEBİ}
10004 Geçersiz oturum. Lütfen tekrar oturum oluşturunuz ve tekrar deneyiniz
10005 Hesabınızın {EIRSALIYE} ürün aktif degildir
10006 Yetkiniz bulunmamaktadır
10007 İstek ZİP bir dosya içermelidir
10008 Belirtilen kriterlere uygun kayıt bulunamamıştır
10009 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10010 Bir istek boyutu maksimum 5MB veya 100 adet belge içerebilir
10011 Tekrarlanan işlem: kayıt sistemde mevcuttur
10012 Kullanıcı aktif degil {kullanıcı adı}
10013 Gönderilen istek geçersizdir. Hata sebebi {0}
10014 Geçersiz İmza
10015 Servis desteklenmemektedir. Servis adı
10016 Müşteri sistemde aktif degildir.
10017 Gönderilen belge daha önce gönderilmiş bir belge ile eşleşmektedir. ID: ve UUID:
10018 Yetkisiz erişim tespit edildi! {HATA SEBEBİ}

E-İrsaliye Okuma (GetDespatchAdvice)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir.
SEARCH_KEY.LIMIT String Hayır Kaç kayıt okunmak istendiği. Eğer eleman gönderilmezse 10 adet, içerikleri (XML) ile beraber en fazla 100 adet, sadece özet/başlıklarını çekildiğinde ise en fazla 25.000 adet kayıt dönülür.
SEARCH_KEY.FROM String Hayır Gönderici firma gönderici birim (GB) etiketine göre çekmek için kullanılabilir. Örneğin birden fazla GB etiketi olan bir firmanın sadece muhasebe departmanından gelen belgeleri okumak için kullanılabilir. örnek: urn:mail:muhasebegb@firma.com
SEARCH_KEY.TO String Hayır Birden fazla Posta Kutusu (PK) etiketi olan bir firmanın sadece bir PK adresine gelen belgeleri çekmek için kullanılabilir. Eğer etiket gönderilmez ise kullanıcının yetkisine bağlı olarak bütün irsaliyeler dönülür. urn:mail:muhasebepk@firma.com
SEARCH_KEY.ID String Hayır İrsaliye numarası ile okumak için kullanılabilir. örnek: FYA2018000000001
SEARCH_KEY.UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılabilir. GUID formatında
SEARCH_KEY.START_DATE String Hayır Belirli tarih aralığında ki irsaliyeleri çekmek istendiğinde dönem başlangıç tarihi. format: YYYY-MM-DD
SEARCH_KEY.END_DATE String Hayır Belirli tarih aralığında ki irsaliyeleri çekmek istendiğinde dönem bitiş tarihi format: YYYY-MM-DD
SEARCH_KEY.READ_INCLUDED String Hayır Daha önce okunmuş irsaliyeleri dönüşe dahil edilip edilmeyeceğini belirleyen parametredir. Y değeri gönderilirse daha önce okunmuş olsa bile yanıta eklenir. Gönderilmezse veya N gönderilirse sadece yeni gelen irsaliyeler dönülür. Gönderilebilecek değerler: Y/N
SEARCH_KEY.DIRECTION String Hayır Belge yönü. Gelen veya Giden irsaliyeleri çekmek için kullanılabilir. Gelen irsaliyeleleri çekmek için IN, giden irsaliyeleleri çekmek için OUT değeri gönderilebilir. Varsayılan değer IN olduğu için eğer parametre gönderilmezse sadece gelen irsaliyeler dönülecektir. Gönderilebilecek değerler: IN, OUT
SEARCH_KEY.SENDER String Hayır Sadece bir firmadan gelen irsaliyeleri çekmek için göndericinin VKNsi.
SEARCH_KEY.RECEIVER String Hayır Alıcı firma VKNsi.
HEADER_ONLY String Hayır Sadece özet değerler mi yoksa içerik ile beraber mi okunmak istenildiğini belirleyen parametredir. Eleman gönderilmezse veya N değeri gönderilirse irsaliyeler XML ile beraber dönülür. Y değeri gönderilirse irsaliyelerin özeti dönülür. Gönderilebilecek değerler: Y/N



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
DESPATCHADVICE ComplexType Sorgu kriterine uyan irsaliyelerin listesi. İrsaliye numarası ID, evrensel tekil tanımlama numarası UUID ve e-irsaliye sisteminde tanımlı tekil numara değeri LIST_ID attribute içerisinde dönülmektedir.
DESPATCHADVICE.HEADER ComplexType İrsaliyeye ait özet bilgiler içermektedir.
HEADER.SENDER String Belgeyi gönderen firma VKN'si.
HEADER.RECEIVER String Belgeyi alan firma VKN'si.
HEADER.SUPPLIER String Belgeyi gönderen firma ünvanı.
HEADER.CUSTOMER String Belgeyi alan firma ünvanı.
HEADER.ISSUE_DATE String Belge tarihi.
HEADER.PAYABLE_AMOUNT String Toplam ödenecek tutar.
HEADER.FROM String Belgeyi gönderen Gönderici Birim (GB)
HEADER.TO String Belgenin gönderildiği Posta Kutusu (PK)
HEADER.PROFILEID String Belge senaryosu. TEMELIRSALIYE değeri olabilir.
HEADER.INVOICE_TYPE_CODE String Belgenin tipi. SEVK değeri olabilir.
HEADER.STATUS String Belgenin durumu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Belge durum açıklaması. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
HEADER.GIB_STATUS_CODE String Belgenin GİB'de ki durum kodu. Detay için GİB Durum Kodları başlığını inceleyiniz.
HEADER.GIB_STATUS_DESCRIPTION String Belgenin GİB'de ki durum kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
HEADER.CDATE String Belgenin sisteme ulaştığı tarih
HEADER.ENVELOPE_IDENTIFIER String Belgenin zarf IDsi.
DESPATCHADVICE_CONTENT Base64Binary Belgenin içeriği. Eğer COMPRESSED parametresi N olarak gönderilmişse XML dosya, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş XML dosyası dönülür.

E-İrsaliye Durum Sorgulama (GetDespatchAdviceStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
DESPATCHADVICEINFO String Evet Sorgulanacak belge numarası ID attribute içerisine, Evrensel Tekil Tanımlama Numarası (ETTN) ise UUID attribute eklenmelidir. DIRECTION attribute kullanılmamaktadır.

Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
DESPATCHADVICE ComplexType Sorgu kriterine uyan irsaliyelerin listesi. İrsaliye numarası ID, evrensel tekil tanımlama numarası UUID ve e-irsaliye sisteminde tanımlı tekil numara değeri LIST_ID attribute içerisinde dönülmektedir.
DESPATCHADVICE.DESPATCHADVICEHEADER ComplexType İrsaliyeye ait özet bilgiler içermektedir.
DESPATCHADVICEHEADER.ID String Belgenin numarası.
DESPATCHADVICEHEADER.UUID String Belgenin evrensel tekil tanımlama numarası.
DESPATCHADVICEHEADER.PROFILEID String Belge senaryosu. TEMELIRSALIYE değeri olabilir.
DESPATCHADVICEHEADER.TYPE_CODE String Belgenin tipi. SEVK değeri olabilir.
DESPATCHADVICEHEADER.SENDER String Belgeyi gönderen firmanın VKNsi VKN attribute içerisinde, firma ünvanı ise IDENTIFIER attribute içerisinde dönülmektedir.
DESPATCHADVICEHEADER.RECEIVER String Belgeyi alan firmanın VKNsi VKN attribute içerisinde, firma ünvanı ise IDENTIFIER attribute içerisinde dönülmektedir.
DESPATCHADVICEHEADER.ISSUE_DATE Date Belge tarihi.
DESPATCHADVICEHEADER.ISSUE_TIME String Belge düzenleme zamanı.
DESPATCHADVICEHEADER.ACTUAL_SHIPMENT_DATE Date Fiili sevk tarihi.
DESPATCHADVICEHEADER.ACTUAL_SHIPMENT_TIME String Fiili sevk zamanı.
DESPATCHADVICEHEADER.DIRECTION String Belge yönü. Gelen irsaliye için IN, giden irsaliye için OUT değeri dönülür.
DESPATCHADVICEHEADER.STATUS String Belgenin durumu. Lütfen bu alanı kullanarak karar vermeyin. Karar vermek için STATUS_CODE alanını kullanınız.
DESPATCHADVICEHEADER.STATUS_CODE String Belgenin durum kodu. Detay için İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.STATUS_DESCRIPTION String Belgenin durum açıklaması. Detay için İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.GIB_STATUS_CODE int Belgenin GİB'de ki durum kodu. Detay için GİB Durum Kodları başlığını inceleyiniz.
DESPATCHADVICEHEADER.GIB_STATUS_DESCRIPTION String Belgenin GİB'de ki durum kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
DESPATCHADVICEHEADER.CDATE DateTime Belgenin sisteme ulaştığı/yüklendiği tarih
DESPATCHADVICEHEADER.ENVELOPE_IDENTIFIER String Belgenin zarf IDsi.

E-İrsaliye Durumları

Durum Kod Detaylı Açıklama
DURUM_HENUZ_GUNCELLENMEDI 100 DURUM HENÜZ GÜNCELLENMEDİ
LOAD_SUCCEED 101 KUYRUĞA EKLENDİ
LOAD_PROCESSİNG 102 TASLAK İŞLENİYOR
PACKAGE_PROCESSING 103 PAKETLENİYOR
PACKAGE_SUCCEED 104 PAKETLENDİ
PACKAGE_FAILED 105 PAKETLEME_HATASI
SIGN_PROCESSING 106 İMZALANIYOR
SIGN_FAILED 106 İMZALANIYOR
SIGN_SUCCEED 107 İMZALANDI
RECEIVE_SUCCEED 133 BAŞARIYLA ALINDI
SEND_TIMEOUT 134 GÖNDERME İŞLEMİ SİSTEM TARAFINDAN TEKRAR DENENECEKTİR
RECEIVE_TIMEOUT 134 GÖNDERME İŞLEMİ SİSTEM TARAFINDAN TEKRAR DENENECEKTİR
SEND_PROCESSING 135 GÖNDERİLİYOR
SEND_FAILED 136 GÖNDERME İŞLEMİ BAŞARISIZ
SEND_SUCCEED 137 GÖNDERME İŞLEMİ BAŞARILI

GİB Durum Kodları

Kod Açıklama Alınacak Aksiyon
1000 ZARF KUYRUĞA EKLENDİ Durum kodunun güncellenmesi beklenmelidir.
1100 ZARF İŞLENİYOR Durum kodunun güncellenmesi beklenmelidir.
1110 ZIP DOSYASI DEĞİL Belge yeniden gönderilmeli
1111 ZARF ID UZUNLUĞU GEÇERSİZ Belge yeniden gönderilmeli
1120 ZARF ARŞİVDEN KOPYALANAMADI Belge yeniden gönderilmeli
1130 ZIP AÇILAMADI Belge yeniden gönderilmeli
1131 ZIP BİR DOSYA İÇERMELİ Belge yeniden gönderilmeli
1132 XML DOSYASI DEĞİL Belge yeniden gönderilmeli
1133 ZARF ID VE XML DOSYASININ ADI AYNI OLMALI Belge yeniden gönderilmeli
1140 DOKUMAN AYRIŞTIRILAMADI Belge yeniden gönderilmeli
1141 ZARF ID YOK Belge yeniden gönderilmeli
1142 ZARF ID VE ZIP DOSYASI ADI AYNI OLMALI Belge yeniden gönderilmeli
1143 GEÇERSİZ VERSİYON Belge yeniden gönderilmeli
1150 SCHEMATRON KONTROL SONUCU HATALI Belge yeniden gönderilmeli
1160 XML SEMA KONTROLÜNDEN GEÇEMEDİ Belge yeniden gönderilmeli
1161 İMZA SAHİBİ TCKN VKN ALINAMADI Belge yeniden gönderilmeli
1162 İMZA KAYDEDİLEMEDİ Belge yeniden gönderilmeli
1163 GÖNDERİLEN ZARF SİSTEMDE DAHA ÖNCE KAYITLI OLAN BİR FATURAYI İÇERMEKTEDİR Belge yeniden gönderilmeli
1170 YETKİ KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1171 GÖNDERİCİ BİRİM YETKİSİ YOK Belge yeniden gönderilmeli
1172 POSTA KUTUSU YETKİSİ YOK Belge yeniden gönderilmeli
1175 İMZA YETKİSİ KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1176 İMZA SAHİBİ YETKİSİZ Belge yeniden gönderilmeli
1177 GEÇERSİZ İMZA Belge yeniden gönderilmeli
1180 ADRES KONTROL EDİLEMEDİ Belge yeniden gönderilmeli
1181 ADRES BULUNAMADI Belge yeniden gönderilmeli
1182 KULLANICI EKLENEMEDİ Belge yeniden gönderilmeli
1183 KULLANICI SİLİNEMEDİ Belge yeniden gönderilmeli
1190 SİSTEM YANITI HAZIRLANAMADI Belge yeniden gönderilmeli
1195 SİSTEM HATASI Belge yeniden gönderilmeli
1200 ZARF BAŞARIYLA İŞLENDİ Özel entegratörden gönderilen Belgede sorun tespit edilmedi. Sonra ki aşamalara geçilecek.
1210 DOKUMAN BULUNAN ADRESE GÖNDERİLEMEDİ GİB’in tekrar gönderme denemesi sonlandıktan sonra, 1215 durum kodu alınır ise belgeler yeniden gönderilmeli
1215 DOKÜMAN GÖNDERİMİ BAŞARISIZ. TEKRAR GÖNDERME SONLANDI Belge yeniden gönderilmeli
1220 HEDEFTEN SİSTEM YANITI GELMEDİ Bu durum kodundan sonra 1230 HEDEFTEN SİSTEM YANITI BAŞARISIZ GELDİ durum kodu alınır ise Belge yeniden gönderilmelidir.
1230 HEDEFTEN SİSTEM YANITI BAŞARISIZ GELDİ Belge yeniden gönderilmeli
1300 BAŞARIYLA TAMAMLANDI Başarılı olan Belge aynı numara ile gönderilemez.

E-Mustahsil Webservisi

e-Müstahsil Makbuzu (e-MM) Uygulaması, müstahsil makbuzunun Gelir İdaresi Başkanlığı tarafından belirlenen standartlara uygun olarak elektronik ortamda oluşturulması, hem kağıt hem de elektronik ortamda muhafazası ve ibrazı ile elektronik ortamda raporlamasını kapsayan uygulamadır.

GİB Dokümanları

Doküman Açıklama İndir
UBL-TR Müstahsil Makbuzu UBL-TR v1.2 (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan müstahsil makbuzu belgesinde geçen elemanlara ait XSD, tanımlama, kullanım şekilleri, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Ortak Elemanlar UBL-TR (UBL 2.1 Türkiye Özelleştirmesi) paketinde yer alan belgelerde geçmesi muhtemel elemanlara ait (ortak elemanlar örneğin: Adres, Parasal Toplamlar, Taraf gibi) XSD, açıklama, kullanım şartları, kardinaliteler hakkında bilgi vermek ve örnek kullanım şekillerini göstermek amacı ile hazırlanmıştır.
UBL-TR Kod Listeleri UBL-TR kapsamında kullanılan Kodlama Sistemleri ve Kimlik Şemaları hakkında bilgi vermek amacı ile hazırlanmıştır.

UBL-Mustahsil Makbuzu Senaryoları

E-Müstahsil Makbuzu sistemi üzerinden düzenlenebilecek ve gönderilebilecek e-müstahsil makbuzu senaryoları ve örnek XML dosyaları aşağıda listelenmiştir.

Senaryosu Açıklama XML
Vergisiz Müstahsil Makbuzu En temel müstahsil makbuzu senaryosudur. İçerisinde hiç bir vergi (merafonu, borsa tescil, sgk prim kesintisi) bulunmamaktadır.
Mera Fonu Vergisi İçeren Müstahsil Makbuzu Mera Fonu Vergisi içeren müstahsil makbuzu senaryodur.
Borsa Tescil İçeren Müstahsil Makbuzu Üreticiden borsa tescili bulunan ürün alımında düzenlenen müstahsil makbuzu senaryosudur.
SGK Prim (Bağkur) Kesintisi İçeren Müstahsil Makbuzu SGK Prim kesinitisi yapıldığı durumlarda düzenlenen müstahsil makbuzu senaryosudur.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Test Hesaplar

Test hesabı talep etmek için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz. E-Müstahsil test sürecinde düzenlenen belgelerin gönderici VKNsi 4840847211 olmalıdır.

Dikkat Edilecek Hususlar

E-Müstahsil uygulamanızı geliştirken aşağıda ki bilgiler faydalı olacaktır:

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login metodu ile oturum açarak session id alınacaktır. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. CREDITNOTE belgeleri UBL-TR Invoice formatına dönüştürerek gönderilmelidir. Her dosya içerisinde görüntülenmesini sağlayan XSLT dokümanı olmalıdır.
  3. SendCREDITNOTE metodu ile belge gönderimi yapılmaktadır.
  4. GetCREDITNOTEStatus metodu ile entegrasyon sunucularına yüklenen belgelerin durumları sorgulanacak. Sık sorgulama yapmayınız.
  5. GetCREDITNOTE metodu ile yüklenen belgenin imzalı XML, PDF ve HTML formatında tekrar müşteri bilgisayarına çekmek için kullanılabilir.
  6. CancelCREDITNOTE metodu ile eksik/hatalı oluşturulmuş veya müşteri tarafından iptal/iade edilmiş belgeleri GİB'e iptal olarak raporlanmasını veya tamamen iptal edilerek hiç raporlanmamasını sağlayabilirsiniz.
  7. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

İstemci (client) Örnek Projeler

Webservice entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Müstahsil Makbuz Sınıfı (CreditNoteType) Nasıl Üretilir ?

.NET Ortamı

.NET üzerinden XSD dosyasından sınıf üretmek için şu adımları uygulayınız:

  1. http://www.efatura.gov.tr/dosyalar/kilavuzlar/UBL-TR1.2.1_Paketi.zip adresinden paket indirilir.
  2. İndirilen dosya unzip edilir.
  3. .Net Framework yüklü olan bir bilgisayarda başlat>Developer Command Prompt yazılır ve gelen seçenek tıklanarak komut dosyası açılır.
  4. 2.maddedeki unzip yapılan dizine cd UBLTR_1.2.1_Paketi/xsdrt/maindoc/ olarak gidilir.
  5. Gelen ekranda aşağıdaki komutu çalıştırılır.
    xsd /c UBL-CreditNote-2.1.xsd UBL-CommonExtensionComponents-2.1.xsd UBL-CommonBasicComponents-2.1.xsd UBL-UnqualifiedDataTypes-2.1.xsd UBL-CoreComponentParameters-2.1.xsd CCTS_CCT_SchemaModule-2.1.xsd UBL-CommonAggregateComponents-2.1.xsd
  6. Bu işlemin sonunda müstahsil makbuzu oluşturmak için gerekli bütün sınıflar UBL-CreditNote-2.1.cs dosyası içerisinde oluşturulacaktır.
  7. Müstahsil CreditNoteType sınıfı ile üretilmektedir.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-Müstahsil Gönderme (SendCreditNote)

E-Müstahsil MakbuzuNU özel entegratör sistemlerine gönderilmesini sağlayan servistir. Bu servis ile gönderilen belgeler kuyruğa eklenerek işleme (imzalama, e-posta/sms gönderme ve raporlama) alınacaktır.

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. SESSION_ID değeri Kimlik Doğrulama (Authentication) webservisinde ki Login metodundan alınan değerdir. Belge sıkıştırılarak/ziplenerek gönderiliyorsa COMPRESSED alanı gönderilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.
CREDITNOTE ComplexType Evet En az bir CREDITNOTE elementi bulunmalıdır. Toplu CREDITNOTE göndermek bu eleman çoklanır. Atanan belge numarası ID attribute içerisine, Evrensel tekil tanımlama numarasını (ETTN) UUID attribute eklenmek zorundadır.
CREDITNOTE.CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. XML formatında sıkıştırılmadan göndermek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Daha hızlı iletişim sağlamak için belgelerin sıkıştırılarak gönderilmesini öneriyoruz.
CREDITNOTE_PROPERTIES ComplexType Hayır CREDITNOTE belgesi ile ilgili parametrelerin belirlendiği elemandır. Belgenin alıcısına e-posta veya SMS olarak iletme isteği belirlenebilir.
CREDITNOTE_PROPERTIES.SMS_FLAG String Hayır Belge alıcısına SMS olarak göndermek için Y değeri gönderilmelidir. Eleman gönderilmezse SMS_NUMBER dolu olsa dahi SMS gönderilmez. DİKKAT: Eğer müşterinin özel entegratör ile SMS gönderme hizmeti sözleşmesi yoksa ve Y değeri gönderilirse belgenin sisteme yüklenmesine izin verilmeyecektir. Bu durumda özel entegratör ile iletişime geçerek SMS gönderim hizmeti satın alınmalı veya SMS gönderiminin farklı bir kanaldan müşteri tarafından yapılması gerekmektedir. Bu durumda bu parametre gönderilmemeli veya N olarak gönderilmelidir.
CREDITNOTE_PROPERTIES.SMS_NUMBER String Hayır Belgenin SMS olarak iletileceği telefon numarası. Eğer SMS_FLAG elemanına Y gönderilirse bu alan zorunludur. SMS_FLAG elemanı Y gönderilmezse bu elaman dolu olsa dahi SMS gönderilmez.
CREDITNOTE_PROPERTIES.EMAIL_FLAG String Hayır Belge alıcısına e-posta olarak gönderilip gönderilmeyeceğinin belirlendiği parametredir. E-Posta göndermek istenilen durumda Y değeri gönderilmelidir. Eleman gönderilmezse EMAIL alanı dolu olsa dahi e-posta gönderilmez. DİKKAT: Eğer müşterinin özel entegratör ile e-posta gönderme hizmeti sözleşmesi yoksa ve Y değeri gönderilirse belgenin sisteme yüklenmesine izin verilmeyecektir. Bu durumda özel entegratör ile iletişime geçerek e-posta gönderim hizmeti satın alınmalı veya e-posta gönderiminin farklı bir kanaldan müşteri tarafından yapılması gerekmektedir. Bu durumda bu parametre gönderilmemeli veya N olarak gönderilmelidir.
CREDITNOTE_PROPERTIES.EMAIL String Hayır Belgenin e-posta olarak iletileceği e-posta adresi. E-Posta formatında olmak zorundadır. E-Posta gönderimini özel entegratör sisteminden yapılması isteniyorsa Y değeri gönderilmelidir. Varsayılan değer N dir. EMAIL_FLAG alanı Y gönderildiği zaman bu elaman zorunludur. EMAIL_FLAG gönderilmemiş veya N değeri gönderilmişse bu elaman dolu olsa dahi e-posta gönderilmeyecektir.
CREDITNOTE_PROPERTIES.SENDING_TYPE String Evet Belgenin yollanma şekli. ELEKTRONIK veya KAGIT olabilir. Gönderim şekli ELEKTRONIK olan belge SMS veya ePosta adresi olmak zorundadır
SERIES_PROPERTIES ComplexType Hayır Belge numarasının özel entegratör tarafından atanmasının belirleyen parametredir. Belge numarasının istemci tarafından atanmasını tavsiye ederiz.
SERIES_PROPERTIES.SERIES_FLAG String Hayır Belge numarasının özel entegratör tarafından atanması için Y değeri gönderilmelidir. DİKKAT: SERIES_PREFIX elemanında belirlenen ön ek ile belge numarası atanacak ve belge içerisinde ki değer ezilecektir.
SERIES_PROPERTIES.SERIES_PREFIX String Hayır Belge numarası atanacak ön ek. 3 hane alfanumerik değer içermelidir. Belge numarası yönetimi hakkında daha detaylı bilgi almak için Başlarken -> Belge Numarası Yönetimi başlığını inceleyiniz. Belge numarasının özel entegratör tarafından atanması için Y değeri gönderilmelidir. DİKKAT: SERIES_FLAG elemanı Y değeri gönderilmemişse bu alan dolu olsa dahi belge numarası atanmayacaktır.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-Müstahsil Okuma (GetCreditNote)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir.
CREDITNOTE_SEARCH_KEY ComplexType Evet Belge okumak için kullanılabilecek filtre kritirleri
CREDITNOTE_SEARCH_KEY.LIMIT String Hayır Kaç kayıt okunmak istendiği. Eğer eleman gönderilmezse 10 adet kayıt dönülür. İçerikleri (PDF) ile beraber en fazla 100 adet kayıt dönülür. Sadece özet/başlıklarını çekildiğinde ise en fazla 25.000 adet kayıt dönülür.
CREDITNOTE_SEARCH_KEY.ID String Hayır Belge numarası ile okumak için kullanılabilir. örnek: CREDITNOTE2018000000001
CREDITNOTE_SEARCH_KEY.UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılabilir. GUID formatında
CREDITNOTE_SEARCH_KEY.START_DATE String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem başlangıç tarihi. format: YYYY-MM-DD
CREDITNOTE_SEARCH_KEY.END_DATE String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem bitiş tarihi format: YYYY-MM-DD
CREDITNOTE_SEARCH_KEY.READ_INCLUDED String Hayır Daha önce okunmuş belgeleri dönüşe dahil edilip edilmeyeceğini belirleyen parametredir. Y değeri gönderilirse daha önce okunmuş olsa bile yanıta eklenir. Gönderilmezse veya N gönderilirse sadece yeni gelen belgeler dönülür. Gönderilebilecek değerler: Y/N
CREDITNOTE_SEARCH_KEY.FROM String Hayır Gönderici vergi kimlik/TC kimlik numarası ile sorgulamak için kullanılabilir.
CREDITNOTE_SEARCH_KEY.TO String Hayır Alıcı vergi kimlik/TC kimlik numarası ile sadece belirli bir müşteriye gönderilen belgeleri okumak için kullanılabilir.
HEADER_ONLY String Hayır Sadece özet değerler mi yoksa içerik ile beraber mi okunmak istenildiğini belirleyen parametredir. Eleman gönderilmezse veya N değeri gönderilirse belgenin içeriği ile (XML) ile beraber dönülür. Y değeri gönderilirse belgenin özeti dönülür. Gönderilebilecek değerler: Y/N
CONTENT_TYPE Enum Hayır Talep edilen format. Gönderilebilecek değerler: PDF



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CREDITNOTE ComplexType/Array Sorgu kriterine uyan tekil belge. Belge numarası ID, evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
CREDITNOTE.HEADER ComplexType Belgeye ait özet bilgileri içerir.
HEADER.CUSTOMER ComplexType Belge düzenlenen alıcı bilgisi. identifier attribute ile VKN/TCKN bilgisi, name attribute ile ünvan bilgisi dönülür.
HEADER.ISSUE_DATE DateTime Belge düzenlenme tarihi. YYYY-MM-DD HH:MM:SS formatında
HEADER.PAYABLE_AMOUNT AmountType Toplam ödenecek tutar.
HEADER.STATUS String Belgenin durumu. Detay için E-CREDITNOTE Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Belge durum açıklaması. Detay için E-CREDITNOTE Durumları başlığını inceleyiniz.
HEADER.SMS_STATUS String Belgenin SMS durumu. Detay için E-CREDITNOTE SMS Durumları başlığını inceleyiniz.
HEADER.SMS_STATUS_DESCRIPTION String Belgenin SMS durum açıklaması. Detay için E-CREDITNOTE SMS Durumları başlığını inceleyiniz.
HEADER.EMAIL_STATUS String Belgenin E-Posta durumu. Detay için E-CREDITNOTE E-Posta Durumları başlığını inceleyiniz.
HEADER.EMAIL_STATUS_DESCRIPTION String Belgenin E-Posta durum açıklaması. Detay için E-CREDITNOTE E-Posta Durumları başlığını inceleyiniz.
HEADER.REPORT_DATE String Belgenin E-Posta durumu. Detay için E-CREDITNOTE E-Posta Durumları başlığını inceleyiniz.
HEADER.EMAIL_STATUS_DESCRIPTION String Belgenin E-Posta durum açıklaması. Detay için E-CREDITNOTE E-Posta Durumları başlığını inceleyiniz.
HEADER.CDATE String Belgenin sisteme yüklendiği tarih.
CREDITNOTE.CONTENT Base64Binary Belgenin içeriği. PDF formatında. Eğer COMPRESSED parametresi N olarak gönderilmişse PDF dosya sıkıştırılmadan, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş PDF dosyası dönülür.

E-Müstahsil Durum Sorgulama (GetCreditNoteStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
UUID String Evet Sorgulanacak serbest meslek makbuzuna ait Evrensel Tekil Tanımlama Numarası (ETTN) yazılmalıdır.

Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CREDITNOTE_STATUS ComplexType Sorgu kriterine uyan belgelerin listesi. Belge numarası ID, evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
CREDITNOTE_STATUS.HEADER ComplexType Belgeye ait özet bilgiler içermektedir. Parametre listesi aşağıdadır.
HEADER.ISSUE_DATE Date Belgenin numarası.
HEADER.PROFILEID String Belge senaryosu. EARSIVBELGE değeri olabilir.
HEADER.STATUS String Belgenin durumu. Lütfen bu alanı kullanarak karar vermeyin. Karar vermek için STATUS_CODE alanını kullanınız.
HEADER.STATUS_CODE String Belgenin durum kodu. Detay için E-CREDITNOTE Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Belgenin durum açıklaması. Detay için E-CREDITNOTE Durumları başlığını inceleyiniz.

E-Müstahsil Durumları

Durum Kodu Durum Açıklaması
100 DURUM HENÜZ GÜNCELLENMEDİ
101 TASLAK
102 NUMARA ATANMA BEKLENİYOR
103 KUYRUĞA EKLENDİ
104 İŞLENİYOR
105 İŞLENDİ
106 BAŞARISIZ
107 İPTAL EDİLDİ

E-Müstahsil E-Posta Gönderim Durumları

Durum Kodu Durum Açıklaması
100 HENÜZ İŞLENMEDİ
110 İŞLENİYOR
120 İŞLENDİ
130 E-MAIL GÖNDERİM SONLANDI

E-Serbest Meslek Webservisi

487 Sıra No.lu Vergi Usul Kanunu Genel Tebliği ile yürürlüğe giren e-Serbest Meslek Makbuzu (e-SMM) Uygulaması, Serbest Meslek Makbuzunun Gelir İdaresi Başkanlığı tarafından belirlenen standartlara uygun olarak elektronik ortamda oluşturulması, muhafazası, ibrazı ve raporlanmasını kapsayan uygulamadır.

01/01/2018 tarihi itibariyle dileyen serbest meslek erbapları uygulamaya dahil olarak mesleki faaliyetlerine ilişkin tahsilatları için kağıt ortamda düzenlemiş oldukları Serbest Meslek Makbuzunu elektronik belge olarak elektronik ortamda düzenleyebilir, muhatabının talebi doğrultusunda elektronik veya kağıt ortamda iletilebilir, elektronik ortamda muhafaza edip Gelir İdaresi Başkanlığı’na elektronik ortamda raporlayabilirler.

E-Serbest Meslek Senaryoları

E-SMM sistemi üzerinden düzenlenebilecek ve gönderilebilecek makbuz senaryoları ve örnek XML dosyaları aşağıda listelenmiştir.

Senaryosu Açıklama XML
Nihai Tüketiciye (Şahıslara) Düzenlenen E-SMM Alıcısının vergi mükellefi olmayıp şahıslara düzenlenen serbest meslek makbuzu senaryosudur. Nihai tüketiciye düzenlen makbuzlarda Gelir Vergisi (GV) stopajı uygulanır.
Vergi Mükelleflerine Düzenlenen E-SMM Alıcısının vergi mükellefi olduğu durumlarda düzenenlen serbest meslek makbuzu senaryosudur. Bu durumda KDV eklenmek zorundadır. KDV Tevkifatı uygulanabilir. KDV tevkifatı için aşağıda ki senaryoyı inceleyiniz.
KDV Tevkifatı İçeren E-SMM Alıcısının vergi mükellefi olduğu durumlarda düzenenlen serbest meslek makbuzu senaryosudur. Bu durumda KDV eklenmek zorundadır. KDV Tevkifatı uygulanabilir.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Test Hesaplar

Test hesabı talep etmek için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz. Test sürecinde düzenlenen belgelerin gönderici VKNsi 4840847211 olmalıdır.

Dikkat Edilecek Hususlar

E-SMM uygulamanızı geliştirken aşağıda ki bilgiler faydalı olacaktır:

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login metodu ile oturum açarak session id alınacaktır. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. SMM belgeleri UBL-TR Invoice formatına dönüştürerek gönderilmelidir. Her dosya içerisinde görüntülenmesini sağlayan XSLT dokümanı olmalıdır.
  3. SendSMM metodu ile belge gönderimi yapılmaktadır.
  4. GetSMMStatus metodu ile entegrasyon sunucularına yüklenen belgelerin durumları sorgulanacak. Sık sorgulama yapmayınız.
  5. GetSMM metodu ile yüklenen belgenin imzalı XML, PDF ve HTML formatında tekrar müşteri bilgisayarına çekmek için kullanılabilir.
  6. CancelSMM metodu ile eksik/hatalı oluşturulmuş veya müşteri tarafından iptal/iade edilmiş belgeleri GİB'e iptal olarak raporlanmasını veya tamamen iptal edilerek hiç raporlanmamasını sağlayabilirsiniz.
  7. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

İstemci (client) Örnek Projeler

Webservice entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-SMM Gönderme (SendSMM)

E-SMM belgesini özel entegratör sistemlerine gönderilmesini sağlayan servistir. Bu servis ile gönderilen belgeler kuyruğa eklenerek işleme (imzalama, e-posta/sms gönderme ve raporlama) alınacaktır.

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. SESSION_ID değeri Kimlik Doğrulama (Authentication) webservisinde ki Login metodundan alınan değerdir. Belge sıkıştırılarak/ziplenerek gönderiliyorsa COMPRESSED alanı gönderilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.
SMM ComplexType Evet En az bir SMM elementi bulunmalıdır. Toplu SMM göndermek bu eleman çoklanır. Atanan belge numarası ID attribute içerisine, Evrensel tekil tanımlama numarasını (ETTN) UUID attribute eklenmek zorundadır.
SMM.CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. XML formatında sıkıştırılmadan göndermek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Daha hızlı iletişim sağlamak için belgelerin sıkıştırılarak gönderilmesini öneriyoruz.
SMM_PROPERTIES ComplexType Hayır SMM belgesi ile ilgili parametrelerin belirlendiği elemandır. Belgenin alıcısına e-posta veya SMS olarak iletme isteği belirlenebilir.
SMM_PROPERTIES.SMS_FLAG String Hayır Belge alıcısına SMS olarak göndermek için Y değeri gönderilmelidir. Eleman gönderilmezse SMS_NUMBER dolu olsa dahi SMS gönderilmez. DİKKAT: Eğer müşterinin özel entegratör ile SMS gönderme hizmeti sözleşmesi yoksa ve Y değeri gönderilirse belgenin sisteme yüklenmesine izin verilmeyecektir. Bu durumda özel entegratör ile iletişime geçerek SMS gönderim hizmeti satın alınmalı veya SMS gönderiminin farklı bir kanaldan müşteri tarafından yapılması gerekmektedir. Bu durumda bu parametre gönderilmemeli veya N olarak gönderilmelidir.
SMM_PROPERTIES.SMS_NUMBER String Hayır Belgenin SMS olarak iletileceği telefon numarası. Eğer SMS_FLAG elemanına Y gönderilirse bu alan zorunludur. SMS_FLAG elemanı Y gönderilmezse bu elaman dolu olsa dahi SMS gönderilmez.
SMM_PROPERTIES.EMAIL_FLAG String Hayır Belge alıcısına e-posta olarak gönderilip gönderilmeyeceğinin belirlendiği parametredir. E-Posta göndermek istenilen durumda Y değeri gönderilmelidir. Eleman gönderilmezse EMAIL alanı dolu olsa dahi e-posta gönderilmez. DİKKAT: Eğer müşterinin özel entegratör ile e-posta gönderme hizmeti sözleşmesi yoksa ve Y değeri gönderilirse belgenin sisteme yüklenmesine izin verilmeyecektir. Bu durumda özel entegratör ile iletişime geçerek e-posta gönderim hizmeti satın alınmalı veya e-posta gönderiminin farklı bir kanaldan müşteri tarafından yapılması gerekmektedir. Bu durumda bu parametre gönderilmemeli veya N olarak gönderilmelidir.
SMM_PROPERTIES.EMAIL String Hayır Belgenin e-posta olarak iletileceği e-posta adresi. E-Posta formatında olmak zorundadır. E-Posta gönderimini özel entegratör sisteminden yapılması isteniyorsa Y değeri gönderilmelidir. Varsayılan değer N dir. EMAIL_FLAG alanı Y gönderildiği zaman bu elaman zorunludur. EMAIL_FLAG gönderilmemiş veya N değeri gönderilmişse bu elaman dolu olsa dahi e-posta gönderilmeyecektir.
SMM_PROPERTIES.SENDING_TYPE String Evet Belgenin yollanma şekli. ELEKTRONIK veya KAGIT olabilir. Gönderim şekli ELEKTRONIK olan belge SMS veya ePosta adresi olmak zorundadır
SERIES_PROPERTIES ComplexType Hayır Belge numarasının özel entegratör tarafından atanmasının belirleyen parametredir. Belge numarasının istemci tarafından atanmasını tavsiye ederiz.
SERIES_PROPERTIES.SERIES_FLAG String Hayır Belge numarasının özel entegratör tarafından atanması için Y değeri gönderilmelidir. DİKKAT: SERIES_PREFIX elemanında belirlenen ön ek ile belge numarası atanacak ve belge içerisinde ki değer ezilecektir.
SERIES_PROPERTIES.SERIES_PREFIX String Hayır Belge numarası atanacak ön ek. 3 hane alfanumerik değer içermelidir. Belge numarası yönetimi hakkında daha detaylı bilgi almak için Başlarken -> Belge Numarası Yönetimi başlığını inceleyiniz. Belge numarasının özel entegratör tarafından atanması için Y değeri gönderilmelidir. DİKKAT: SERIES_FLAG elemanı Y değeri gönderilmemişse bu alan dolu olsa dahi belge numarası atanmayacaktır.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-SMM Okuma (GetSMM)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir.
SMM_SEARCH_KEY ComplexType Evet Belge okumak için kullanılabilecek filtre kritirleri
SMM_SEARCH_KEY.LIMIT String Hayır Kaç kayıt okunmak istendiği. Eğer eleman gönderilmezse 10 adet kayıt dönülür. İçerikleri (PDF) ile beraber en fazla 100 adet kayıt dönülür. Sadece özet/başlıklarını çekildiğinde ise en fazla 25.000 adet kayıt dönülür.
SMM_SEARCH_KEY.ID String Hayır Belge numarası ile okumak için kullanılabilir. örnek: SMM2018000000001
SMM_SEARCH_KEY.UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılabilir. GUID formatında
SMM_SEARCH_KEY.START_DATE String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem başlangıç tarihi. format: YYYY-MM-DD
SMM_SEARCH_KEY.END_DATE String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem bitiş tarihi format: YYYY-MM-DD
SMM_SEARCH_KEY.READ_INCLUDED String Hayır Daha önce okunmuş belgeleri dönüşe dahil edilip edilmeyeceğini belirleyen parametredir. Y değeri gönderilirse daha önce okunmuş olsa bile yanıta eklenir. Gönderilmezse veya N gönderilirse sadece yeni gelen belgeler dönülür. Gönderilebilecek değerler: Y/N
SMM_SEARCH_KEY.FROM String Hayır Gönderici vergi kimlik/TC kimlik numarası ile sorgulamak için kullanılabilir.
SMM_SEARCH_KEY.TO String Hayır Alıcı vergi kimlik/TC kimlik numarası ile sadece belirli bir müşteriye gönderilen belgeleri okumak için kullanılabilir.
HEADER_ONLY String Hayır Sadece özet değerler mi yoksa içerik ile beraber mi okunmak istenildiğini belirleyen parametredir. Eleman gönderilmezse veya N değeri gönderilirse belgenin içeriği ile (XML) ile beraber dönülür. Y değeri gönderilirse belgenin özeti dönülür. Gönderilebilecek değerler: Y/N
CONTENT_TYPE Enum Hayır Talep edilen format. Gönderilebilecek değerler: PDF



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
SMM ComplexType/Array Sorgu kriterine uyan tekil belge. Belge numarası ID, evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
SMM.HEADER ComplexType Belgeye ait özet bilgileri içerir.
HEADER.CUSTOMER ComplexType Belge düzenlenen alıcı bilgisi. identifier attribute ile VKN/TCKN bilgisi, name attribute ile ünvan bilgisi dönülür.
HEADER.ISSUE_DATE DateTime Belge düzenlenme tarihi. YYYY-MM-DD HH:MM:SS formatında
HEADER.PAYABLE_AMOUNT AmountType Toplam ödenecek tutar.
HEADER.STATUS String Belgenin durumu. Detay için E-SMM Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Belge durum açıklaması. Detay için E-SMM Durumları başlığını inceleyiniz.
HEADER.SMS_STATUS String Belgenin SMS durumu. Detay için E-SMM SMS Durumları başlığını inceleyiniz.
HEADER.SMS_STATUS_DESCRIPTION String Belgenin SMS durum açıklaması. Detay için E-SMM SMS Durumları başlığını inceleyiniz.
HEADER.EMAIL_STATUS String Belgenin E-Posta durumu. Detay için E-SMM E-Posta Durumları başlığını inceleyiniz.
HEADER.EMAIL_STATUS_DESCRIPTION String Belgenin E-Posta durum açıklaması. Detay için E-SMM E-Posta Durumları başlığını inceleyiniz.
HEADER.REPORT_DATE String Belgenin E-Posta durumu. Detay için E-SMM E-Posta Durumları başlığını inceleyiniz.
HEADER.EMAIL_STATUS_DESCRIPTION String Belgenin E-Posta durum açıklaması. Detay için E-SMM E-Posta Durumları başlığını inceleyiniz.
HEADER.CDATE String Belgenin sisteme yüklendiği tarih.
SMM.CONTENT Base64Binary Belgenin içeriği. PDF formatında. Eğer COMPRESSED parametresi N olarak gönderilmişse PDF dosya sıkıştırılmadan, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş PDF dosyası dönülür.

E-SMM Durum Sorgulama (GetSMMStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
UUID String Evet Sorgulanacak serbest meslek makbuzuna ait Evrensel Tekil Tanımlama Numarası (ETTN) yazılmalıdır.

Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
SMM_STATUS ComplexType Sorgu kriterine uyan belgelerin listesi. Belge numarası ID, evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
SMM_STATUS.HEADER ComplexType Belgeye ait özet bilgiler içermektedir. Parametre listesi aşağıdadır.
HEADER.ISSUE_DATE Date Belgenin numarası.
HEADER.PROFILEID String Belge senaryosu. EARSIVBELGE değeri olabilir.
HEADER.STATUS String Belgenin durumu. Lütfen bu alanı kullanarak karar vermeyin. Karar vermek için STATUS_CODE alanını kullanınız.
HEADER.STATUS_CODE String Belgenin durum kodu. Detay için E-SMM Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Belgenin durum açıklaması. Detay için E-SMM Durumları başlığını inceleyiniz.

E-SMM Durumları

Durum Kodu Durum Açıklaması
100 DURUM HENÜZ GÜNCELLENMEDİ
101 TASLAK
102 NUMARA ATANMA BEKLENİYOR
103 KUYRUĞA EKLENDİ
104 İŞLENİYOR
105 İŞLENDİ
106 BAŞARISIZ
107 İPTAL EDİLDİ

E-SMM E-Posta Gönderim Durumları

Durum Kodu Durum Açıklaması
100 HENÜZ İŞLENMEDİ
110 İŞLENİYOR
120 İŞLENDİ
130 E-MAIL GÖNDERİM SONLANDI

E-SMM Raporları Okuma (GetSMMReport)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir.
START_DATE String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem başlangıç tarihi. format: YYYY-MM-DD
END_DATE String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem bitiş tarihi format: YYYY-MM-DD
HEADER_ONLY String Hayır Sadece özet değerler mi yoksa içerik ile beraber mi okunmak istenildiğini belirleyen parametredir. Eleman gönderilmezse veya N değeri gönderilirse belgenin içeriği ile (XML) ile beraber dönülür. Y değeri gönderilirse belgenin özeti dönülür. Gönderilebilecek değerler: Y/N



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
SMM_REPORT ComplexType/Array Sorgu kriterine uyan tekil belge. Belge numarası ID, evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
SMM_REPORT.HEADER ComplexType Belgeye ait özet bilgileri içerir.
HEADER.UUID String Rapora ait evrensel tekil numarası (ETTN)
HEADER.PERIOD_SDATE DateTime Raporun oluşturulduğu dönemin başlangıç tarihi. format: YYYY-MM-DD
HEADER.PERIOD_EDATE DateTime Raporun oluşturulduğu dönemin bitiş tarihi. format: YYYY-MM-DD
HEADER.SEGMENT_SDATE DateTime Raporun oluşturulduğu parça döneminin bitiş tarihi. format: YYYY-MM-DD
HEADER.SEGMENT String Dönem içerisinde ki oluşturulan parçanın numarası.
HEADER.DOCUMENT_COUNT String Gönderilen rapor içerisinde ki makbuz sayısıdır.
HEADER.STATUS String Belgenin durumu. Lütfen bu alanı kullanarak karar vermeyin. Karar vermek için STATUS_CODE alanını kullanınız.
HEADER.STATUS_CODE String Belgenin durum kodu. Detay için E-SMM Rapor Durumları başlığını inceleyiniz.
HEADER.STATUS_DESC String Belgenin durum açıklaması. Detay için E-SMM Rapor Durumları başlığını inceleyiniz.
HEADER.GIB_STATUS_CODE String GIB tarafından rapora gönderilmiş olan durum kodu.
HEADER.GIB_STATUS_DESCRIPTION String GIB tarafından rapora gönderilen durum açıklaması.
HEADER.GIB_STATUS_DATE DateTime GIB tarafından rapora cevap verilen tarih. format: YYYY-MM-DD

E-SMM Rapor Durumları

Durum Kodu Durum Açıklaması
200 RAPORLANACAK
201 RAPORLANDI
202 İPTAL RAPORLANACAK
203 İPTAL RAPORLANDI
204 RAPORLANMAYACAK

E-Mutabakat Webservis

e-Mutabakat servisi, mükelleflerin BA/BS ve Cari mutabakatlarını yönetmelerini sağlayan webservis uygulamasıdır.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Dikkat Edilecek Hususlar

Uygulamanızı tasarlarken aşağıda ki bilgiler faydalı olacaktır:

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login servisi ile oturum açarak session id alınacak. Session Id sistemimiz tarafında son işlem tarihinden itibaren 30 dk geçerlidir.
  2. SendReconciliation metodu ile BA/BS ve Cari mutabakat gönderimi yapılabilmektedir. Detaylar için E-Mutabakat Gönderme bölümünü inceleyiniz.
  3. GetReconciliationStatus metodu ile gönderilen mutabakatların durumları sorgulanabilir. Nihai duruma erişene kadar mutabakatların durumu özel entegratör sisteminden minumum 4 saatte bir sorgulanmalıdır. Sık sorgulama yapmayınız.
  4. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı mutabakat programını kapatınca oturum kapatılabilir.

E-Mutabakat Entegrasyon Kontrol Listesi

Durum Kontrol
Evet / Hayır Oturum Açmak için Kimlik Doğrulama (Authentication) webservisinde ki Login metodu kullanıldı.
Evet / Hayır Oturum açıldıktan sonra bütün isteklerde aynı Session ID kullanılıyor. Eğer Aktif session bulunamadı hatası dönülürse yeni oturum açılıyor.
Evet / Hayır Gönderilen her istek ile REQUEST_HEADER objesinde ki SESSION_ID ve APPLICATION_NAME, CHANNEL_NAME alanları dolu gönderiliyor.
Evet / Hayır BA/BS ve Cari Mutabakat için SendReconciliation metodu kullanılarak örnek gönderim yapıldı.
Evet / Hayır Özel entegratöre iletilen mutabakat muhasebe paketi/ERP'de değişiklik yapılamıyor. Kayıt kitleniyor.
Evet / Hayır Gönderilen mutabakatların durum sorgulaması GetReconciliationStatus metodu ile yapılıyor.
Evet / Hayır Mutabakatların durumu zamanlayıcı ile otomatik sorgulanıyorsa bu süre konfiguratif ve en az 4 saat olarak belirlendi.
Evet / Hayır Nihai duruma ulaşmış mutabakatların durumları sorgulanmıyor.
Evet / Hayır Kullanıcı uygulamayı kapattığında Kimlik Doğrulama (Authentication) webservisinde ki Logout metodu kullanarak oturum kapatıldı.

İstemci (client) Örnek Projeler

Webservice entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

Mutabakat Gönderme (SendReconciliation)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME, CHANNEL_NAME alanı zorunludur.
RECONCILIATION ComplexType Evet En az bir mutabakat bulunmalıdır. Toplu gönderim için bu eleman çoklanır.
RECONCILIATION.TYPE Enum Evet Gönderilmek istenilen mutabakat tipi için kullanılır: BA/BAS Mutabakat için EM,Cari Mutabakat için CM olabilir.
RECONCILIATION.UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile her mutabakat için oluşturulması gerekir. Daha sonra getReconciliationStatus metodu ile mutabakat okumak için kullanılabilir. GUID formatındadır.
RECONCILIATION.CUSTOMER_IDENTIFIER String Evet Mutabakat gönderilecek firmanın vergi kimlik numarası. VKN doğrulaması yapılmadığı için gönderilen verinin doğruluğu mükellefe aittir.
RECONCILIATION.COMMERCIAL_NAME String Evet Mutabakat gönderilecek firmanın ünvanı. Alıcı firmaya gönderilen e-posta üzerinde görünecektir.
RECONCILIATION.TAX_OFFICE String Hayır Mutabakat gönderilecek firmanın vergi dairesi.
RECONCILIATION.CUSTOMER_ADDRESS String Evet Mutabakat gönderilecek firmanın adresi.
RECONCILIATION.TELEPHONE_NO String Hayır Mutabakat gönderilecek firmanın telefon numarası. Format: 0 (212) 555 55 55
RECONCILIATION.FAX_NO String Hayır Mutabakat gönderilecek firmanın faks numarası. Format: 0 (212) 555 55 55
RECONCILIATION.EMAIL String Evet Mutabakat gönderilecek firmanın e-posta adresi. E-posta adresinin formatı kontrol edilir ancak doğruluğu ve geçerliliği mükellefin sorumluluğundadır. Format: muhasebe@firma.com.tr
RECONCILIATION.CURRENCY_CODE Enum Evet Mutabakat içerisinde kullanılacak para birimidir. TRY, USD, EUR, GBP ve CAD değerleri gönderilebilir.
RECONCILIATION.BABS_ACCOUNTING_PERIOD String Hayır BA-BS Mutabakatlar için kullanılan Mutabakat dönemi. Format: 201901
RECONCILIATION.BA_DOCUMENT_COUNT String Hayır BA mutabakat belge adeti.
RECONCILIATION.BA_DOCUMENT_AMOUNT Decimal Hayır BA mutabakat belgelerinin toplam tutarı.
RECONCILIATION.BS_DOCUMENT_COUNT String Hayır BS mutabakat belge adeti.
RECONCILIATION.BS_DOCUMENT_AMOUNT Decimal Hayır BS mutabakat belgelerinin toplam tutarı.
RECONCILIATION.CM_DATE DateTime Hayır Cari Mutabakatlar için kullanılan Mutabakat dönemi. Format: 2019-01-01
RECONCILIATION.CM_AMOUNT_TYPE Enum Hayır Cari Mutabakatlar için mutabakatın yönünü belirtmek için kullanılır. A veya B değerlerini alabilir.
RECONCILIATION.CM_AMOUNT Decimal Hayır Cari Mutabakat tutarını belirtmek için kullanılır.
RECONCILIATION.NOTE String Hayır Mutabakat gönderilecek firmaya iletilmek istenilen not metni. Maksimum 250 karakter gönderilebilir.



Başarı Sonuç Nesnesi

Webservis işlem başarılı olduğunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN ComplexType İşlem sonucunu içeren başarılı sonuç objesi
INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
RETURN_CODE String Başarılı işlemlerde 0 değeri döner. Başarısız olduğunda bu eleman dönülmez.
INVOICE_ID String Fatura numarası e-arşiv platformunda atanmışsa atanan fatura numarası dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Servisten dönen hata sonuç nesnesi şu şekildedir:

Parametre Tip Açıklama
ERROR_TYPE ComplexType İşlem sonucunu içeren başarısız/hatalı sonuç objesi
INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_CODE String Hata kodu. Hata kod detayları için ilgili servisteki hata kod listesini inceleyebilirsiniz.
ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-Mutabakat Hata Kodları

Hata Kodu Hata Açıklaması
200 EKSİK VEYA HATALI PARAMETRE (PARAMETRE ADI)
210 YETKİ HATASI(xxx.xxx.xxx.xxx adresinin bu işleme yetkisi yoktur)
220 GÜNLÜK İSTEK LİTİMİ AŞILDI
230 MUTABAKAT SİSTEMDE MEVCUT ( VKN/TCKN:XXXXX, DÖNEM:yyyymm)
240 BELGE KONTROL HATASI (MEVZUATA UYGUN OLMAYAN MUTABAKAT KAYDI MEVCUT (5000 TL Limiti)
250 GEÇERSİZ E-POSTA FORMATI( eposta@adfads.com)

Mutabakat Durum Sorgulama (GetReconciliationStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME, CHANNEL_NAME alanı zorunludur.
RECONCILIATION_SEARCHING ComplexType Evet Sorgulanacak mutabakatlara ait kriterleri belirlemek için kullanılır.
SEARCH_KEY.ETTN String Evet Mutabakat Evrensel Tekil Tanımlama Numarası (ETTN) mutabakatın durumunu sorgulamak için kullanılabilir.

Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
RECONCILIATION_STATUS ComplexType Mutabakat durum sonuç objesi. Eğer aranan kritere uygun mutabakat bulunmuyorsa sonuç boş kayıt döner.
RECONCILIATION_STATUS.RECONCILATION ComplexType Durumu sorgulaması kriterine uyan mutabakat objesi.
RECONCILIATION.TYPE Enum Durumu sorgulanan mutabakat tipi için kullanılır: BA/BS Mutabakat için EM,Cari Mutabakat için CM olur.
RECONCILIATION.UUID String Durumu sorgulanan Evrensel Tekil Tanımlama Numarasıdır.
RECONCILATION.CUSTOMER_IDENTIFIER String Mutabakat gönderilen mükellef VKN/TCKN.
RECONCILIATION.BABS_ACCOUNTING_PERIOD String BA/BS Mutabakatlar için dönem bilgisi. Format: 201807
RECONCILIATION.CM_DATE String Cari Mutabakatlar için tarih bilgisi. Format: 2019-01-04T00:00:00.000+02:00
RECONCILIATION.STATUS String Mutabakat durum bilgisi.
RECONCILIATION.CREATE_DATE DateTime Mutabakatın özel entegratör sistemine yüklendiği tarih.
RECONCILIATION.EMAIL ComplexType Mutabakatın e-posta durum sonuç objesi
RECONCILIATION.EMAIL_STATUS_CODE String Mutabakatın e-posta durum kodu. Detaylar için E-Mutabakat e-posta durum kodları başlığını inceleyebilirsiniz.
RECONCILIATION.EMAIL_STATUS_DESCRIPTION String Mutabakatın e-posta durum açıklaması. Detaylar için E-Mutabakat e-posta durum kodları başlığını inceleyebilirsiniz.
RECONCILIATION.EMAIL_STATUS_DATE DateTime Mutabakatın e-posta durum tarihi.

E-Mutabakat Durumları

Durum Kodu Durum Açıklaması
100 KUYRUĞA EKLENDİ
105 TASLAK OLARAK EKLENDİ
110 İŞLENİYOR
120 İŞLENDİ
125 MUTABIK
126 MUTABIK DEĞİL

E-Mutabakat E-Posta Gönderim Durumları

Durum Kodu Durum Açıklaması
100 HENÜZ İŞLENMEDİ
110 İŞLENİYOR
120 İŞLENDİ
130 E-POSTA GÖNDERİM SONLANDI

Mutabakat Mail Gönderme (SendMailReconciliation)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME, CHANNEL_NAME alanı zorunludur.
MAIL_SEARCHING ComplexType Evet İstek içerisinde en az bir mutabakat bulunmalıdır.
SEARCH_KEY.UUID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) tekrardan mail gönderilecek olan mutabakat için kullanılır. GUID formatındadır.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Mutabakat Durumları

Durum Detaylı Açıklama
DRAFT TASLAK
ACCEPTED KABUL EDİLDİ
REJECTED REDDEDİLDİ
WAIT_APPROVAL_CUSTOMER ALICIDAN CEVAP BEKLENİYOR
FAILED HATA ALDI
CANCEL İPTAL EDİLDİ

E-ZRapor Webservisi

E-ZRapor servisi, mükelleflerin yeni veya eski nesil ÖKC cihazlarından alınan Z-Raporlarınını Gelir İdaresi Başkanlığına raporlanmasını sağlayan servistir.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Dikkat Edilecek Hususlar

Uygulamanızı tasarlarken aşağıda ki bilgiler faydalı olacaktır:

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login servisi ile oturum açarak session id alınacak. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. LoadZReport metodu ile tekil veya toplu Z-Rapor yüklemesi yapılır.
  3. GetZReportStatus metodu ile gönderilen Z-Raporlarının durumları sorgulanabilir.
  4. GetZReport metodu ile gönderilen Z-Raporlar tekrar istemciye çekilebilir veya son yüklenen Z-Rapor bilgisi sorgulanabilir.
  5. CancelZReport metodu ile gönderilen Z-Raporlar iptal edilebilir. İptal edilen Z-Raport tekrar yüklenmelidir.
  6. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı mutabakat programını kapatınca oturum kapatılabilir.

Z-Rapor Entegrasyon Kontrol Listesi

Durum Kontrol
Evet / Hayır Oturum Açmak için Kimlik Doğrulama (Authentication) webservisinde ki Login metodu kullanıldı.

İstemci (client) Örnek Projeler

Z-Rapor entegrasyonu için sunucu taraflı programlama diline uygun farklı istemci(client) örnekleri sunar. Bu istemcilerden programlama yapmak istediğiniz dile uygun olanı seçip test bilgileri ile kullanmaya başlayabilirsiniz.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Z-Rapor Yükleme (LoadZReport)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME, CHANNEL_NAME alanı zorunludur.
ZREPORT ComplexType Evet En az bir Z-Rapor bulunmalıdır. Toplu gönderim için bu eleman çoklanır.
ZREPORT.SUBE_KODU String Hayır ÖKC kurulu olduğu şube numarası. Eğer şebeli yapı yoksa varsayılan şube kodu 001 olarak kaydedilir.
ZREPORT.OKC_SICIL_NO String Evet ÖKC Firma Kodu ile birlikte Cihaz Sicil No’su yazılacaktır. Örnek:LH0001
ZREPORT.EKU_NO String Evet ÖKC cihazına ait EKU numarası.
**** String Evet Mutabakat gönderilecek firmanın adresi.
ZREPORT.ZRAPOR_NO String Evet Z-Rapor numarası
ZREPORT.ZRAPOR_TARIH String Evet Z-Rapor tarihi. Format: YYYY-MM-DD
ZREPORT.SATIS_TUTAR Decimal Evet Z-Raporda ki satış tutarı
ZREPORT.VERGI_KDV Decimal Evet Z-Raporda ki toplam KDV tutarı.
ZREPORT.VERGI_OTV Decimal Hayır Z-Raporda ki toplam OTV tutarı (Eğer varsa)



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INT_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Z-Rapor Hata Kodları

Hata Kodu Hata Açıklaması
200 EKSİK VEYA HATALI PARAMETRE (PARAMETRE ADI)
210 YETKİ HATASI(xxx.xxx.xxx.xxx adresinin bu işleme yetkisi yoktur)
220 GÜNLÜK İSTEK LİTİMİ AŞILDI
230 BELGE SİSTEMDE MEVCUT ( ZRAPOR:XXXXX)
240 BELGE KONTROL HATASI ()

Z-Rapor Sorgulama / Çekme (GetZReport)


Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur. Faturaları XML formatında sıkıştırılmadan çekmek için mutlaka COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir. Eğer gönderilmezse faturalar sıkıştırılmış/ziplenmiş olarak dönülecektir.
SON_RAPOR String Hayır Sadece son yüklenen Z-Raporu sorgulamak için Y değerleri gönderilebilir. Eleman gönderilmezse veya N değeri gönderilirse diğer kriterlere uyan kayıtlar dönülür. Gönderilebilecek değerler: Y/N
ZREPORT_SEARCH_KEY.LIMIT Integer Hayır Kaç kayıt okunmak istendiği. Eğer eleman gönderilmezse en fazla 25.000 adet kayıt dönülür.
ZREPORT_SEARCH_KEY.SUBE_KODU String Hayır Şube kodu. Şubeli yapısı olan müşteriler için bir şubeye ait Z-Raporları sorgulamak için kullanılabilir.
ZREPORT_SEARCH_KEY.OKC_SICIL_NO String Hayır ÖKC cihaz sicil numarası
ZREPORT_SEARCH_KEY.EKU_NO String Hayır ÖKC cihaz EKU numarası
ZREPORT_SEARCH_KEY.ZRAPOR_NO String Hayır Z-Rapor numarası
ZREPORT_SEARCH_KEY.BASLANGIC_TARIH String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem başlangıç tarihi. format: YYYY-MM-DD
ZREPORT_SEARCH_KEY.BITIS_TARIH String Hayır Belirli tarih aralığında ki belgeleri çekmek istendiğinde dönem bitiş tarihi format: YYYY-MM-DD



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
ZREPORT ComplexType Sorgu kriterine uyan belgelerin listesi.
ZREPORT.SUBE_KODU String ÖKC kurulu olduğu şube numarası.
ZREPORT.OKC_SICIL_NO String ÖKC Sicil numarası
ZREPORT.EKU_NO String ÖKC cihazına ait EKU numarası.
ZREPORT.ZRAPOR_NO String Z-Rapor numarası
ZREPORT.ZRAPOR_TARIH String Z-Rapor tarihi. Format: YYYY-MM-DD
ZREPORT.SATIS_TUTAR Decimal Z-Raporda ki satış tutarı
ZREPORT.VERGI_KDV Decimal Z-Raporda ki toplam KDV tutarı.
ZREPORT.VERGI_OTV Decimal Z-Raporda ki toplam OTV tutarı (Eğer varsa)
ZREPORT.ZREPORT_DETAIL ComplexType Z-Rapora ait durum, rapor vs detayları
ZREPORT_DETAIL.STATUS String Z-Raporun durumu
ZREPORT_DETAIL.STATUS_CODE Integer Z-Raporun durum kodu
ZREPORT_DETAIL.STATUS_DESCRIPTION String Z-Raporun durum açıklaması
ZREPORT_DETAIL.REPORT_IDENTIFIER String Z-Raporun GİB'e raporlandığı rapora ait ETTN bilgisi. Raporlanmadı ise eleman dönülmez.
ZREPORT_DETAIL.REPORT_DATE String Z-Raporun GİB'e raporlandığı raporun tarihi. Raporlanmadı ise eleman dönülmez.
ZREPORT_DETAIL.REPORT_STATUS_CODE String Z-Raporun GİB'e raporlandığı raporun durum kodu. Raporlanmadı ise eleman dönülmez.
ZREPORT_DETAIL.REPORT_STATUS_DESCRIPTION String Z-Raporun GİB'e raporlandığı raporun durum açıklaması. Raporlanmadı ise eleman dönülmez.

BA/BS Mutabakat Durum Sorgulama (GetBABSReconciliationStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME, CHANNEL_NAME alanı zorunludur.
RECONCILIATION_SEARCHING ComplexType Evet Sorgulanacak mutabakatlara ait kriterleri belirlemek için kullanılır.
SEARCH_KEY.CUSTOMER_IDENTIFIER String Hayır Durumu sorgulanacak müşteri VKN/TCKN. Bir dönemde sadece bir cari/mükellefe ait mutabakatın durumunu sorgulamak için kullanılabilir.
SEARCH_KEY.ACCOUNTING_PERIOD String Evet Durumu sorgulanacak mutabakat dönemi. Bir dönemde ki bütün mutabakatların durumunu sorgulamak için kullanılır.

Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
RECONCILIATION_STATUS ComplexType Mutabakat durum sonuç objesi. Eğer aranan kritere uygun mutabakat bulunmuyorsa sonuç boş kayıt döner.
RECONCILIATION_STATUS.RECONCILATION ComplexType Durumu sorgulaması kriterine uyan mutabakat objesi.
RECONCILATION.CUSTOMER_IDENTIFIER String Mutabakat gönderilen mükellef VKN/TCKN.
RECONCILIATION.ACCOUNTING_PERIOD String Mutabakat dönemi. Format: 201807
RECONCILIATION.STATUS_CODE String Mutabakat durum kodu. Detaylar için E-Mutabakat durum kodları başlığını inceleyebilirsiniz.
RECONCILIATION.STATUS_DESCRIPTION String Mutabakat durum açıklaması. Detaylar için E-Mutabakat durum kodları başlığını inceleyebilirsiniz.
RECONCILIATION.CREATE_DATE DateTime Mutabakatın özel entegratör sistemine yüklendiği tarih.
RECONCILIATION.EMAIL ComplexType Mutabakatın e-posta durum sonuç objesi
RECONCILIATION.EMAIL_STATUS_CODE String Mutabakatın e-posta durum kodu. Detaylar için E-Mutabakat e-posta durum kodları başlığını inceleyebilirsiniz.
RECONCILIATION.EMAIL_STATUS_DESCRIPTION String Mutabakatın e-posta durum açıklaması. Detaylar için E-Mutabakat e-posta durum kodları başlığını inceleyebilirsiniz.
RECONCILIATION.EMAIL_STATUS_DATE DateTime Mutabakatın e-posta durum tarihi.

E-Mutabakat Durumları

Durum Kodu Durum Açıklaması
100 KUYRUĞA EKLENDİ
105 TASLAK OLARAK EKLENDİ
110 İŞLENİYOR
120 İŞLENDİ
125 MUTABIK
126 MUTABIK DEĞİL

E-Mutabakat E-Posta Gönderim Durumları

Durum Kodu Durum Açıklaması
100 HENÜZ İŞLENMEDİ
110 İŞLENİYOR
120 İŞLENDİ
130 E-POSTA GÖNDERİM SONLANDI

Faturalama Webservisi

E-Dönüşüm hizmeti alan kullanıcıların Kontör ve Bakiye durumlarını, Borç durumlarını ve Kullanım durumlarını sorgulayabilecekleri webservistir.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Dikkat Edilecek Hususlar

Uygulamanızı tasarlarken aşağıda ki bilgiler faydalı olacaktır:

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login servisi ile oturum açarak session id alınacak. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. Borç Sorgulama(GetBalance) ile ne kadar borçlarının olduğu sorgulanabilinir. Detaylar için ilgili bölümü inceleyiniz.
  3. Kontör Bakiye Sorgulama(GetCredit) ile yüklenen toplam kontör, mevcut kalan kontör miktarı ve son kontör kullanımı sorgulanılabilinir. CREDIT_DETAIL_FLAG ile kullanıcıya tanımlanmış olan aktif kontörler detaylı olarak öğrenmek için kullanılmaktadır.
  4. Kullanım Sorgulama(GetUsage) ile kullanıcının belirlediği periyotta, seçilen ürüne ve gönderim yönüne göre kullanım miktarı sorgulaması yapılır.
  5. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı oturum kapatılabilir.

Ortak Kullanılan Eleman

Her webservis isteğinde gönderilmesi beklen ortak elemandır (REQUEST_HEADER)

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login Metodunda sistem tarafında gönderilen SESSION_ID bilgisi. Sonraki tüm metod çağrılarında parametre olarak metoda geçmelidir.
APPLICATION_NAME String Evet Metodu çağıran uygulamanın adı. Mutlaka uygulama adının yazılması gerekmektedir.
CHANNEL_NAME String Evet Metodun çağrıldığı kanal adı.
COMPRESSED String Hayır İçerikte taşınan bilginin ZIP formatında sıkıştırılmış mı gönderildiği/talep edildiği bilgisi. Belge gönderim ve belge okuma servislerinde gönderilen değere göre işlem yapılmaktadır.
CLIENT_TXN_ID String Hayır İstemci uygulama tarafından işlem için üretilen işlem bilgisi (transaction id) varsa istek esnasında gönderilip, sonuçta alabileceğiniz bir değerdir. request/response eşleşmesi yapmak için kullanılabilir.
INT_PARENT_TXN_ID String Hayır İstemci uygulamasında ana modül entitileri ile ilişkilendirelmek istenen ana transaction ID.
ACTION_DATE String Hayır Metodun çağrılma tarihi
CHANGE_INFO Array Hayır Bu eleman ile eğer verilerde bir değişiklik yapılacak ise o değişikliği ait bilgi.
REASON String Hayır İşlem sebebi. Fatura gönderme, fatura alma vs.
HOST_NAME String Hayır Metodu çağıran sunucunun host bilgisi.
SIMULATION_FLAG String Hayır Metod çağrılır ancak arkadaki işlem yapılmaz.

Borç Sorgulama (GetBalance)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
BALANCE_DETAIL_FLAG Enum Hayır Borç bilgisine dair detay istenmesi veya istenmemesi. Y ve N değerleri alır. Değer verilmemesi durumunda N olarak kabul edilir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
TOTAL_BALANCE String Toplam borç tutarı.
INVOICE_COUNT String Borçlu olunan fatura sayısı.
MESSAGE String Borç bilgisine dair dönülen mesaj.
BALANCE_DETAIL ComplexType Borçlu olunan faturaları içerisinde bulundurur.
BALANCE_DETAIL.INVOICE ComplexType Borçlu olunan faturalara dair detayı içerisinde bulundurur.
INVOICE.INVOICE_NO String Borçlu olunan faturanın numarası.
INVOICE.INVOICE_DATE String Borçlu olunan fatura tarihi.
INVOICE.PERIOD String Borçlu olunan faturanın yer aldığı yıl/ay değeri.
INVOICE.PAYABLE_AMOUNT String Ödenmesi gereken tutar.

Kontör Bakiye Sorgulama (GetCredit)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
CREDIT_DETAIL_FLAG Enum Hayır Kontör bilgisine dair detay istenmesi veya istenmemesi. Y ve N değerleri alır. Değer verilmemesi durumunda N olarak kabul edilir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CREDIT_LOADED String Toplam yüklenmiş kontör miktarı.
CREDIT_BALANCE String Mevcut kalan kontör miktarı.
LAST_PROCESS_TIME Date En son kontör kullanılma zamanı.
MESSAGE String Kontör kullanıma dair bilgi mesajı.
CREDIT_DETAIL ComplexType Yüklenmiş kontör bilgilerini içinde bulunduran yapı.
CREDIT_DETAIL.CREDIT ComplexType Yüklenen kontörlere ait detayı bulunduran yapı.
CREDIT.CDATE Date Kontörün tanımlanma tarihi.
CREDIT.EXPIRE_DATE Date Kontörün kullanım hakkının sona erme tarihi.
CREDIT.LOADED_AMOUNT String Yüklenmiş kontör adeti.
CREDIT.REMAINING_AMOUNT String Kalan kontör adeti.
CREDIT.TARIFF_NAME String Tanımlanmış kontör tarifesinin adı.
CREDIT.PRICE String Tarifenin ücreti.

Kullanım Sorgulama (GetUsage)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
REQUEST_HEADER ComplexType Evet Request Header objesi içerisinde SESSION_ID ve APPLICATION_NAME alanı zorunludur.
PERIOD String Hayır Kullanım sorgulanacak yıl/ay değeri girilir. Değer girilmediği zaman son 6 aylık kullanımlar dönülür. Format : 201812
PRODUCT_TYPE Enum Hayır Kullanımı sorgulanmak istenen ürün bilgisi girilir. Alabileceği değerler : ALL, EFATURA, EARSIV, EIRSALIYE, ESMM, EMM, EMUTABAKAT, SMS ve MAIL.
DIRECTION Enum Evet Kullanımı sorgulanmak istenen ürünün hangi yönde gönderildiği bilgisi girilir. Alabileceği değerler : ALL, INBOX ve OUTBOX.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
LAST_PROCESS_TIME ComplexType Kullanımları bulunduran yapıdır.
LAST_PROCESS_TIME.USAGE ComplexType Kullanım aylarını bulunduran yapıdır.
USAGE.PERIOD String Kullanımların ait olduğu yıl/ay değeridir.
USAGE.TOTAL_USAGE String Tüm ürünlerin o ay içerisindeki toplam kullanım adetidir.
USAGE.PRODUCT ComplexType Ürünlere göre kullanım adetlerinin tutulduğu yapıdır.
PRODUCT.EFATURA String E-Fatura kullanım adeti.
PRODUCT.EARSIV String E-Arşiv Fatura kullanım adeti.
PRODUCT.EIRSALIYE String E-İrsaliye kullanım adeti.
PRODUCT.ESMM String E-Serbest Meslek Makbuzu kullanım adeti.
PRODUCT.EMM String E-Müstahsil Makbuzu kullanım adeti.
PRODUCT.EMUTABAKAT String E-Mutabakat kullanım adeti.
PRODUCT.SMS String Sms kullanım adeti.
PRODUCT.MAIL String Mail kullanım adeti.

Diğer E-Dönüşüm Servisleri

Tüm e-Dönüşüm modüllerin içerisinde bulunduran webservistir. Lütfen bu servisi Özel entegratör ile kararlaştırmadan kullanmayınız.

Webservice Endpoint (WSDL) URL

Ürün Endpoint URL
Kimlik Doğrulama https://efaturatest.izibiz.com.tr/AuthenticationWS?wsdl
E-Fatura Webservis https://efaturatest.izibiz.com.tr/EInvoiceWS?wsdl
E-Arşiv Fatura Webservis https://efaturatest.izibiz.com.tr/EIArchiveWS/EFaturaArchive?wsdl
E-İrsaliye Webservis https://efaturatest.izibiz.com.tr/EIrsaliyeWS/EIrsaliye?wsdl
E-Müstahsil Webservis http://efaturatest.izibiz.com.tr/CreditNoteWS/CreditNote?wsdl
E-Mutabakat Webservis http://efaturatest.izibiz.com.tr/ReconciliationWS?wsdl
E-Serbest Meslek Webservis https://efaturatest.izibiz.com.tr/SmmWS?wsdl
E-ZRapor Webservis https://efaturatest.izibiz.com.tr/ZReportWS?wsdl
Faturalama Webservis https://efaturatest.izibiz.com.tr/BillingWS?wsdl

Portal Uygulaması

Entegrasyon sürecinde Portal uygulamamızı aşağıda ki durumlar için kullanabilirsiniz:

Test Portal Adresimiz: https://portaltest.izibiz.com.tr

Test portali erişim bilgileri için entegrasyon@izibiz.com.tr adresi ile iletişime geçebilirsiniz.

Dikkat Edilecek Hususlar

Uygulamanızı tasarlarken aşağıda ki bilgiler faydalı olacaktır:

  1. Proxy servisinde bulunan Login servisi ile oturum açarak session id alınacak. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. Proxy servisinde bulunan Logout metodu ile kullanıcı mutabakat programını kapatınca oturum kapatılabilir.
  3. Proxy servisinde bulunan SendInvoice, SendEInvoice, LoadInvoice, GetInvoice, GetUserList, CheckUser, MarkInvoice, GetInvoiceStatus, GetUserListBinary, GetAllUserListBinary metodlarına dair detaylar için E-Fatura kısmına bakınız.
  4. Proxy servisinde bulunan SendEArchiveInvoice, CancelEArchiveInvoice, ReadFromArchive, GetEArchiveReport, GetEArchiveInvoiceStatus, SendInvoiceByXml metodlarına dair detaylar için E-Arşiv Fatura kısmına bakınız.
  5. Proxy servisinde bulunan SendDespatchAdvice, LoadDespatchAdvice, GetDespatchAdviceStatus, GetDespatchAdvice, MarkDespatchAdvice, SendReceiptAdvice, LoadReceiptAdvice, GetReceiptAdviceStatus, GetReceiptAdvice, MarkReceiptAdvice metodlarına dair detaylar için E-İrsaliye kısmına bakınız.
  6. Proxy servisinde bulunan GetSmm, GetSmmStatus, SendSmm, CancelSmm, LoadSmm metodlarına dair detaylar için E-Serbest Meslek Makbuzu kısmına bakınız.
  7. Proxy servisinde bulunan CancelCreditNote, GetCreditNote, GetCreditNoteReport, GetCreditNoteStatus, LoadCreditNote, MarkCreditNote, SendCreditNote metodlarına dair detaylar için E-Müstahsil kısmına bakınız.
  8. Proxy servisinde bulunan GetReconciliationStatus, SendMailReconciliation, SendReconciliation metodlarına dair detaylar için E-Mutabakat kısmına bakınız.

E-Fatura Metodları

e-Fatura servisi, e-fatura mükellefinin fatura gönderimini ve gelen faturaları kendisi sistemine çekmesini sağlayan webservis uygulamasının clientıdır.

Dikkat Edilecek Hususlar(E-Fatura)

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login servisi ile oturum açarak session id alınacak. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. E-Fatura Mükellefi olan firmalara kesilen faturaları UBL-TR formatına dönüştürerek (ekte örnek fatura bulunuyor) İzibiz sunucularına gönderebilirsiniz. Her fatura içerisinde faturanın görüntülenmesini sağlayan XSLT dokümanı olmalıdır.
  3. SendInvoice metodu ile fatura gönderimi yapılacak. Gönderim esnasında eğer faturanın alıcısına ait birden fazla Posta Kutusu bulunuyorsa ekranda seçilerek gönderilmesi sağlanmalı. Sadece 1 adet PK adresi varsa seçim yapılmadan gönderim sağlanabilir.
  4. GetInvoiceStatus metodu ile gelen/giden faturaların durumları sorgulanacak. Nihai duruma erişene kadar faturanın durumu özel entegratör sisteminden minumum 4 saatte bir sorgulanmalıdır. Sık sorgulama yapmayınız.
  5. GetInvoice metodu ile firmaya gelen faturalar müşteri bilgisayarına aktarılır. İzibiz sistemlerine gelen yeni faturaları almanız gerekmektedir. Servis ile yeni gelen en fazla 100 adet faturayı çekebilirsiniz. Eğer dönen listede 100 adet fatura varsa yeniden getinvoice servisi çağırılarak başka fatura olup olmadığı kontrol edilmelidir. Dönen listede 100den az fatura varsa tekrar sorgulama yapmaya gerek yoktur. Fatura çekme zamanlayıcı ile yapılıyorsa en az 15 dk bir servis çağırılmalıdır.
  6. MarkInvoice metodu ile başarılı şekilde teslim alınan faturalar izibiz sistemlerinde okundu olarak işaretlenir. Böylece bir sonra ki getinvoice servisi çağrılınca dönülmez.
  7. Gelen bir faturaya 8 gün içerisinde kabul veya red gönderilebilir. 8 günü geçtikten sonra kabul/red yapılması engellenmelidir. Temel faturalar için yanıt gönderilmesi kısıtlanmalıdır.
  8. Ticari bir faturaya elektronik ortamda en fazla 1 adet yanıt gönderilebilir. Bundan dolayı bir faturaya başarıyla yanıt (kabul/red) gönderilmişse farklı bir yanıt gönderilmesi kısıtlanmalıdır.
  9. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı e-fatura programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

Fatura Gönderme(SendInvoiceByXml)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet İşlem yapılacak oturum. Oturum açmak için Login metodu kullanılır.
INVOICE_PROPERTIES Complex Evet Fatura gönderimi ile ilgili parametreler
INVOICE_PROPERTIES.INVOICE_TYPE String Evet E-Fatura olarak göndermek için EINVOICE E-Arşiv olarak göndermek için EARCHIVE değeri gönderilmelidir.
INVOICE_PROPERTIES.EMAIL_FLAG boolean Hayır Değerler [true,false]: E-Arşiv faturalarını e-posta olarak iletmek için true değeri gönderilmelidir. Parametre gönderilmez veya false değeri gönderilirse fatura e-posta gönderilmez. E-Fatura için bu parametre dikkate alınmaz.
INVOICE Complex Evet Gönderilecek fatura alanları
INVOICE.PROFILE_ID String Evet Gönderilecek fatura profili. E-Arşiv için EARSIVFATURA olmalıdır. E-Fatura için [TEMELFATURA, TICARIFATURA, YOLCUBERABERFATURA, IHRACAT] değerleri içerebilir.
INVOICE.INVOICE_ID String Evet Faturanın numarası (AAA2019000000001 formatında olmak zorunda)
INVOICE.UUID String Evet Faturanın ETTN numarası
INVOICE.ISSUE_DATE String Evet Fatura Tarihi (YYYY-AA-GG formatında)
INVOICE.ISSUE_TIME String Evet Fatura Düzenleme Saati (SS:DD:ss)
INVOICE.INVOICE_TYPE_CODE String Evet E-Fatura için [SATIS, IADE, TEVKIFAT, ISTISNA, OZELMATRAH, IHRACKAYITLI]. E-Arşiv için SATIS ve IADE dışında değer gönderilemez.
INVOICE.DOCUMENT_CURRENCY_CODE String Evet Fatura para birimi [TRY, USD, EUR vs] Diğer para birimleri için Kod Listesi dokümanında Para Birimi Kodları bölümünü inceleyiniz.
INVOICE.LINE_COUNT_NUMERIC String Evet Fatura satır sayısı
INVOICE.CALCULATION_RATE String Hayır Dövizli faturalar kur bilgisi
INVOICE.NOTE Array Hayır Faturaya eklenecek notlar. Çoklanabilir.
INVOICE.ORDER_REFERENCE Complex Hayır Sipariş bilgileri
INVOICE.ORDER_REFERENCE.ID String Hayır Sipariş numarası
INVOICE.ORDER_REFERENCE.ISSUE_DATE String Hayır Sipariş tarihi
INVOICE.DESPACTH_DOCUMENT_REFERENCE Complex Hayır İrsaliye bilgileri. Çoklanabilir.
DESPACTH_DOCUMENT_REFERENCE.ID String Hayır İrsaliye numarası
DESPACTH_DOCUMENT_REFERENCE.ISSUE_DATE String Hayır İrsaliye tarihi
INVOICE.ADDITIONAL_DOCUMENT_REFERENCE Complex Evet Ek belgeler. Çoklanabilir. En az fatura şablonu (xslt) eklenmelidir.
ADDITIONAL_DOCUMENT_REFERENCE.ID String Hayır Ek belge id
ADDITIONAL_DOCUMENT_REFERENCE.ISSUE_DATE String Hayır Ek belge tarihi
ADDITIONAL_DOCUMENT_REFERENCE.DOCUMENT_TYPE_CODE String Hayır Ek belge tip kodu. Fatura şablonu için XSLT değeri gönderilmelidir.
ADDITIONAL_DOCUMENT_REFERENCE.DOCUMENT_TYPE String Hayır Ek belge tipi
ADDITIONAL_DOCUMENT_REFERENCE.ATTACHMENT Base64 Evet Belgenin Base64Binary değeri
INVOICE.ACCOUNTING_SUPPLIER_PARTY Complex Evet Faturayı düzenleyen tarafın bilgileri
ACCOUNTING_SUPPLIER_PARTY.PARTY Complex Hayır Gönderen firma bilgileri
PARTY.WEB_SITE_URI String Hayır Gönderen firma websitesi (http://www.firmaadres.com formatında)
PARTY.PARTY_IDENTIFICATION Complex Hayır Gönderen firmayı tanımlayan bilgiler. VKN/TCKN no bilgisi ekleneblir. Çoklanabilir. Bu alan çoklanarak şu bilgiler eklenebilir.
PARTY.PARTY_IDENTIFICATION.ID String Evet Düzenleyen tarafı tanımlayan bilgi. VKN veya TCKN bilgisi olmak zorundadır.
PARTY.PARTY_IDENTIFICATION.TYPE String Evet Düzenleyen tarafın vergi kimlik numarası veya TC kimlik numarası zorunludur. Kod Listesi dokümanında Kimlik Şemaları bölümünü inceleyiniz.
PARTY.NAME String Evet Düzenleyen firma ünvanı
PARTY.POSTAL_ADDRESS Complex Evet Düzenleyen firma adresi
POSTAL_ADDRESS.STREET_NAME String Hayır Adres (Sokak mahalle cadde vs)
POSTAL_ADDRESS.BUILDING_NUMBER String Hayır Bina numarası
POSTAL_ADDRESS.CITY_SUB_DIVISION_NAME String Hayır İlçe
POSTAL_ADDRESS.CITY_NAME String Hayır İl
POSTAL_ADDRESS.POSTAL_ZONE String Hayır Posta kodu
POSTAL_ADDRESS.COUNTRY String Evet Ülke. (Türkiye)
PARTY.PARTY_TAX_SCHEME String Evet Vergi Dairesi.
PARTY.CONTACT Complex Hayır Düzenleyen firma irtibat bilgileri
CONTACT.TELEPHONE String Hayır Telefon numarası
CONTACT.TELEFAX String Hayır Faks numarası
CONTACT.ELECTRONIC_MAIL String Hayır E-Posta adresi
PARTY.FIRST_NAME String Hayır Düzenleyen şahıs firması ise firma sahibinin Adı zorunlu
PARTY.FAMILY_NAME String Hayır Düzenleyen şahıs firması ise firma sahibinin Soyadı zorunlu
INVOICE.ACCOUNTING_CUSTOMER_PARTY Complex Evet Faturayı alan tarafın bilgileri
PARTY.WEB_SITE_URI String Hayır Alıcı firma websitesi (http://www.firmaadres.com formatında)
PARTY.PARTY_IDENTIFICATION Complex Hayır Alıcı firmayı tanımlayan bilgiler. VKN/TCKN no bilgisi ekleneblir. Çoklanabilir. Bu alan çoklanarak şu bilgiler eklenebilir.
PARTY.PARTY_IDENTIFICATION.ID String Evet Alıcı tarafı tanımlayan bilgi. VKN veya TCKN bilgisi olmak zorundadır.
PARTY.PARTY_IDENTIFICATION.TYPE String Evet Alıcı tarafın vergi kimlik numarası veya TC kimlik numarası zorunludur. Kod Listesi dokümanında Kimlik Şemaları bölümünü inceleyiniz.
PARTY.NAME String Evet Alıcı firma ünvanı
PARTY.POSTAL_ADDRESS Complex Evet Alıcı firma adresi
POSTAL_ADDRESS.STREET_NAME String Hayır Adres (Sokak mahalle cadde vs)
POSTAL_ADDRESS.BUILDING_NUMBER String Hayır Bina numarası
POSTAL_ADDRESS.CITY_SUB_DIVISION_NAME String Hayır İlçe
POSTAL_ADDRESS.CITY_NAME String Hayır İl
POSTAL_ADDRESS.POSTAL_ZONE String Hayır Posta kodu
POSTAL_ADDRESS.COUNTRY String Evet Ülke. (Türkiye)
PARTY.PARTY_TAX_SCHEME String Evet Vergi Dairesi. Alıcısı firma olanlar için zorunludur. Nihai tüketiciye düzenenlenen faturalar için zorunlu değildir.
PARTY.CONTACT Complex Hayır Alıcı firma irtibat bilgileri
CONTACT.TELEPHONE String Hayır Telefon numarası
CONTACT.TELEFAX String Hayır Faks numarası
CONTACT.ELECTRONIC_MAIL String Hayır E-Posta adresi. Bu alan boş ise mail gönderimi sağlanamaz.
PARTY.FIRST_NAME String Hayır Alıcı firma şahıs firması ise firma sahibinin Adı zorunlu veya nihai tüketicinin adı
PARTY.FAMILY_NAME String Hayır Alıcı firma şahıs firması ise firma sahibinin Soyadı zorunlu veya nihai tüketici soyadı
INVOICE.DELIVERY Complex Evet Gönderim, Taşıma, Sevkiyat Bilgileri. E-Arşiv için Zorunludur.
DELIVERY.CARRIER_PARTY Complex Evet Taşıyan firma bilgiler. Internet üzerinden yapılan satışlar için düzenlenen E-Arşiv fatura için zorunludur.
CARRIER_PARTY.ID String Evet Taşıyan firma/şahıs 10 hane VKN veya 11 hane TCKN değeri
CARRIER_PARTY.TYPE String Evet Değerler [VKN,TCKN]. Taşıyan kurumsal firma ise VKN, şahıs firması veya şahıs ise TCKN gönderilmeldir.
CARRIER_PARTY.NAME String Hayır Taşıyan firma ünvanı
CARRIER_PARTY.FIRST_NAME String Hayır Taşıyan şahıs adı
CARRIER_PARTY.FAMILY_NAME String Hayır Taşıyan şahıs soyadı
CARRIER_PARTY.POSTAL_ADDRESS Complex Evet Taşıyan firma adresi
POSTAL_ADDRESS.STREET_NAME String Hayır Adres (Sokak mahalle cadde vs)
POSTAL_ADDRESS.BUILDING_NUMBER String Hayır Bina numarası
POSTAL_ADDRESS.CITY_SUB_DIVISION_NAME String Hayır İlçe
POSTAL_ADDRESS.CITY_NAME String Hayır İl
POSTAL_ADDRESS.POSTAL_ZONE String Hayır Posta kodu
POSTAL_ADDRESS.COUNTRY String Hayır Ülke. (Türkiye)
CARRIER_PARTY.ACTULA_DEPATCH_DATE String Hayır Fiili Sevk Tarihi
INVOICE.PAYMENT_MEANS Complex Hayır Ödeme Şekli. Internet satışları için zorunludur.
PAYMENT_MEANS.PAYMENT_MEANS_CODE String Hayır Ödeme şeklinin kodu
PAYMENT_MEANS.PAYMENT_DUE_DATE String Hayır Son ödeme günü yıl-ay-gün formatında
PAYMENT_MEANS.PAYMENT_CHANNEL_CODE String Hayır Ödeme kanalı kodu
PAYMENT_MEANS.INSTRUCTION_NOTE String Hayır Ödeme ile ilgili açıklamalar serbest metin
INVOICE.PAYMENT_TERMS Complex Hayır Ödeme Koşulları
PAYMENT_TERMS.PENALTY_SURCHARGE_PERCENT String Hayır Ödemenin gecikmesi durumunda uygulanacak ceza oranı numerik olarak girilir.
PAYMENT_TERMS.AMOUNT Decimal Hayır Ödemenin gecikmesi durumunda uygulanacak ceza tutarı numerik olarak girilir.
PAYMENT_TERMS.NOTE String Hayır Ödeme koşulları ile ilgili açıklama serbest metin olarak girilir.
INVOICE.TAX_TOTAL Complex Hayır Vergi Toplamı
TAX_TOTAL.TAX_AMOUNT Decimal Hayır Toplam vergi tutarı girilir.
TAX_TOTAL.TAX_SUB_TOTAL Complex Hayır Vergi ara toplamı. Çoklanarak birden fazla vergi tipi eklenebilir.
TAX_SUB_TOTAL.TAX_ABLE_AMOUNT Decimal Hayır Verginin üzerinden hesaplandığı tutar (matrah) bilgisi
TAX_SUB_TOTAL.TAX_AMOUNT Decimal Hayır Hesaplanan Vergi Tutarı
TAX_SUB_TOTAL.CALCULATION_SEQ_NUMERIC String Hayır Vergi hesaplamasında sıra numarası.
TAX_SUB_TOTAL.PERCENT Decimal Hayır Vergi oranı
TAX_SUB_TOTAL.TAX_NAME String Hayır Vergi türü ismi. Kod Listesi dokümanında Vergi Kodları Listesini inceleyiniz.
TAX_SUB_TOTAL.TAX_TYPE_CODE String Hayır Vergi Tipi Kodu. Kod Listesi dokümanında Vergi Kodları Listesini inceleyiniz.
TAX_SUB_TOTAL.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna kodu Bknz. Kod listeleri
TAX_SUB_TOTAL.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna sebepleri serbest metin. Bknz. Kod listeleri
INVOICE.WITH_HOLDING_TAX Complex Hayır Tevkifatlı faturalarda, uygulanan tevkifat miktarları, oranları ve diğer bilgileri girilir.
WITH_HOLDING_TAX.TAX_AMOUNT Decimal Hayır Tevkifat tutari
WITH_HOLDING_TAX.TAX_SUB_TOTAL Complex Hayır Tevkifat ara toplamı. Çoklanarak birden fazla tevkifat tipi eklenebilir.
WITH_HOLDING_TAX.TAX_ABLE_AMOUNT Decimal Hayır Tevkifatın üzerinden hesaplandığı tutar (matrah) bilgisi
WITH_HOLDING_TAX.TAX_AMOUNT Decimal Hayır Hesaplanan Tevkifat Tutarı
WITH_HOLDING_TAX.CALCULATION_SEQ_NUMERIC String Hayır Tevkifat hesaplamasında sıra numarası.
WITH_HOLDING_TAX.PERCENT Decimal Hayır Tevkifat oranı
WITH_HOLDING_TAX.TAX_NAME String Hayır Tevkifat türü ismi. Kod Listesi dokümanında Tevkifat Kodları Listesi bölümünü inceleyiniz.
WITH_HOLDING_TAX.TAX_TYPE_CODE String Hayır Tevkifat Tipi Kodu. Kod Listesi dokümanında Tevkifat Kodları Listesi bölümünü inceleyiniz.
WITH_HOLDING_TAX.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna kodu Bknz. Kod listeleri
WITH_HOLDING_TAX.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna sebepleri serbest metin. Bknz. Kod listeleri
INVOICE.ALLOWANCE_CHARGES Complex Hayır Iskonto / Artırım. Eğer iskonto veya artırım uygulanacaksa eklenir. Birden fazla iskonto/artırım uygulamak için çoklanır.
ALLOWANCE_CHARGES.CHARGE_INDICATOR String Hayır Eğer artırım ise Y değilse N değeri doldurulur
ALLOWANCE_CHARGES.MULTIPLIER_FACTOR_NUMERIC Decimal Hayır Iskonto/ Artırım Oranı
ALLOWANCE_CHARGES.AMOUNT Decimal Hayır Iskonto/ Artırım Tutarı
ALLOWANCE_CHARGES.BASE_AMOUNT Decimal Hayır Iskonto veya artırımın uygulandığı tutar
INVOICE.LEGAL_MONETARY_TOTAL Complex Evet Fatura Parasal Toplam Bilgileri
LEGAL_MONETARY_TOTAL.LINE_EXTENSION_AMOUNT Decimal Evet Mal/hizmet miktarı ile Mal/hizmet birim fiyatının çarpımı ile bulunan tutardır.
LEGAL_MONETARY_TOTAL.TAX_EXCLUSIVE_AMOUNT Decimal Evet Vergiler hariç, ıskonto veya artırım dahil toplam tutarı (Vergi Matrahı)
LEGAL_MONETARY_TOTAL.TAX_INCLUSIVE_AMOUNT Decimal Evet Vergiler, ıskonto ve artırım dahil toplam tutar girilir.
LEGAL_MONETARY_TOTAL.ALLOWANCE_TOTAL_AMOUNT Decimal Evet Toplam ıskonto tutarı
LEGAL_MONETARY_TOTAL.PAYABLE_AMOUNT Decimal Evet Ödenecek tutar
INVOICE.INVOICE_LINE Complex Evet Mal/Hizmet Kalemleri
INVOICE_LINE.ID String Evet Kalem sıra numarası
INVOICE_LINE.INVOICE_QUANTITY Decimal Evet Mal/hizmet miktarı
INVOICE_LINE.UNITCODE String Evet Mal/hizmet miktar birimi Bknz. Kod listeleri
INVOICE_LINE.LINE_EXTENSION_AMOUNT Decimal Evet Mal/hizmet miktarı ile Mal/hizmet birim fiyatının çarpımı ile bulunan tutar
INVOICE_LINE.ALLOWANCE_CHARGES Complex Hayır Satırda Iskonto / Artırım. Eğer iskonto veya artırım uygulanacaksa eklenir. Birden fazla iskonto/artırım uygulamak için çoklanır.
ALLOWANCE_CHARGES.CHARGE_INDICATOR String Hayır Eğer artırım ise Y değilse N değeri doldurulur
ALLOWANCE_CHARGES.MULTIPLIER_FACTOR_NUMERIC Decimal Hayır Iskonto/ Artırım Oranı
ALLOWANCE_CHARGES.AMOUNT Decimal Hayır Iskonto/ Artırım Tutarı
ALLOWANCE_CHARGES.BASE_AMOUNT Decimal Hayır Iskonto veya artırımın uygulandığı tutar
INVOICE_LINE.TAX_TOTAL Complex Hayır Satırda Vergi Toplamı
TAX_TOTAL.TAX_AMOUNT Decimal Hayır Toplam vergi tutarı girilir.
TAX_TOTAL.TAX_SUB_TOTAL Complex Hayır Vergi ara toplamı. Çoklanarak birden fazla vergi tipi eklenebilir.
TAX_SUB_TOTAL.TAX_ABLE_AMOUNT Decimal Hayır Verginin üzerinden hesaplandığı tutar (matrah) bilgisi
TAX_SUB_TOTAL.TAX_AMOUNT Decimal Hayır Hesaplanan Vergi Tutarı
TAX_SUB_TOTAL.CALCULATION_SEQ_NUMERIC String Hayır Vergi hesaplamasında sıra numarası.
TAX_SUB_TOTAL.PERCENT Decimal Hayır Vergi oranı
TAX_SUB_TOTAL.TAX_NAME String Hayır Vergi türü ismi. Kod Listesi dokümanında Vergi Kodları Listesini inceleyiniz.
TAX_SUB_TOTAL.TAX_TYPE_CODE String Hayır Vergi Tipi Kodu. Kod Listesi dokümanında Vergi Kodları Listesini inceleyiniz.
TAX_SUB_TOTAL.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna kodu Bknz. Kod listeleri
TAX_SUB_TOTAL.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna sebepleri serbest metin. Bknz. Kod listeleri
INVOICE_LINE.WITH_HOLDING_TAX Complex Hayır Satırda uygulanan tevkifat miktarları, oranları ve diğer bilgileri girilir.
WITH_HOLDING_TAX.TAX_AMOUNT Decimal Hayır Tevkifat tutari
WITH_HOLDING_TAX.TAX_SUB_TOTAL Complex Hayır Tevkifat ara toplamı. Çoklanarak birden fazla tevkifat tipi eklenebilir.
WITH_HOLDING_TAX.TAX_ABLE_AMOUNT Decimal Hayır Tevkifatın üzerinden hesaplandığı tutar (matrah) bilgisi
WITH_HOLDING_TAX.TAX_AMOUNT Decimal Hayır Hesaplanan Tevkifat Tutarı
WITH_HOLDING_TAX.CALCULATION_SEQ_NUMERIC String Hayır Tevkifat hesaplamasında sıra numarası.
WITH_HOLDING_TAX.PERCENT Decimal Hayır Tevkifat oranı
WITH_HOLDING_TAX.TAX_NAME String Hayır Tevkifat türü ismi. Kod Listesi dokümanında Tevkifat Kodları Listesi bölümünü inceleyiniz.
WITH_HOLDING_TAX.TAX_TYPE_CODE String Hayır Tevkifat Tipi Kodu. Kod Listesi dokümanında Tevkifat Kodları Listesi bölümünü inceleyiniz.
WITH_HOLDING_TAX.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna kodu Bknz. Kod listeleri
WITH_HOLDING_TAX.TAX_EXEMPTION_REASON_CODE String Hayır Vergi muafiyet, istisna sebepleri serbest metin. Bknz. Kod listeleri
INVOICE_LINE.ITEM_NAME String Hayır Mal/hizmet adı serbest metin
INVOICE_LINE.ITEM_PRICE Decimal Hayır Mal/hizmetin birim fiyatı
INVOICE_LINE.BUYER_IDENTIFICATION Decimal Hayır Alıcının mal/hizmete verdiği tanımlama bilgisi. barkod bilgisi girilebilir.

Fatura Gönderme(SendInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
SENDER_VKN String Hayır Göndericinin VKNsi.
SENDER_ALIAS String Hayır Göndericinin ünvanı.
RECEIVER_VKN String Hayır Alıcının VKNsi.
RECEIVER_ALIAS String Hayır Alıcının ünvanı.
INVOICE_CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş içeriği.
COMPRESSED String Hayır Binary Fatura içeriği sıkıştırılmış/sıkıştırılmamış bilgisi. Varsayılan değer Y olduğu için gönderilmediği durumda fatura sıkıştırılarak/ziplenerek gönderilmesi beklenmektedir. Faturayı XML olarak göndermek için mutlaka eleman eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Fatura Gönderme(SendEInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
SENDER_VKN String Hayır Göndericinin VKNsi.
SENDER_ALIAS String Hayır Göndericinin ünvanı.
RECEIVER_VKN String Hayır Alıcının VKNsi.
RECEIVER_ALIAS String Hayır Alıcının ünvanı.
RECEIVER_EMAIL String Hayır Alıcının e-posta adresi. Format: invoice@firma.com.tr
INVOICE_TYPE Enum Evet E-Faturanın tipi. SATIS veya IADE girilir.
INVOICE_CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş içeriği.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Taslak Fatura Yükleme (LoadInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
INVOICE_CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş içeriği.
INVOICE_FORMAT String Evet



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Fatura Okuma (GetInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
DIRECTION String Hayır Belge yönü. Gelen veya Giden faturaları çekmek için kullanılabilir. Gelen faturaları çekmek için IN, giden faturaları çekmek için OUT değeri gönderilebilir. Varsayılan değer IN olduğu için eğer parametre gönderilmezse sadece gelen faturalar dönülecektir. Gönderilebilecek değerler: IN, OUT
LIMIT Integer Hayır Kaç fatura okunmak istendiği. Eğer eleman gönderilmezse 10 adet fatura, fatura içerikleri (XML) ile beraber en fazla 100 adet fatura, sadece fatura başlıklarını çekildiğindeise en fazla 25.000 adet fatura dönülür.
SENDER_ALIAS String Hayır Faturayı gönderen firma ünvanı.
RECEIVER_ALIAS String Hayır Faturayı alan firma ünvanı.
INVOICE_UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile fatura okumak için kullanılabilir.
START_DATE String Hayır Belirli tarih aralığında fatura çekmek istendiğinde dönem başlangıç tarihi Format: 2019-01-01
END_DATE String Hayır Belirli tarih aralığında fatura çekmek istendiğinde dönem bitiş tarihi Format: 2019-12-31
HEADER_ONLY String Hayır Fatura içerik ile beraber mi yoksa sadece özet bilgisi mi okunmak istenildiğini belirler. Eleman gönderilmezse veya N değeri gönderilirse faturalar XML ile beraber dönülür. Y değeri gönderilirse faturaların özeti dönülür. Değerler: Y/N
READ_INCLUDED String Hayır Fatura okurken daha önce okunmuş faturaları dönüşe dahil edilip edilmeyeceğini belirler. true değeri gönderilirse fatura daha önce okunmuş olsa bile yanıta eklenir. Gönderilmezse veya false gönderilirse sadece yeni gelen faturalar dönülür. Değerler: true/false
COMPRESSED String Hayır Binary Fatura içeriği sıkıştırılmış/sıkıştırılmamış bilgisi. Varsayılan değer Y olduğu için gönderilmediği durumda fatura sıkıştırılarak/ziplenerek gönderilmesi beklenmektedir. Faturayı XML olarak göndermek için mutlaka eleman eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE Complex Sorgu kriterine uyan fatura(lar)ın listesi. Fatura numarası ID, fatura evrensel tekil tanımlama numarası UUID ve e-fatura sisteminde tanımlı tekil numara değeri LIST_ID attribute içerisinde dönülmektedir.
INVOICE.HEADER Complex Faturaya ait özet bilgiler içermektedir.
HEADER.SENDER String Faturayı gönderen firma VKN'si.
HEADER.RECEIVER String Faturayı alan firma VKN'si.
HEADER.SUPPLIER String Faturayı gönderen firma ünvanı.
HEADER.CUSTOMER String Faturayı alan firma ünvanı.
HEADER.ISSUE_DATE String Fatura tarihi.
HEADER.PAYABLE_AMOUNT String Toplam ödenecek tutar.
HEADER.FROM String Faturayı gönderen Gönderici Birim (GB)
HEADER.TO String Faturanın geldiği Posta Kutusu (PK)
HEADER.PROFILEID String Faturanın senaryosu. TEMELFATURA, TICARIFATURA,IHRACATFATURA, YOLCUBERABER değerleri olabilir.
HEADER.INVOICE_TYPE_CODE String Faturanın tipi. SATIS, IADE, ISTISNA, IHRACAT, OZELMATRAH, TEVKIFAT, IHRACKAYITLI değerleri olabilir.
HEADER.STATUS String Faturanın durumu. Detay için Fatura durum sorgulama ekranında bulunan Fatura Durumları başlığını inceleyiniz.
HEADER.STATUS_DESCRIPTION String Fatura durum açıklaması. Detay için Fatura durum sorgulama ekranında bulunan Fatura Durumları başlığını inceleyiniz.
HEADER.GIB_STATUS_CODE String Faturanın GİB'de ki durum kodu. Detay için Fatura durum sorgulama ekranında bulunan GİB Durum Kodları başlığını inceleyiniz.
HEADER.GIB_STATUS_DESCRIPTION String Faturanın GİB'de ki durumunun kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
HEADER.RESPONSE_CODE String Ticari fatura için verilen yanıtı içeren zarfın durum kodu
HEADER.RESPONSE_DESC String Ticari fatura için verilen yanıtı içeren zarfın durum açıklaması
HEADER.CDATE String Faturanın sistemimize ulaştığı tarih
HEADER.ENVELOPE_IDENTIFIER String Faturanın zarf IDsi.
INVOICE.CONTENT String Faturanın içeriği. Eğer COMPRESSED elemanı N olarak gönderilmişse XML dosya, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş XML dosyası dönülür.

Mükellef Listesi Çekme(GetUserList)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
REGISTER_TIME_START DateFormat Evet Kayıt başlangıç tarihini belirtir. Format: 2019-12-31T23:59:59



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
USER Complex Kullanıcı bilgilerini içeren yapı.
USER.IDENTIFIER String Kullanıcının tanımlayıcı numarası.
USER.ALIAS String Format: urn:mail:defaultpk@firma.com.tr
USER.TITLE String Firmanın Ünvanı
USER.TYPE String Kullanıcı tipi
USER.REGISTER_TIME DateFormat Kullanıcı kayıt zamanı. Format: 2019-12-31T23:59:59
USER.UNIT String Unite değeri.
USER.ALIAS_CREATION_TIME DateFormat Kullanıcı ALIAS üretilme zamanı. Format: 2019-12-31T23:59:59

Mükellef Kontrol(CheckUser)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
IDENTIFIER_VKN_TCKN String Hayır Firmanın VKN veya TCKN si.
TITLE String Hayır Firmanın ismi.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
USER Complex Kullanıcı bilgilerini içeren yapı.
USER.IDENTIFIER String Kullanıcının tanımlayıcı numarası.
USER.ALIAS String Format: urn:mail:defaultpk@firma.com.tr
USER.TITLE String Firmanın İsmi
USER.TYPE String Kullanıcı tipi
USER.REGISTER_TIME DateFormat Kullanıcı kayıt zamanı. Format: 2019-12-31T23:59:59
USER.UNIT String Unite değeri.
USER.ALIAS_CREATION_TIME DateFormat Kullanıcı ALIAS üretilme zamanı. Format: 2019-12-31T23:59:59

Fatura Okundu İşaretleme (MarkInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
INVOICE_UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.
ACTION String Evet Başarı ile alındıysa READ gönderilmeli. Daha önce alındı olarak işaretlenen bir faturayı tekrar çekmeden önce UNREAD olarak gönderilebilir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Fatura Durum Sorgulama (GetInvoiceStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
INVOICE_UUID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) ile fatura okumak için kullanılabilir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE_STATUS ComplexType Sorgu kriterine uyan fatura(lar)ın listesi. Fatura numarası ID, fatura evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
INVOICE_STATUS.STATUS String Faturanın e-fatura sisteminde ki durumu. Detay için Fatura Durumları başlığını inceleyiniz.
INVOICE_STATUS.STATUS_DESCRIPTION String Fatura durum açıklaması. Detay için Fatura Durumları başlığını inceleyiniz.
INVOICE_STATUS.GIB_STATUS_CODE String Faturanın GİB'de ki durum kodu. Faturanın GİB'de ki durumu e-fatura sistemi tarafından henüz sorgulanmadıysa eleman dönülmez. Detay için GİB Durum Kodları başlığını inceleyiniz.
INVOICE_STATUS.GIB_STATUS_DESCRIPTION String Faturanın GİB'de ki durumunun kodunun açıklaması. Faturanın GİB'de ki durumu e-fatura sistemi tarafından henüz sorgulanmadıysa eleman dönülmez. Detay için GİB Durum Kodları başlığını inceleyiniz.
INVOICE_STATUS.CDATE String Faturanın e-fatura sistemine yüklendiği/ulaştığı tarih
INVOICE_STATUS.ENVELOPE_IDENTIFIER String Faturanın zarf IDsi. Taslak faturalar için eleman dönülmez.

Mükellef Listesi Çekme(GetUserListBinary)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
TYPE String Hayır Belgenin hangi türde geleceği.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CONTENT Base64Binary Belgenin Base64Binary olarak encode edilmiş içeriği dönecektir.

Tüm Mükelleflerin Listesini Çekme(GetAllUserListBinary)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
TYPE String Hayır Belgenin hangi türde geleceği.
DOCUMENT_TYPE String Hayır Dökümanın tipi.
REGISTER_TIME_START GregorianCalendar Hayır Tarih bilgisi girilir. Format: 2018-01-01



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CONTENT Base64Binary Belgenin Base64Binary olarak encode edilmiş içeriği dönecektir.

E-Arşiv Fatura Metodları

E-Fatura mükellefi olmayan firma veya nihai tüketiciye düzenlenen faturaların özel entegratör sistemine gönderilmesi ve raporlamasını sağlayan webservis uygulamasının clientıdır.

Dikkat Edilecek Hususlar(E-Arşiv Fatura)

E-Arşiv Fatura Gönderme (SendEArchiveInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
EARSIV_EMAIL_FLAG String Evet Belge alıcısına e-posta olarak gönderilip gönderilmeyeceğinin belirlendiği parametredir. E-Posta göndermek istenilen durumda Y değeri gönderilmelidir.
EARSIV_EMAIL String Hayır Belgenin e-posta olarak iletileceği e-posta adresi. E-Posta formatında olmak zorundadır. EARSIV_EMAIL_FLAG parametresi N verilirse, değer verilse bile dikkate alınmaz. Format: archive@firma.com.tr
EARSIV_TYPE Enum Evet E-Arşiv Faturanın tipi. INTERNET veya NORMAL girilir.
CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş içeriği.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Arşiv Fatura İptal (CancelEArchiveInvoice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
INVOICE_UUID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Arşiv Fatura Okuma (ReadFromArchive)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
INVOICE_ID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.
DOCUMENT_TYPE String Evet E-Arşiv Fatura içeriğinin nasıl yollanacağını belirler. XML, HTML ve PDF olabilir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CONTENT Base64Binary Belgenin Base64Binary formatında gelen içeriği.

E-Arşiv Rapor Listesini Çekme (GetEArchiveReport)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
RAPOR_DONEMI String Evet Rapor listesinin alınmak istenilen dönem bilgisi. Format: 201805



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REPORT Complex Dönem için oluşturulan raporların listesi.
REPORT.REPORT_NO String Raporun numarası GUID formatında.
REPORT.STATUS String Raporun durumu. İşlenmiş rapor durumu SUCCEED olur.
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Arşiv Fatura Durum Sorgulama (GetEArchiveInvoiceStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
UUID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
INVOICE.HEADER ComplexType Kritere uyan faturaların durumlarınını içeren objedir.
HEADER.INVOICE_ID String Fatura numarası
HEADER.UUID String Faturanın Evrensel Tekil Tanımlama Numarası (ETTN)
HEADER.PROFILE String Faturanın senaryosu (EARSIVFATURA)
HEADER.INVOICE_DATE String Fatura tarihi
HEADER.STATUS String Fatura durumu kodu. Lütfen E-Arşiv Durum başlığını inceleyiniz.
HEADER.STATUS_DESC String Faturanın durum açıklaması Lütfen E-Arşiv Durum başlığını inceleyiniz.
HEADER.EMAIL_STATUS String E-Posta gönderim durum kodu. Lütfen E-Arşiv E-Posta Durum başlığını inceleyiniz.
HEADER.EMAIL_STATUS_DESC String E-Posta gönderim durum açıklaması. Lütfen E-Arşiv E-Posta Durum başlığını inceleyiniz.
HEADER.REPORT_ID String Faturanın GİB'e gönderilen rapor numarası. Raporlanmamış faturalarda parametre dönülmez.
HEADER.WEB_KEY String Fatura alıcısının e-arşiv platformu üzerinden ulaşabileceği URL.
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda request return objesi dönülmez.

E-İrsaliye Metodları

Özel entegratör sistemi üzerinde E-İrsaliyelerin yollanması, okunması ve yüklenmesi durumlarını yapabilmek için kullanılır. Aşağıdaki metodlari içerir.

Dikkat Edilecek Hususlar(E-İrsaliye)

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login metodu ile oturum açarak session id alınacaktır. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. Kimlik Doğrulama (Authentication) Webservisinde bulunan GetGibUserList metodu ile GIB e-irsaliye mükellef listesini her 2 saatte entegrasyon sunucularından çekmenizi tavsiye ederiz. Güncel listeyi çektikten sonra Cari listenizde ki firmaların e-irsaliye mükellefi olup olmadığını güncellemelisiniz.
  3. E-İrsaliye Mükellefi olan firmalara düzenlenen irsaliyeleleri UBL-TR İrsaliye formatına dönüştürerek gönderilmelidir. Her e-irsaliye içerisinde görüntülenmesini sağlayan XSLT dokümanı olmalıdır.
  4. SendDespatchAdvice metodu ile irsaliye gönderimi yapılacak. Gönderim esnasında eğer alıcı mükellefe ait birden fazla Posta Kutusu bulunuyorsa ekranda seçilerek gönderilmesi sağlanmalı. Sadece 1 adet PK adresi varsa seçim yapılmadan gönderim sağlanabilir.
  5. GetDespatchAdviceStatus metodu ile gelen/giden irsaliyelerin durumları sorgulanacak. Nihai duruma erişene kadar belgenin durumu entegrasyon sunucularından minumum 4 saatte bir sorgulanmalıdır. Sık sorgulama yapmayınız.
  6. GetDespatchAdvice metodu ile firmaya gelen irsaliyeleri müşteri bilgisayarına aktarılır. Sisteme gelen yeni irsaliyeleri almanız gerekmektedir. Servis ile yeni gelen en fazla 100 adet belgeyi çekebilirsiniz. Eğer dönen listede 100 adet kayıt varsa yeniden GetDespatchAdvice servisi çağırılarak başka belge olup olmadığı kontrol edilmelidir. Dönen listede 100den az kayıt varsa tekrar sorgulama yapmaya gerek yoktur.
  7. MarkDespatchAdvice metodu ile başarılı şekilde teslim alınan irsaliyeler eirsaliye sisteminde okundu olarak işaretlenir. Böylece bir sonra ki GetDespatchAdvice servisi çağrılınca aynı kayıt dönülmez.
  8. Logout metodu ile kullanıcı e-fatura programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

E-İrsaliye Gönderme (SendDespatchAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
SENDER_VKN String Hayır Gönderenin VKNsi.
SENDER_ALIAS String Hayır Gönderenin ünvanı.
RECEIVER_VKN String Hayır Alıcının VKNsi.
RECEIVER_ALIAS String Hayır Alıcının ünvanı.
COMPRESSED String Hayır İrsaliye contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.
CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Taslak E-İrsaliye Yükleme (LoadDespatchAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.
COMPRESSED String Hayır İrsaliye contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-İrsaliye Durumunu Okuma (GetDespatchAdviceStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
UUID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
DESPATCHADVICE_STATUS Complex Sorgu kriterine uyan irsaliye yanıtlarının listesi.
DESPATCHADVICE_STATUS.DESPATCHADVICEHEADER Complex İrsaliye yanıtına ait özet bilgiler içermektedir.
DESPATCHADVICEHEADER.ID String İrsaliye yanıtı numarası.
DESPATCHADVICEHEADER.UUID String Evrensel tekil tanımlama numarası.
DESPATCHADVICEHEADER.PROFILEID String Belge senaryosu. TEMELIRSALIYE değeri olabilir.
DESPATCHADVICEHEADER.ISSUE_DATE Date Belge tarihi.
DESPATCHADVICEHEADER.ISSUE_TIME String Belge düzenleme zamanı.
DESPATCHADVICEHEADER.ACTUAL_SHIPMENT_DATE Date Fiili sevk tarihi.
DESPATCHADVICEHEADER.ACTUAL_SHIPMENT_TIME String Fiili sevk zamanı.
DESPATCHADVICEHEADER.DIRECTION String Belge yönü. Gelen irsaliye yanıtı için IN, giden irsaliye yanıtı için OUT değeri dönülür.
DESPATCHADVICEHEADER.STATUS String Belgenin durumu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.STATUS_CODE String Belgenin durum kodu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.STATUS_DESCRIPTION String Belge durum açıklaması. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.GIB_STATUS_CODE String Belgenin GİB'de ki durum kodu. Detay için GİB Durum Kodları başlığını inceleyiniz.
DESPATCHADVICEHEADER.GIB_STATUS_DESCRIPTION String Belgenin GİB'de ki durum kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
DESPATCHADVICEHEADER.ENVELOPE_IDENTIFIER String Belgenin zarf IDsi.

E-İrsaliye Okuma (GetDespatchAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
DIRECTION String Evet Belge yönü. Gelen veya Giden irsaliyeleri çekmek için kullanılabilir. Gelen irsaliyeleleri çekmek için IN, giden irsaliyeleleri çekmek için OUT değeri gönderilebilir. Varsayılan değer IN olduğu için eğer parametre gönderilmezse sadece gelen irsaliyeler dönülecektir. Gönderilebilecek değerler: IN, OUT
LIMIT Integer Hayır Gelen cevapta en fazla kaç adet irsaliye olabileceğini belirtir.
SENDER_ALIAS String Hayır Gönderenin ünvanı.
RECEIVER_ALIAS String Hayır Alıcının ünvanı.
UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.
START_DATE Date Hayır Belirli bir tarih aralığı araması yapıldığında başlangıç tarihi ataması yapılır. Format: 2019-01-01
END_DATE Date Hayır Belirli bir tarih aralığı araması yapıldığında bitiş tarihi ataması yapılır. Format: 2019-12-31
HEADER_ONLY String Hayır Y verildiğinde irsaliye özeti döner. N verildiğinde ise CONTENTi de yollanır.
READ_INCLUDED Boolean Hayır Daha önce okunmuş belgeleri dönüşe dahil edilip edilmeyeceğini belirleyen parametredir.true değeri atanırsa okunmuş belgeler de gelir, false atamasında iste sadece okunmamış belgeler gelecektir.
COMPRESSED String Hayır İrsaliye contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
DESPATCHADVICE Complex Sorgu kriterine uyan irsaliyelerin listesi. İrsaliye numarası ID, evrensel tekil tanımlama numarası UUID ve e-irsaliye sisteminde tanımlı tekil numara değeri LIST_ID attribute içerisinde dönülmektedir.
DESPATCHADVICE.DESPATCHADVICEHEADER Complex İrsaliyeye ait özet bilgiler içermektedir.
DESPATCHADVICEHEADER.PROFILEID String Belge senaryosu. TEMELIRSALIYE değeri olabilir.
DESPATCHADVICEHEADER.ISSUE_DATE Date Belge tarihi.
DESPATCHADVICEHEADER.ISSUE_TIME String Belge düzenleme zamanı.
DESPATCHADVICEHEADER.ACTUAL_SHIPMENT_DATE Date Fiili sevk tarihi.
DESPATCHADVICEHEADER.ACTUAL_SHIPMENT_TIME String Fiili sevk zamanı.
DESPATCHADVICEHEADER.TYPE_CODE String Belgenin tipi. SEVK değeri olabilir.
DESPATCHADVICEHEADER.DIRECTION String Belge yönü. Gelen irsaliye için IN, giden irsaliye için OUT değeri dönülür.
DESPATCHADVICEHEADER.SENDER String Belgeyi gönderen firma VKN'si.
DESPATCHADVICEHEADER.RECEIVER String Belgeyi alan firma VKN'si.
DESPATCHADVICEHEADER.STATUS String Belgenin durumu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.STATUS_CODE String Belgenin durum kodu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.STATUS_DESCRIPTION String Belge durum açıklaması. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
DESPATCHADVICEHEADER.GIB_STATUS_CODE Integer Belgenin GİB'de ki durum kodu. Detay için GİB Durum Kodları başlığını inceleyiniz.
DESPATCHADVICEHEADER.GIB_STATUS_DESCRIPTION String Belgenin GİB'de ki durum kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
DESPATCHADVICEHEADER.CDATE DateTime Belgenin sisteme ulaştığı tarih
DESPATCHADVICEHEADER.ENVELOPE_IDENTIFIER String Belgenin zarf IDsi.
DESPATCHADVICE.CONTENT Base64Binary Belgenin içeriği. Eğer COMPRESSED parametresi N olarak gönderilmişse XML dosya, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş XML dosyası dönülür.

E-İrsaliyeyi Okundu İşaretleme (MarkDespatchAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
ACTION String Hayır Başarı ile alındıysa READ gönderilmeli. Daha önce alındı olarak işaretlenen bir faturayı tekrar çekmeden önce UNREAD olarak gönderilebilir.
UUID String Hayır İşaretlenecek belgenin Evrensel Tekil Tanımlama Numarası.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-İrsaliye Yanıtı Gönderme (SendReceiptAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
SENDER_VKN String Hayır Gönderenin VKNsi.
SENDER_ALIAS String Hayır Gönderenin ünvanı.
RECEIVER_VKN String Hayır Alıcının VKNsi.
RECEIVER_ALIAS String Hayır Alıcının ünvanı.
COMPRESSED String Hayır İrsaliye contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.
CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Taslak E-İrsaliye Yanıtı Yükleme (LoadReceiptAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.
COMPRESSED String Hayır İrsaliye contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-İrsaliye Yanıtı Durumu Okuma (GetReceiptAdviceStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
UUID String Evet Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
RECEIPTADVICE_STATUS Complex Sorgu kriterine uyan irsaliye yanıtlarının listesi.
RECEIPTADVICE_STATUS.RECEIPTADVICEHEADER Complex İrsaliye yanıtına ait özet bilgiler içermektedir.
RECEIPTADVICEHEADER.ID String İrsaliye yanıtı numarası.
RECEIPTADVICEHEADER.UUID String Evrensel tekil tanımlama numarası.
RECEIPTADVICEHEADER.PROFILEID String Belge senaryosu. TEMELIRSALIYE değeri olabilir.
RECEIPTADVICEHEADER.ISSUE_DATE Date Belge tarihi.
RECEIPTADVICEHEADER.ISSUE_TIME String Belge düzenleme zamanı.
RECEIPTADVICEHEADER.ACTUAL_SHIPMENT_DATE Date Fiili sevk tarihi.
RECEIPTADVICEHEADER.ACTUAL_SHIPMENT_TIME String Fiili sevk zamanı.
RECEIPTADVICEHEADER.DIRECTION String Belge yönü. Gelen irsaliye yanıtı için IN, giden irsaliye yanıtı için OUT değeri dönülür.
RECEIPTADVICEHEADER.STATUS String Belgenin durumu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
RECEIPTADVICEHEADER.STATUS_CODE String Belgenin durum kodu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
RECEIPTADVICEHEADER.STATUS_DESCRIPTION String Belge durum açıklaması. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
RECEIPTADVICEHEADER.GIB_STATUS_CODE String Belgenin GİB'de ki durum kodu. Detay için GİB Durum Kodları başlığını inceleyiniz.
RECEIPTADVICEHEADER.GIB_STATUS_DESCRIPTION String Belgenin GİB'de ki durum kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
RECEIPTADVICEHEADER.ENVELOPE_IDENTIFIER String Belgenin zarf IDsi.

E-İrsaliye Yanıtı Okuma (GetReceiptAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
DIRECTION String Evet Belge yönü. Gelen veya Giden irsaliyeleri çekmek için kullanılabilir. Gelen irsaliyeleleri çekmek için IN, giden irsaliyeleleri çekmek için OUT değeri gönderilebilir. Varsayılan değer IN olduğu için eğer parametre gönderilmezse sadece gelen irsaliyeler dönülecektir. Gönderilebilecek değerler: IN, OUT
LIMIT Integer Hayır Gelen cevapta en fazla kaç adet irsaliye olabileceğini belirtir.
SENDER_ALIAS String Hayır Gönderenin ünvanı.
RECEIVER_ALIAS String Hayır Alıcının ünvanı.
UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.
START_DATE Date Hayır Belirli bir tarih aralığı araması yapıldığında başlangıç tarihi ataması yapılır. Format: 2019-01-01
END_DATE Date Hayır Belirli bir tarih aralığı araması yapıldığında bitiş tarihi ataması yapılır. Format: 2019-12-31
HEADER_ONLY String Hayır Y verildiğinde irsaliye özeti döner. N verildiğinde ise CONTENTi de yollanır.
READ_INCLUDED Boolean Hayır Daha önce okunmuş belgeleri dönüşe dahil edilip edilmeyeceğini belirleyen parametredir.true değeri atanırsa okunmuş belgeler de gelir, false atamasında iste sadece okunmamış belgeler gelecektir.
COMPRESSED String Hayır İrsaliye contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
RECEIPTADVICE Complex Sorgu kriterine uyan irsaliye yanıtlarının listesi. İrsaliye numarası ID, evrensel tekil tanımlama numarası UUID ve e-irsaliye sisteminde tanımlı tekil numara değeri LIST_ID attribute içerisinde dönülmektedir.
RECEIPTADVICE.RECEIPTADVICEHEADER Complex İrsaliye yanıtına ait özet bilgiler içermektedir.
RECEIPTADVICEHEADER.PROFILEID String Belge senaryosu. TEMELIRSALIYE değeri olabilir.
RECEIPTADVICEHEADER.ISSUE_DATE Date Belge tarihi.
RECEIPTADVICEHEADER.ISSUE_TIME String Belge düzenleme zamanı.
RECEIPTADVICEHEADER.ACTUAL_SHIPMENT_DATE Date Fiili sevk tarihi.
RECEIPTADVICEHEADER.ACTUAL_SHIPMENT_TIME String Fiili sevk zamanı.
RECEIPTADVICEHEADER.TYPE_CODE String Belgenin tipi. SEVK değeri olabilir.
RECEIPTADVICEHEADER.DIRECTION String Belge yönü. Gelen irsaliye yanıtı için IN, giden irsaliye yanıtı için OUT değeri dönülür.
RECEIPTADVICEHEADER.SENDER String Belgeyi gönderen firma VKN'si.
RECEIPTADVICEHEADER.RECEIVER String Belgeyi alan firma VKN'si.
RECEIPTADVICEHEADER.STATUS String Belgenin durumu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
RECEIPTADVICEHEADER.STATUS_CODE String Belgenin durum kodu. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
RECEIPTADVICEHEADER.STATUS_DESCRIPTION String Belge durum açıklaması. Detay için E-İrsaliye Durumları başlığını inceleyiniz.
RECEIPTADVICEHEADER.GIB_STATUS_CODE Integer Belgenin GİB'de ki durum kodu. Detay için GİB Durum Kodları başlığını inceleyiniz.
RECEIPTADVICEHEADER.GIB_STATUS_DESCRIPTION String Belgenin GİB'de ki durum kodunun açıklaması. Detay için GİB Durum Kodları başlığını inceleyiniz.
RECEIPTADVICEHEADER.CDATE DateTime Belgenin sisteme ulaştığı tarih
RECEIPTADVICEHEADER.ENVELOPE_IDENTIFIER String Belgenin zarf IDsi.
RECEIPTADVICE.CONTENT Base64Binary Belgenin içeriği. Eğer COMPRESSED parametresi N olarak gönderilmişse XML dosya, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş XML dosyası dönülür.

E-İrsaliye Yanıtını Okundu İşaretleme (MarkReceiptAdvice)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
ACTION String Hayır Başarı ile alındıysa READ gönderilmeli. Daha önce alındı olarak işaretlenen bir faturayı tekrar çekmeden önce UNREAD olarak gönderilebilir.
UUID String Hayır İşaretlenecek belgenin Evrensel Tekil Tanımlama Numarası.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-SMM Metodları

Serbest Meslek Makbuzunun Gelir İdaresi Başkanlığı tarafından belirlenen standartlara uygun olarak elektronik ortamda oluşturulması, muhafazası, ibrazı ve raporlanmasını kapsayan uygulamadır. Aşağıdaki metodlari içerir.

Dikkat Edilecek Hususlar(E-SMM)

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login metodu ile oturum açarak session id alınacaktır. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. SMM belgeleri UBL-TR Invoice formatına dönüştürerek gönderilmelidir. Her dosya içerisinde görüntülenmesini sağlayan XSLT dokümanı olmalıdır.
  3. SendSMM metodu ile belge gönderimi yapılmaktadır.
  4. GetSMMStatus metodu ile entegrasyon sunucularına yüklenen belgelerin durumları sorgulanacak. Sık sorgulama yapmayınız.
  5. GetSMM metodu ile yüklenen belgenin imzalı XML, PDF ve HTML formatında tekrar müşteri bilgisayarına çekmek için kullanılabilir.
  6. CancelSMM metodu ile eksik/hatalı oluşturulmuş veya müşteri tarafından iptal/iade edilmiş belgeleri GİB'e iptal olarak raporlanmasını veya tamamen iptal edilerek hiç raporlanmamasını sağlayabilirsiniz.
  7. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

E-SMM Okuma (GetSmm)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
COMPRESSED String Hayır Fatura contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.
LIMIT Integer Hayır Gelen cevapta en fazla kaç adet smm olabileceğini belirtir.
ID String Hayır Belge numarası ile okumak için kullanılabilir. Format: ABC2019000000001
UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.
START_DATE String Hayır Belirli bir tarih aralığı araması yapıldığında başlangıç tarihi ataması yapılır. Format: 2019-01-01
END_DATE String Hayır Belirli bir tarih aralığı araması yapıldığında bitiş tarihi ataması yapılır. Format: 2019-12-31
READ_INCLUDED Boolean Hayır Daha önce okunmuş belgeleri dönüşe dahil edilip edilmeyeceğini belirleyen parametredir.true değeri atanırsa okunmuş belgeler de gelir, false atamasında iste sadece okunmamış belgeler gelecektir.
CONTENT_TYPE String Evet Müstahsil içeriğinin nasıl yollanacağını belirler. XML, HTML ve PDF olabilir. HEADER_ONLY değeri N verildiyse değer atanması zorunludur.
HEADER_ONLY String Evet Y verildiğinde SMM özeti döner. N verildiğinde ise içeriğin kendiside yollanır. N yollandığı zaman CONTENT_TYPE değerinin atanması zorunludur.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
SMM Complex Sorgu kriterine uyan tekil belge. Belge numarası ID, evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
SMM.HEADER Complex Belgeye ait özet bilgileri içerir.
HEADER.CUSTOMER Complex Belge düzenlenen alıcı bilgisi. IDENTIFIER attribute ile VKN/TCKN bilgisi, NAME attribute ile ünvan bilgisi dönülür.
HEADER.ISSUE_DATE DateTime Belge düzenlenme tarihi. Format: 2019-12-31+03:00
HEADER.PAYABLE_AMOUNT AmountType Toplam ödenecek tutar.
HEADER.PROFILE_ID String Belge senaryosu.
HEADER.STATUS String Belgenin durumu.
HEADER.STATUS_CODE String Belge durum kodu.
HEADER.STATUS_DESCRIPTION String Belge durum açıklaması.
HEADER.CDATE String Belgenin sisteme yüklendiği tarih. Format: 2019-12-31T23:59:59.000+03:00
SMM.CONTENT Base64Binary Belgenin içeriği. PDF formatında. Eğer COMPRESSED parametresi N olarak gönderilmişse PDF dosya sıkıştırılmadan, COMPRESSED elemanı gönderilmemiş veya Y değeri gönderilmişse sıkıştırılmış/ziplenmiş PDF dosyası dönülür.

E-SMM Durumu Okuma (GetSMMStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
UUID String Hayır Yüklenecek taslağın UUID değeri.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
SMM_STATUS Complex Sorgu kriterine uyan tekil belge. Belge numarası ID, evrensel tekil tanımlama numarası UUID attribute içerisinde dönülmektedir.
SMM_STATUS.HEADER Complex Belgeye ait özet bilgileri içerir.
HEADER.ISSUE_DATE DateTime Belge düzenlenme tarihi. Format: 2019-12-31+03:00
HEADER.PAYABLE_AMOUNT AmountType Toplam ödenecek tutar.
HEADER.PROFILE_ID String Belge senaryosu.
HEADER.STATUS String Belgenin durumu.
HEADER.STATUS_CODE String Belge durum kodu.
HEADER.STATUS_DESCRIPTION String Belge durum açıklaması.

E-SMM Gönderme (SendSmm)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
COMPRESSED String Hayır Belge sıkıştırılarak/ziplenerek gönderiliyorsa değer verilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için N değeri gönderilmelidir.
ID String Hayır Yüklenecek taslağın ID değeri.
UUID String Hayır Yüklenecek taslağın UUID değeri.
SMS_FLAG Enum Hayır ELEKTRONIK olarak yollanan belgelerde kontrolü yapılır. Y girildi ise SMS_NUMBER değeri verilmelidir. Nverildiğinde verilse bile SMS_NUMBER değeri dikkate alınmaz.
SMS_NUMBER String Hayır Belgenin yollanacağı kişinin telefon numarası. Format: 0(500) 500 50 50
EMAIL_FLAG Enum Hayır ELEKTRONIK olarak yollanan belgelerde kontrolü yapılır. Y girildi ise EMAIL değeri verilmelidir. Nverildiğinde verilse bile EMAIL değeri dikkate alınmaz.
EMAIL String Hayır Belgenin yollanacağı mail adresi. Format kontrolü yapılır, emailin doğruluğu kullanıcıya aittir. Format: smm@firma.com.tr
SERIES_FLAG Enum Hayır Belge numarasının özel entegratör tarafından atanması için Y değeri gönderilmelidir. DİKKAT: SERIES_PREFIX elemanında belirlenen ön ek ile belge numarası atanacak ve belge içerisinde ki değer ezilecektir.
SERIES_PREFIX String Hayır Belge numarası atanacak ön ek. 3 hane alfanumerik değer içermelidir. Belge numarası yönetimi hakkında daha detaylı bilgi almak için Başlarken -> Belge Numarası Yönetimi başlığını inceleyiniz. Belge numarasının özel entegratör tarafından atanması için Y değeri gönderilmelidir. DİKKAT: SERIES_FLAG elemanı Y değeri gönderilmemişse bu alan dolu olsa dahi belge numarası atanmayacaktır.
SENDING_TYPE Enum Evet Belgenin yollanma şekli. ELEKTRONIK veya KAGIT olabilir. Gönderim şekli ELEKTRONIK olan belge SMS veya ePosta adresi olmak zorundadır
SMM_CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-SMM İptal (CancelSmm)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
UUID String Evet Yüklenecek taslağın UUID değeri.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Taslak E-SMM Yükleme (LoadSmm)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
COMPRESSED String Hayır Belge sıkıştırılarak/ziplenerek gönderiliyorsa değer verilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için N değeri gönderilmelidir.
ID String Hayır Yüklenecek taslağın ID değeri.
UUID String Hayır Yüklenecek taslağın UUID değeri.
SMS_FLAG Enum Hayır ELEKTRONIK olarak yollanan belgelerde kontrolü yapılır. Y girildi ise SMS_NUMBER değeri verilmelidir. Nverildiğinde verilse bile SMS_NUMBER değeri dikkate alınmaz.
SMS_NUMBER String Hayır Belgenin yollanacağı kişinin telefon numarası. Format: 0(500) 500 50 50
EMAIL_FLAG Enum Hayır ELEKTRONIK olarak yollanan belgelerde kontrolü yapılır. Y girildi ise EMAIL değeri verilmelidir. Nverildiğinde verilse bile EMAIL değeri dikkate alınmaz.
EMAIL String Hayır Belgenin yollanacağı mail adresi. Format kontrolü yapılır, emailin doğruluğu kullanıcıya aittir. Format: smm@firma.com.tr
SENDING_TYPE Enum Evet Belgenin yollanma şekli. ELEKTRONIK veya KAGIT olabilir. Gönderim şekli ELEKTRONIK olan belge SMS veya ePosta adresi olmak zorundadır
SMM_CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Mustahsil

e-Müstahsil Makbuzu (e-MM) Uygulaması, müstahsil makbuzunun Gelir İdaresi Başkanlığı tarafından belirlenen standartlara uygun olarak elektronik ortamda oluşturulması, hem kağıt hem de elektronik ortamda muhafazası ve ibrazı ile elektronik ortamda raporlamasını kapsayan uygulamadır. Aşağıdaki metodları içerir.

Dikkat Edilecek Hususlar(E-Müstahsil)

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login metodu ile oturum açarak session id alınacaktır. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. Müstahsil makbuzu belgeleri UBL-TR CreditNote formatına dönüştürerek gönderilmelidir. Her dosya içerisinde görüntülenmesini sağlayan XSLT dokümanı olmalıdır.
  3. SendCreditNote metodu ile müstahsil makbuzu gönderimi yapılmaktadır.
  4. GetCreditNoteStatus metodu ile entegrasyon sunucularına yüklenen belgelerin durumları sorgulanacak. Sık sorgulama yapmayınız.
  5. ReadCreditNote metodu ile yüklenen belgenin imzalı XML, PDF ve HTML formatında tekrar müşteri bilgisayarına çekmek için kullanılabilir.
  6. CancelCreditNote metodu ile eksik/hatalı oluşturulmuş veya müşteri tarafından iptal/iade edilmiş belgeleri GİB'e iptal olarak raporlanmasını veya tamamen iptal edilerek hiç raporlanmamasını sağlayabilirsiniz.
  7. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı e-fatura programını kapatınca veya sizin belirlediğiniz bir sürede oturumu kapatabilirsiniz.

E-Mustahsil İptal (CancelCreditNote)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
UUID String Evet Müstahsil, Evrensel Tekil Tanımlama Numarası (ETTN) kullanılarak iptal edilir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Mustahsil Okuma (GetCreditNote)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
COMPRESSED String Hayır Fatura contentini nasıl alınacağını belirler. Y değeri için sıkıştırılmış, N değeri için sıkıştırılmamış contenti verir.
DIRECTION String Hayır Belgenin gönderildiği yön. Gelen için IN, giden için OUT değeri verilir.
ID String Hayır Belge numarası ile okumak için kullanılabilir. Format: ABC2019000000001
UUID String Hayır Evrensel Tekil Tanımlama Numarası (ETTN) ile okumak için kullanılır.
LIMIT Integer Hayır Gelen cevapta en fazla kaç adet mühtahsil olabileceğini belirtir. Eğer eleman gönderilmezse 10 adet kayıt dönülür.
READ_INCLUDED Boolean Hayır Daha önce okunmuş belgeleri dönüşe dahil edilip edilmeyeceğini belirleyen parametredir.true değeri atanırsa okunmuş belgelerde gelir, false atamasında iste sadece okunmamış belgeler gelecektir.
CREDIT_NOTE_TYPE String Evet Müstahsil içeriğinin nasıl yollanacağını belirler. XML, HTML ve PDF olabilir. HEADER_ONLY değeri N verildiyse değer atanması zorunludur.
START_DATE String Hayır Belirli bir tarih aralığı araması yapıldığında başlangıç tarihi ataması yapılır. Format: 2019-01-01
END_DATE String Hayır Belirli bir tarih aralığı araması yapıldığında bitiş tarihi ataması yapılır. Format: 2019-12-31
HEADER_ONLY String Evet Y verildiğinde müstahsilin özeti döner. N verildiğinde ise içeriğin kendiside yollanır. N yollandığı zaman CREDIT_NOTE_TYPE değerinin atanması zorunludur.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CREDITNOTE Complex CREDITNOTEHEADER ve CONTENT objelerini barındıran nesnedir.
CREDITNOTE.CREDITNOTEHEADER Complex Müstahsilin özet bilgilerini içeren nesnedir.
CREDITNOTEHEADER.ID String Müstahsilin belge numarası.
CREDITNOTEHEADER.UUID String Müstahsilin Evrensel Tekil Tanımlama Numarası (ETTN)
CREDITNOTEHEADER.PROFILEID String Belge senaryosu.
CREDITNOTEHEADER.SENDER Complex Belgeyi gönderen firmanın VKN ve ünvanını içeren nesne.
SENDER.VKN String Belgeyi gönderen firmanın VKNsi.
SENDER.IDENTIFIER String Belgeyi gönderen firmanın ünvanı.
CREDITNOTEHEADER.RECEIVER Complex Belgeyi alan firmanın VKN ve ünvanını içeren nesne.
RECEIVER.VKN String Belgeyi alan firmanın VKNsi.
RECEIVER.IDENTIFIER String Belgeyi alan firmanın ünvanı.
CREDITNOTEHEADER.STATUS String Belgenin durumu.
CREDITNOTEHEADER.STATUS_CODE String Belgenin durum kodu.
CREDITNOTEHEADER.STATUS_DESCRIPTION String Belgenin durum açıklaması.
CREDITNOTE.CONTENT Base64Binary Belgenin içeriği. Eğer COMPRESSED parametresi N olarak gönderilmişse sıkıştırılmamış dosya, COMPRESSED parametresine Y değeri gönderilmişse sıkıştırılmış/ziplenmiş dosya dönülür.

E-Mustahsil Durumu Okuma (GetCreditNoteStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
UUID String Evet Durumuna bakılacak belgenin Evrensel Tekil Tanımlama Numarası(ETTN).



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
CREDITNOTE_STATUS Complex Müstahsilin özet bilgilerini içeren nesnedir.
CREDITNOTE_STATUS.ID String Müstahsilin belge numarası.
CREDITNOTE_STATUS.UUID String Müstahsilin Evrensel Tekil Tanımlama Numarası (ETTN)
CREDITNOTE_STATUS.PROFILEID String Belge senaryosu.
CREDITNOTE_STATUS.ISSUE_DATE Date Belge tarihi.
CREDITNOTE_STATUS.ISSUE_TIME String Belge düzenleme tarihi.
CREDITNOTE_STATUS.DIRECTION String Belgenin gönderildiği yön. Gelen için IN, giden için OUT değeri döner.
CREDITNOTE_STATUS.STATUS String Belgenin durumu. Karar vermek için STATUS_CODE alanını kullanınız.
CREDITNOTE_STATUS.STATUS_CODE String Belgenin durum kodu.
CREDITNOTE_STATUS.STATUS_DESCRIPTION String Belgenin durum açıklaması.

Taslak E-Mustahsil Yükleme (LoadCreditNote)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
COMPRESSED String Hayır Belge sıkıştırılarak/ziplenerek gönderiliyorsa değer verilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için N değeri gönderilmelidir.
ID String Hayır Yüklenecek taslağın ID değeri.
UUID String Hayır Yüklenecek taslağın UUID değeri.
CREDIT_NOTE_CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Mustahsil Okundu İşaretleme (MarkCreditNote)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
UUID String Hayır İşaretlenecek belgenin Evrensel Tekil Tanımlama Numarası.
MARK_VALUE String Hayır Başarı ile alındıysa READ gönderilmeli. Daha önce alındı olarak işaretlenen bir faturayı tekrar çekmeden önce UNREAD olarak gönderilebilir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Mustahsil Gönderme (SendCreditNote)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
COMPRESSED String Hayır Belge sıkıştırılarak/ziplenerek gönderiliyorsa değer verilmeyebilir veya Y olarak gönderilebilir. XML formatında sıkıştırılmadan yüklemek için N değeri gönderilmelidir.
EMAIL_ADDRESS String Evet Belgenin e-posta olarak iletileceği e-posta adresi. E-Posta formatında olmak zorundadır. E-Posta gönderimini özel entegratör sisteminden yapılması isteniyorsa Y değeri gönderilmelidir. Varsayılan değer N dir. EMAIL_FLAG alanı Y gönderildiği zaman bu elaman zorunludur. EMAIL_FLAG gönderilmemiş veya N değeri gönderilmişse bu elaman dolu olsa dahi e-posta gönderilmeyecektir.
EMAIL_FLAG String Hayır Belge alıcısına e-posta olarak gönderilip gönderilmeyeceğinin belirlendiği parametredir. E-Posta göndermek istenilen durumda Y değeri gönderilmelidir. Eleman gönderilmezse EMAIL alanı dolu olsa dahi e-posta gönderilmez. *DİKKAT: Eğer müşterinin özel entegratör ile e-posta gönderme hizmeti sözleşmesi yoksa ve Y değeri gönderilirse belgenin sisteme yüklenmesine izin verilmeyecektir. Bu durumda özel entegratör ile iletişime geçerek e-posta gönderim hizmeti satın alınmalı veya e-posta gönderiminin farklı bir kanaldan müşteri tarafından yapılması gerekmektedir. Bu durumda bu parametre gönderilmemeli veya N olarak gönderilmelidir. *
ID_ASSIGN_FLAG String Hayır Belge numarasının özel entegratör ortamından atanmasını sağlamak için kullanılacak parametredir. Eğer belge numarası istemci tarafında atanmışsa parametre gönderilmemeli veya N değeri gönderilmelidir. Belge numarasını sunucuda atamak için Y değeri gönderilmelidir.
ID_ASSIGN_PREFIX String Evet Belge numarasının özel entegratör ortamından atanmasını talep edildiği durumlarda atama yapılacak seri ön eki değerinin belirlendiği parametredir. Seri ön eki 3 hane alfanumerik değer içerebilir. Gönderilen seri ön eki özel entegratör platformunda tanımlı olmalıdır. Eğer ID_ASSIGN_FLAG=Y olarak gönderilmiş ama ID_ASSIGN_PREFIX parametresi gönderilmemişse, müşterinin özel entegratörde tanımlı varsaylılan serisi kullanılacaktır. Eğer varsayılan seri tanımlanmamışsa işlem başarısız olacak ve hata dönülecektir.
SENDER_VKN String Hayır Belgeyi gönderen firmanın VKNsi.
RECEIVER_VKN String Hayır Belgeyi alan firmanın VKNsi.
ID String Hayır Yüklenecek taslağın ID değeri.
UUID String Hayır Yüklenecek taslağın UUID değeri.
CREDIT_NOTE_CONTENT Base64Binary Evet Belgenin Base64Binary olarak encode edilmiş XML veya Ziplenmiş içeriği. Eğer belgeyi ziplemeden/sıkıştırmadan göndermek istiyorsanız COMPRESSED elemanı eklenmeli ve N değeri gönderilmelidir.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Mutabakat

e-Mutabakat webservisinin clientıdır. Aşağıdaki metodları içerir.

Dikkat Edilecek Hususlar(E-Mutabakat)

  1. Kimlik Doğrulama (Authentication) Webservisinde bulunan Login servisi ile oturum açarak session id alınacak. Session Id sistemimiz tarafında 8 saate kadar zaman aşımına uğramadığı için kullanıcı giriş yapınca session id alıp bütün kullanım süresinde aynı session id kullanabilirsiniz.
  2. SendReconciliation metodu ile BA/BS ve Cari mutabakat gönderimi yapılabilmektedir. Detaylar için E-Mutabakat Gönderme bölümünü inceleyiniz.
  3. GetReconciliationStatus metodu ile gönderilen mutabakatların durumları sorgulanabilir. Nihai duruma erişene kadar mutabakatların durumu özel entegratör sisteminden minumum 4 saatte bir sorgulanmalıdır. Sık sorgulama yapmayınız.
  4. Kimlik Doğrulama (Authentication) Webservisinde bulunan Logout metodu ile kullanıcı mutabakat programını kapatınca oturum kapatılabilir.

E-Mutabakat Durumu Okuma (GetReconciliationStatus)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION ID değeri.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
ETTN String Evet Durumu sorgulanacak mutabakatın Evrensel Tekil Tanımlama Numarası.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
RECONCILIATION_STATUS Complex ETTN si verilmiş mutabakatları içeren yapıdır.
RECONCILIATION_STATUS.RECONCILIATION Complex ETTN si verilmiş mutabakata dair bilgileri bulunduran yapıdır.
RECONCILIATION.TYPE Enum Gelen Mutabakat eğer Cari Mutabakat ise CM, BA/BS Mutabakat ise EM olarak dönecektir.
RECONCILIATION.ETTN String Mutabakatın Evrensel Tekil Tanımlama Numarası.
RECONCILIATION.CUSTOMER_IDENTIFIER String Mutabakat gönderilmiş firmanın vergi kimlik nuarası.
RECONCILIATION.COMMERCIAL_NAME String Mutabakat gönderilmiş firmanın ünvanı.
RECONCILIATION.BABS_ACCOUNTING_PERIOD String BA/BS mutabakat tarihi. Sadece Type değeri EM olan mutabakatlarda dönecektir. Format : 201901
RECONCILIATION.CM_DATE DateTime Cari mutabakat tarihi. Sadece Type değeri CM olan mutabakatlarda dönecektir. Format : 2019-01-01T01:01:01.001+03:00
RECONCILIATION.CM_AMOUNT_TYPE Enum Cari mutabakat durumu. Alacak için A Borç için B sonucu dönecektir. Sadece Type değeri CM olan mutabakatlarda dönecektir.
RECONCILIATION.STATUS String ETTN si verilmiş Mutabakatın durumu dönmektedir.
RECONCILIATION.CREATE_DATE DateTime Mutabakatın üretilme tarihi. Format : 2019-01-01T01:01:01.001+03:00

E-Mutabakat Maili Gönderme (SendMailReconciliation)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION ID değeri.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
UUID String Evet Mail yollanacak mutabakatın UUID si.



E-Mutabakat Gönderme (SendReconciliation)

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
APPLICATION_NAME String Hayır Metodu kullanan uygulamanın adı verilir.
BABS_ACCOUNTING_PERIOD String Evet Mutabakat dönemi. RECONCILIATION_TYPE EM girilmiş mutabakatlar için zorunludur.Format: 201806
BA_DOCUMENT_AMOUNT Decimal Evet BA mutabakat belgelerinin toplam tutarı. RECONCILIATION_TYPE EM girilmiş mutabakatlar için zorunludur.
BA_DOCUMENT_COUNT Integer Evet BA mutabakat belge adeti.RECONCILIATION_TYPE EM girilmiş mutabakatlar için zorunludur.
BS_DOCUMENT_AMOUNT Decimal Evet BS mutabakat belgelerinin toplam tutarı. RECONCILIATION_TYPE EM girilmiş mutabakatlar için zorunludur.
BS_DOCUMENT_COUNT Integer Evet BS mutabakat belge adeti.RECONCILIATION_TYPE EM girilmiş mutabakatlar için zorunludur.
CM_AMOUNT Decimal Evet Cari mutabakat alacak ve borç toplan tutarı. RECONCILIATION_TYPE CM girilmiş mutabakatlar için zorunludur.
CM_AMOUNT_TYPE String Evet Cari mutabakat durumu. Alacak için A Borç için B gönderilmelidir. RECONCILIATION_TYPE CM girilmiş mutabakatlar için zorunludur.
CM_DATE Date Evet Mutabakat tarihi. RECONCILIATION_TYPE CM girilmiş mutabakatlar için zorunludur.Format: 2019-01-01
COMMERCIAL_NAME String Evet Mutabakat gönderilecek firmanın ünvanı.
CURRENCY_CODE Enum Evet Mutabakattaki tutarın para birimi. TRY, USD, EUR, GBP ve CAD gönderilebilir.
CUSTOMER_ADDRESS String Evet Mutabakat gönderilecek firmanın adresi.
CUSTOMER_IDENTIFIER String Evet Mutabakat gönderilecek firmanın vergi kimlik nuarası. VKN doğrulaması yapılmadığı için gönderilen verinin doğruluğu kullanıcıya aittir.
EMAIL String Evet Mutabakat gönderilecek firmanın e-posta adresi. Format kontrolu yapılır ancak doğruluğu kullanıcıya aittir. Format: muhasebe@firma.com.tr
FAX_NO String Hayır Mutabakat gönderilecek firmanın faks numarası. Önerilen Format: 0(212) 100 00 00
NOTE String Hayır Mutabakata eklenecek ek açıklamalar.
TAX_OFFICE String Hayır Mutabakat gönderilecek firmanın vergi dairesi.
PHONE_NO String Hayır Mutabakat gönderilecek firmanın telefon numarası. Önerilen Format: 0(212) 100 00 00
RECONCILIATION_TYPE Enum Evet Mutabakatın türü. BA/BS Mutabakatlar için EM, Cari Mutabakatlar için CM gönderilir.
UUID String Evet Mutabakata atanacak Evrensel Tekil Tanımlama Numarası.



Servisten dönen parametreler şu şekildedir:

Parametre Tip Açıklama
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

E-Defter Saklama Servisi

Mükellefler tarafında hazırlanan E-Defter dosyalarının özel entegratör sisteminde saklanmasını sağlayan servistir. Aşağıdaki metodlari içerir.

Dikkat Edilecek Hususlar(E-Defter Saklama)

  1. Proxy servisinde bulunan Login servisi ile oturum açarak session id alınacaktır.
  2. ArchiveELedger metodu ile bir döneme ait defter yedekleme yapılmaktadır. Bir dönem en fazla bir defa yedeklenebilir.
  3. GetELedger metodu ile daha önce yedeklenen bir döneme ait e-defterleri tekrar müşteri bilgisayarına çekmek için kullanılabilir.
  4. CancelELedger metodu ile yedeklendikten sonra iptal edilmiş e-defterlerin iptali sağlanabilir.
  5. Proxy servisinde bulunan Logout metodu ile oturum kapatılabilir.

E-Defter Yedekleme (ArchiveELedger)

İstek Parametreleri

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri verilmelidir.
FILENAME String Evet Yüklenecek dosyanın adı. (Format: VKN-DONEM-SUBE.zip : 4840847211-201911-0000.zip). Şubesiz yapıda bir firma ise şube numarası 0000 olarak gönderilmelidir.
CONTENT Base64Binary Evet Bir dönemde ki bütün parçalara ait XML dosyalarının (Yevmiye, Kebir, Yevmiye Beratı, Kebir Beratı, GIB İmzalı Yevmiye Beratı, GIB İmzalı Kebir Beratı, Defter Raporu) sıkıştırılmış (zip) Base64Binary olarak encode edilmiş değeri.

Başarılı Sonuç Nesnesi

Webservis işlemi başarılı olması durumunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Parametre Tip Açıklama
REQUEST_RETURN ComplexType Başarılı sonuç nesnesi
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda REQUEST_RETURN objesi dönülmez. ERROR_TYPE objesi dönülecektir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Parametre Tip Açıklama
ERROR_TYPE ComplexType Başarısız sonuç nesnesi
ERROR_TYPE.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_TYPE.ERROR_CODE String Başarısız işlemlerde 0 değeri döner.
ERROR_TYPE.ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-Defter Çekme (GetELedger)

İstek Parametreleri

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri
DONEM String Evet Yüklenen e-defter dönemi YYYYAA formatında (Ekim 2019 için 201911)
VKN String Evet Yüklenen e-defterin sahibi firmanın vergi kimlik numarası. 10-11 hane numerik değer.

Başarılı Sonuç Nesnesi

Webservis işlemi başarılı olması durumunda response objesi içerisinde GEN_ARCHIVE_DOC ve REQUEST_RETURN tipinde sonuç dönülecektir.

Parametre Tip Açıklama
GEN_ARCHIVE_DOC Base64Binary Döneme ait e-defterleri içeren sıkıştırılmış (zip) Base64Binary encode edilmiş dosya değeri. Sıkışıtırılmış (zip) formatında dönüldüğü gözönünde bulundurularak işlem yapılmalıdır.
REQUEST_RETURN ComplexType Başarılı sonuç nesnesi
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Parametre Tip Açıklama
ERROR_TYPE ComplexType Başarısız sonuç nesnesi
ERROR_TYPE.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_TYPE.ERROR_CODE String Başarısız işlemlerde -1 değeri döner.
ERROR_TYPE.ERROR_SHORT_DESC String Hatanın kısa açıklaması.

E-Defter İptal (CancelELedger)

İstek Parametreleri

Servise gönderilmesi gereken parametreler şu şekildedir:

Parametre Tip Zorunluluk Açıklama
SESSION_ID String Evet Login metodundan alınmış olan aktif SESSION_ID değeri
DONEM String Evet Yüklenen e-defter dönemi YYYYAA formatında (Ekim 2019 için 201911)
VKN String Evet Yüklenen e-defterin sahibi firmanın vergi kimlik numarası. 10-11 hane numerik değer.

Başarılı Sonuç Nesnesi

Webservis işlemi başarılı olması durumunda response objesi içerisinde REQUEST_RETURN tipinde sonuç dönülecektir.

Parametre Tip Açıklama
REQUEST_RETURN ComplexType Başarılı sonuç nesnesi
REQUEST_RETURN.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
REQUEST_RETURN.CLIENT_TXN_ID String İstek ile istemci tarafından işlem IDsi gönderilmişse sonuç ile beraber dönülür.
REQUEST_RETURN.RETURN_CODE String Başarılı durumlarda 0 değeri döner. Başarısız olduğunda WS Fault objesi dönecektir.

Hata Sonuç Nesnesi

Webservis metodunda hata oluşması durumunda response objesi içerisinde ERROR_TYPE tipinde sonuç dönülecektir.

Parametre Tip Açıklama
ERROR_TYPE ComplexType Başarısız sonuç nesnesi
ERROR_TYPE.INTL_TXN_ID String Sunucuda işlemin gerçekleştirildiği transaction IDsi. Bu ID istemci tarafında kaydedilerek oluşabilecek hatalarda referans olarak destek ekibine iletilebilir.
ERROR_TYPE.ERROR_CODE String Başarısız işlemlerde 0 değeri döner.
ERROR_TYPE.ERROR_SHORT_DESC String Hatanın kısa açıklaması.

IZIBIZ Integration

The following information will be useful when designing your application:

  1. Invoice should be prepared in UBL-TR XML format.
  2. Every invoice must be assigned 16 digit ID in AAAYYYY999999999 format.
    AAA - First 3 digits is the alphanumeric unit code.
    YYYY - the next four digits is the year of the invoice issue date
    999999999 - the remaining nine digits means the successive number starting from 1 every year.
  3. Login method on the Authentication service will be used to autheticate and the session id will be send with every request.
  4. GetGibUserList method on the Authentication service returns list of firms which registered to TRA e-invoicing system. The list is updated every 2 hours from TRA.
  5. SendInvoice method will be used to to send outgoing e-Invoices.
  6. GetInvoice method will be used to retrieve incoming e-invoices to the client side. Maximum 100 new invoices can be returned with XML content. If there are 100 invoices in the returned list, GetInvoice method should be called again to check if there are any other invoices. If there are fewer than 100 invoices in the returned list, no further inquiry is required. If invoice is made with a timer, a service should be called for at least 15 minutes.
  7. GetInvoiceStatus method will be used to query the status of incoming / outgoing e-invoices. The status of the invoice must be queried from the service provider every 4 hours until it reaches the final state. Do not question frequently.
  8. MarkInvoice method should be executed for every invoice received successfully with GetInvoice method to mark it as read.
  9. SendInvoiceResponseWithServerSign method can be used to send an acceptance or rejection response for a commercial invoice. A commercial invoice can be accepted or rejected within 8 business days. Acceptance / rejection should be prevented after 8 days. For basic invoices, sending responses should be restricted. A maximum of 1 response can be sent electronically to a commercial invoice. Therefore, if a successful response (accept / reject) has been sent to an invoice, sending a different response should be restricted.
  10. Logout method on the Authentication service can be used close an active session.

İZİBİZ E-Defter Uygulaması

Uygulamanın Özellikleri

Örnek Verideseni

İZİBİZ E-Defter uygulaması platform bağımsızdır. Bundan dolayı verilerin kaynak ortamda programın beklediği formatta hazırlanması beklemektedir. Beklenen veri desen hakkında aşağıda detaylı bilgi paylaşılmıştır.

Hazırlanan veriler CSV formatında olarak veya veritabanında View (Görünüm) hazırlanarak programa aktarılabilir.

Örnek Dosya İndir:

Alan Adı Açıklama
detailref Detay satır referansı
entryref Bu alan muhasebe fişlerini gruplamak için kullandığımız bir alandır, bulunması zorunludur.
Fişler hesaplanırken bu referans numarasına göre gruplanmaktadır. Bu alana, eğer ERP’de muhasebe fiş satır referans numaraları varsa onların yazılması gerekmekte. Eğer yoksa yevmiye madde numarası yani linenumbercounter yazılması gerekmekte.
linenumber Yevmiye madde numarası haricinde dönem başında 1’den başlayacak ve arada boşluk olmaksızın ardışık olacak şekilde yevmiye madde satır numarası
linenumbercounter Yevmiye madde no
accmainid Kebir kodu (muhasebe kodu ilk 3 hane)
accmainiddesc Kebir kodu (muhasebe kodu ilk 3 hane) açıklaması
accsubid Muhasebe kodu
accsubdesc Muhasebe kod açıklaması
amount Tutar (negatif değer olmamalı)
debitcreditcode Borç ise D, Alacak ise C
postingdate Muhasebe fiş tarihi
documenttype invoice: Fatura check: Çek voucher: Senet
 ** other:** other : Yukarıda sayılanların dışında varolan belgeler için “other” belge türü kullanılır ve bununda açıklaması (documenttypedescription) alanında yapılır. Belgeler hakkında detaylı bilgi için Önemli Hususlar başlığını inceleyebilirsiniz.
documenttypedesc Doküman tipinin other olması durumunda bazı örnekler; Paymentmethod Banka; Gelen Havaleler, Gönderilen Havaleler Paymentmethod Nakit; CH Tahsilat, CH Ödeme, Bankaya Yatırılan, Bankadan Çekilen, Gider Pusulası, Verilen Serbest Meslek Makbuzu, Alınan Serbest Meslek Makbuzu Paymentmethod Teminat Mektubu; Teminat Girişi,Teminat Çıkışı
documentnumber İlişkili belgenin numarası (Örn: Fatura numarası)
documentreference Muhasebe fiş referans numarası, kullanılan sistemde böyle bir numara yoksa yevmiye no
entrynumbercounter Yevmiye madde no
documentdate İlişkili belgenin tarihi (Örn: Fatura tarihi) yyyy-aa-gg formatında
paymentmethod Çek, Senet, Nakit, Banka, Teminat Mektubu ya da boş
detailcomment Muhasebe fişi satır açıklaması
erpno Kullanılan sistemde firmaları birbirinden ayırt eden firma numarası, yoksa 001
divisionno Kullanılan sistemde işyerlerini birbirinden ayıran işyeri numarası, kağıt ortamında basılan defterlerde ayrı olarak basılıyorsa e-defter’de farklı bir işyeri numarasına sahip olmalı yoksa 0
enteredby Muhasebe fişini giren kişinin ad soyad ilk harfi yada açık halde adı soyadı
entereddate Muhasebe fişi kayıt tarihi
entrynumber Muhasebe fiş numarası, kullanılan sistemde böyle bir numara yoksa yevmiye no
entrycomment Muhasebe fişi açıklaması

Önemli Hususlar

E-defter uygulamasına geçen mükelleflerin e-defteri oluşturacak kayıtların oluşturulması esnasında dikkat etmesi gereken konuları, e-defter belge tiplerinin neler olduğunu, e-defter alanlarının nasıl doldurulması gerektiğine değineceğiz. Elektronik defter tutanlar, elektronik defterlerini oluşturdukları ve muhafaza ettikleri bilgi işlem sistemlerinin haczedilmesi veya bu sistemlere yetkili mercilerce el konulması halinde, durumu en geç üç iş günü içerisinde Başkanlık’a bildirmek zorundadırlar.

Belge Tipi

Muhasebe kaydına esas teşkil eden işlem bir belgeye dayanıyorsa, mutlaka belge tipi alanının kullanılması gerekmektedir. Ancak muhasebe kaydına esas teşkil eden işlem bir belgeye dayanmıyorsa belge tipi alanı kullanılmamalıdır. Dolayısıyla muhasebe kaydına esas teşkil eden işlem bir belgeye dayanmıyorsa, belge türü, tarihi veya numarası gibi bilgiler verilemez. Örneğin, açılış-kapanış işlemleri belgeye dayalı olmayabilir.

Gelir İdaresi Başkanlığının yayımlandığı Yevmiye Defteri kılavuzunda aşağıdaki sekiz belge tipi tanımlanmıştır. Tabloda sayılan yedi belge tipinin dışında ki belgeler için “Diğer” belge türü kullanılır.

Belge Tipi Esas Belge
invoice Fatura
check Çek
voucher Senet
receipt Makbuz
shipment Navlun
order-vendor Satıcı Sipariş Belgesi
order-customer Müşteri Sipariş Belgesi
other Diğer

Perakende Satışı Fişi

Perakende satış fişi sayılan 7 belge içerisinde olmadığı için belge tipi diğer olarak, belge açıklaması da perakende satış fişi olarak seçilmelidir.

Banka İşlemleri

Bilindiği üzere bankaya ait işlemlerde muhasebe kaydına esas belge bankadan verilen dekont olmaktadır. Dekontların e-Defter uygulamasında belge tipi “Diğer” ve belge açıklaması “dekont” olarak kaydı yapılır ve dekontun numara ve tarihinin de girilmesi zorunludur. Ancak dekont üzerinde belge numarası-tarihi yok ise, kullanılan muhasebe programının söz konusu işleme vermiş olduğu tarih ve numara, belge numarası ve tarihi olarak yazılabilir.

Eğer bankaya ait işlemler dekont bazında tek tek muhasebeleştirilemiyorsa, bu banka işlemleri günlük olarak, banka banka ayrıştırmak koşuluyla, her bir bankadan yapılan işlemler birer muhasebe fişinde işlenebilir. e-Defterde bu kayda esas belge olarak muhasebe fişi gösterilebilir. Bu muhasebe fişi e-defter uygulamasında belge tipi “Diğer” ve belge açıklaması “Muhasebe Fişi” olarak kaydı yapılır ve fişin numarası ve tarihi girilir.

Masraf Listeleri

Gün içinde işletmenin ya da personelin yapmış olduğu giderlere ilişkin alınmış belgeler teknik kılavuzlarda sayılan belgelerden biriyse mutlaka belge tipi kılavuzda belirtildiği gibi olmalıdır. Örneğin, personelin yapmış olduğu giderler arasında belge olarak fatura varsa, bu fatura ayrı bir yevmiye kaydında belge türü “invoice” yani fatura olarak fatura belge tarih-numarası da yazılmak şartıyla kaydedilmelidir. Eğer yapılan giderle ilgili belge tipi, tablo 1’de sayılan ilk yedi belge tipinden biri değil ise bir masraf formu oluşturulup eDefter uygulamasında belge tipi “Diğer” ve belge açıklaması “masraf formu” olarak kaydı yapılır. Ayrıca bu masraf formunun numarası ve tarihinin de girilmesi zorunludur. Bu masraf formlarında matbu bir numara ve tarih olmadığı için, oluşturulacak her bir form için müteselsil bir numara ve formun oluşturulduğu günün tarihi üzerine yazılmalıdır. Bu masraf formunda yapılan giderlere ait belgelerin detayları yer almak zorundadır. Ayrıca bu masraf formu firma kaşesi ve imzasıyla matbu olarak ya da elektronik imza/mali mühür ile elektronik ortamda muhafaza edilmek zorundadır. Elektronik ortamda tutulacak belgelerin görüntülenebilir ve doğrulanabilir şekilde muhafaza ve ibraz edilmesinden, diğer matbu belgeler de olduğu gibi, mükellef sorumludur.

Z raporu

Gün sonunda her bir yazar kasadan alınan Z raporu, muhasebe kaydında belge tipi “Diğer” ve belge açıklaması “Z Raporu” olarak kaydı yapılır. Ayrıca bu Z Raporu’nun numarası ve tarihinin de girilmesi zorunludur. Ancak gün içinde yapılan satışlarda Z Raporunun üzerinde yer alan ödeme yöntemlerine (nakit, kredi kartı, vb.) göre ayrıştırılmalıdır. Ödeme yöntemine isabet edecek KDV tutarlarının da ayrıştırılması ve her bir ödeme yönteminin farklı yevmiye maddelerinde gösterilmesi gerekmektedir.

Çek Bordrosu

e-Defter uygulamasında kılavuzda sayılan tüm belge tiplerinde olduğu gibi, her bir çek belgesinin de ayrı yevmiye maddelerine kaydedilmesi esastır. Ancak çek bordrosuyla da kaydı mümkün olduğundan e-Defter uygulamasında da bu bordolar üzerinden, aynı alıcı veya satıcıya ait olmak şartıyla, birden fazla çek aynı yevmiye maddesinde kaydedilebilir. Ayrıca muhasebe kaydında belge tipi “Diğer” ve belge açıklaması “Çek bordrosu” olarak kaydı yapılır ve bu çek bordrosunun numarası ve tarihinin girilmesi zorunludur. Bu çek bordrosunda matbu bir numara ve tarih olmadığı için, oluşturulacak her bir bordro için müteselsil bir numara verilmeli ve bordronun oluşturulduğu günün tarihi üzerine yazılmalıdır. Her bir çek bordrosunda, çeklerin detayları yer almak zorundadır. Bu çek bordrosu firma kaşesi ve imzasıyla matbu olarak ya da elektronik imza/mali mühür ile elektronik ortamda muhafaza edilmek zorundadır. Elektronik ortamda tutulacak belgelerin görüntülenebilir ve doğrulanabilir şekilde muhafaza ve ibraz edilmesinden, diğer matbu belgeler de olduğu gibi, mükellef sorumludur.

Senet Bordrosu

e-Defter uygulamasında kılavuzda sayılan tüm belge türlerinde olduğu gibi, her bir senet belgesinin de ayrı yevmiye maddelerine kaydedilmesi esastır. Ancak senet bordrosuyla da kaydı mümkün olduğundan e-Defter uygulamasında da bu bordolar üzerinden, aynı alıcı veya satıcıya ait olmak şartıyla, birden fazla senet aynı yevmiye maddesinde kaydedilebilir. Ayrıca muhasebe kaydında belge tipi “Diğer” ve belge açıklaması “Senet bordrosu” olarak kaydı yapılır ve bu senet bordrosunun numarası ve tarihinin girilmesi zorunludur. Bu senet bordrosunda matbu bir numara ve tarih olmadığı için, oluşturulacak her bir bordro için müteselsil bir numara verilmeli ve bordronun oluşturulduğu günün tarihi üzerine yazılmalıdır. Senet bordrolarında, senetlerin detayları yer almak zorundadır. Bu senet bordrosu firma kaşesi ve imzasıyla matbu olarak ya da elektronik imza/mali mühür ile elektronik ortamda muhafaza edilmek zorundadır. Elektronik ortamda tutulacak belgelerin görüntülenebilir ve doğrulanabilir şekilde muhafaza ve ibraz edilmesinden, diğer matbu belgeler de olduğu gibi, mükellef sorumludur

Ücret Bordrosu

Firmalar çalışanları için aylık olarak oluşturacakları ücret bordrolarını, e-Defter uygulamasına aktarırken, tüm personel için oluşan bordroları bir listeye bağlayıp, belge tipi “Diğer” ve belge açıklaması “Ücret Bordrosu İcmali” olarak kaydedebilir. Ücret bordrosu icmalinin numara ve tarihinin girilmesi zorunludur. Ancak Ücret bordrosu icmalinde matbu bir numara ve tarih olmadığı için, oluşturulacak her bir icmal listesi için müteselsil bir numara verilmeli ve icmalin oluşturulduğu günün tarihi üzerine yazılmalıdır. Bu ücret bordrosu icmalinde her bir ücret bordrosunun detayları yer almalıdır. Ayrıca bu icmaller firma kaşesi ve imzasıyla matbu olarak ya da elektronik imza/mali mühür ile elektronik ortamda muhafaza edilmek zorundadır. Elektronik ortamda tutulacak belgelerin görüntülenebilir ve doğrulanabilir şekilde muhafaza ve ibraz edilmesinden, diğer matbu belgeler de olduğu gibi, mükellef sorumludur.

Serbest Meslek Makbuzu

Serbest meslek erbabının, mesleki faaliyetlerine ilişkin her türlü tahsilatı için düzenlediği belge serbest meslek makbuzudur. Bu makbuz e-Defter kılavuzunda sayılan belgeler arasında yer alan makbuz ile karıştırılmamalıdır. Serbest meslek makbuzu sayılan belgeler arasında yer almadığı için belge tipi “Diğer” ve belge açıklaması “serbest meslek makbuzu” olarak kaydı yapılır. Ayrıca belgenin numarası ve tarihinin de girilmesi zorunludur.

E-Defter Şematron Kontrolü

C#