e-Fatura/e-Arşiv Rest Api Geliştirici Kılavuzu (1.1)

Download OpenAPI specification:Download

Turkcell e-Şirket e-Fatura/e-Arşiv API uç noktaları REST olarak geliştirilmiştir. API kullanımı ve entegrasyon süreçlerinize başlamadan önce mutlaka satis@eplatform.com.tr adresinden satış ekibimiz ile iletişime geçmelisiniz. Satın alma süreçlerinden sonra satış temsilcimiz entegrasyon ekibimiz ile iletişime geçecektir. Turkcell e-Şirket bünyesinde yer alan diğer uygulamaların dokümantasyonlarına https://developer.turkcellesirket.com adresinden ulaşabilirsiniz.

Servis üzerinden gönderim yapmak için arayüz üzerinden apikey oluşturmanız gerekmektedir.

Test ortamda https://portaltest.isim360.com/home/api-management adresinden apikey oluşturabilirsiniz.

Canlı ortamda https://portal.turkcellesirket.com/home/api-management adresinden apikey oluşturabilirsiniz.

ApiKey oluşturma dokümanını entegrasyon ekibimiz ile iletişime geçtiğinizde, sizlere iletecektir.

Entegrasyon çalışmalarında yaptığınız işlemlerin sonuçlarını, test portalimizi kullanarak gözlemleyebilirsiniz.

Test arayüz adresi; https://portaltest.isim360.com/

Giden e-Fatura

Giden e-Fatura gönderim ve sorgulama için gerekli servis uç noktalarını içerir.

Post

Yeni e-Fatura kayıt etmek için kullanılır.

Turkcell e-Şirket fatura oluşturma arayüzlerininde kullandığı modeldir.

Bu model GİB in standart UBL yapısından farklıdır ve sunduğu özellikler fatura oluşturma arayüzlerinin yetenekleri ile sınırlıdır.

Daha önce GİB in standart yapısı ile çalışmış firmaların bu model UBL ile devam etmesini tavsiye ederiz.

Request Body schema: application/json
recordType
required
int
Value: "e-Fatura : 1"

e-Fatura oluşturmak için RecordType 1 olarak göndermelisiniz.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir. Oluşturacağınız faturayı taslak halinde kayıt etmek için 0, kaydedildiği anda, otomatik gönderilmesini istiyorsanız 20 olarak ayarlamanız gerekmektedir. Herhangi bir değer göndermezseniz faturanız 0 (Taslak) olarak kaydedilir.

localReferenceId
string

Muhasebe/ERP sisteminizde yer alan identifier numarayı bu alanda gönderebilir ve bu alan vasıtasıtasıyla Muhasebe / ERP uygulamanızdaki kayıt ile faturanızı eşleştirebilirsiniz.

useManualInvoiceId
bool

16 haneli fatura numarası, sizin tarafınızdan verilecek ise 'true' olarak gönderilmelidir, sizin göndermiş olduğunuz fatura numarası sistem tarafından takip edilmemektedir, bu yüzden göndermeniz durumlarda, sistem kendisinde bulunan sıradaki fatura numarasını verecektir.. Örnek fatura numarası: EPA2019000001220. 'false' olduğu durumda, sistem tarafından varsayılan seriden bir sonraki numara otomatik verilir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz. Eğer boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

note
string

Faturanıza not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

Array of objects

Fatura içerisinde liste şeklinde not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

required
object

Faturaya ait alıcı bilgilerin bulunduğu alandır.

object

Faturaya ait genel bilgilerin bulunduğu alandır.

Array of objects (invoiceLines)

Fatura içerisindeki mail veya hizmetler alanıdır. Bir veya birden fazla kalem olacak şekilde girilebilir.

Array of objects (relatedDespatchList)

Fatura irsaliye eklenmek istendiğinde bu alan doldurulmalı. Bir veya birden fazla kalem olacak şekilde girilebilir.

object

Fatura KDV bilgisinin hesaplanması ile ilgili seçim alanıdır.

object

Bu elemana ödeme şekli ile ilgili bilgiler yazılabilecektir.

object

Bu elemana ödeme koşulları ve ödemenin yapılmaması halinde uygulanacak müeyyideler yazılabilecektir.

object
object

İlave fatura bilgileri.

object

Yolcu beraber / ihracat fatura senaryosunda 'Malı Alan Kişi/Kurum Bilgileri' alanıdır. Kamu kurumlarına kesilen faturalarda ise 'Asıl Alıcı Bilgileri' olarak dolduruluyor.

object

Yolcu beraber fatura senaryosunda doldurulması gereken kısımdır.

Array of objects (allowanceCharges)

İlave Fatura Bilgileri, Hal Tipi Fatura gönderimlerinde kullanılmaktadır.

Responses

Request samples

Content type
application/json
{
  • "recordType": 1,
  • "status": 20,
  • "localReferenceId": "string",
  • "useManualInvoiceId": null,
  • "xsltCode": null,
  • "note": "string",
  • "notes": [
    ],
  • "addressBook": {
    },
  • "generalInfoModel": {
    },
  • "invoiceLines": [
    ],
  • "relatedDespatchList": [
    ],
  • "ublSettingsModel": {
    },
  • "paymentMeansModel": {
    },
  • "paymentTermsModel": {
    },
  • "orderInfoModel": {
    },
  • "additionalInvoiceTypeInfo": {
    },
  • "buyerCustomerInfoModel": {
    },
  • "taxRepresentativePartyInfoModel": {
    },
  • "allowanceCharges": [
    ]
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Put

Fatura güncelleme methotudur. Turkcell e-Şirket fatura güncelleme arayününde kullandığı uç noktasıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Request Body schema: application/json
recordType
required
int
Value: "e-Fatura : 1"

e-Fatura oluşturmak için RecordType 1 olarak göndermelisiniz.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir. Oluşturacağınız faturayı taslak halinde kayıt etmek için 0, kaydedildiği anda, otomatik gönderilmesini istiyorsanız 20 olarak ayarlamanız gerekmektedir. Herhangi bir değer göndermezseniz faturanız 0 (Taslak) olarak kaydedilir.

localReferenceId
string

Muhasebe/ERP sisteminizde yer alan identifier numarayı bu alanda gönderebilir ve bu alan vasıtasıtasıyla Muhasebe / ERP uygulamanızdaki kayıt ile faturanızı eşleştirebilirsiniz.

useManualInvoiceId
bool

16 haneli fatura numarası, sizin tarafınızdan verilecek ise 'true' olarak gönderilmelidir, sizin göndermiş olduğunuz fatura numarası sistem tarafından takip edilmemektedir, bu yüzden göndermeniz durumlarda, sistem kendisinde bulunan sıradaki fatura numarasını verecektir.. Örnek fatura numarası: EPA2019000001220. 'false' olduğu durumda, sistem tarafından varsayılan seriden bir sonraki numara otomatik verilir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz. Eğer boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

note
string

Faturanıza not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

Array of objects

Fatura içerisinde liste şeklinde not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

required
object

Faturaya ait alıcı bilgilerin bulunduğu alandır.

object

Faturaya ait genel bilgilerin bulunduğu alandır.

Array of objects (invoiceLines)

Fatura içerisindeki mail veya hizmetler alanıdır. Bir veya birden fazla kalem olacak şekilde girilebilir.

Array of objects (relatedDespatchList)

Fatura irsaliye eklenmek istendiğinde bu alan doldurulmalı. Bir veya birden fazla kalem olacak şekilde girilebilir.

object

Fatura KDV bilgisinin hesaplanması ile ilgili seçim alanıdır.

object

Bu elemana ödeme şekli ile ilgili bilgiler yazılabilecektir.

object

Bu elemana ödeme koşulları ve ödemenin yapılmaması halinde uygulanacak müeyyideler yazılabilecektir.

object
object

İlave fatura bilgileri.

object

Yolcu beraber / ihracat fatura senaryosunda 'Malı Alan Kişi/Kurum Bilgileri' alanıdır. Kamu kurumlarına kesilen faturalarda ise 'Asıl Alıcı Bilgileri' olarak dolduruluyor.

object

Yolcu beraber fatura senaryosunda doldurulması gereken kısımdır.

Array of objects (allowanceCharges)

İlave Fatura Bilgileri, Hal Tipi Fatura gönderimlerinde kullanılmaktadır.

Responses

Request samples

Content type
application/json
{
  • "recordType": 1,
  • "status": 20,
  • "localReferenceId": "string",
  • "useManualInvoiceId": null,
  • "xsltCode": null,
  • "note": "string",
  • "notes": [
    ],
  • "addressBook": {
    },
  • "generalInfoModel": {
    },
  • "invoiceLines": [
    ],
  • "relatedDespatchList": [
    ],
  • "ublSettingsModel": {
    },
  • "paymentMeansModel": {
    },
  • "paymentTermsModel": {
    },
  • "orderInfoModel": {
    },
  • "additionalInvoiceTypeInfo": {
    },
  • "buyerCustomerInfoModel": {
    },
  • "taxRepresentativePartyInfoModel": {
    },
  • "allowanceCharges": [
    ]
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Update Status

Bu metot fatura statüsünü güncellemek için kullanılır.

Çoğunlukla anlık hata alan faturaları tekrar denemek (tetiklemek) için kullanılır.

Bazı durumlarda taslak olarak kaydedilen faturaların, gönderilmesi içinde kullanılabilir.

Request Body schema: application/json
ids
required
Guid [ ]

Erişilmek istenen kaynağın unique id veya id'leri dizi olarak (ETTN).

status
required
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir.

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Post (UBL)

Faturayı UBL olarak hazırlayanların kullanabileceği uç noktasıdır.

XML oluşturmak için UBL TR 1.2 standart modelinden yararlanabilirsiniz,

UBL inizi oluşturduktan sonra, file (dosya) olarak bu uç noktasına göndermelisiniz.

Request Body schema: multipart/form-data
invoiceFile
required
file

Oluşturduğunuz UBL'i file olarak bu alanda göndermelisiniz. invoiceFile içerisinde göndermiş olduğunuz UUID alanı, yeni fatura eklerken, daha önce gönderilmiş herhangi bir faturanın UUID ile aynı olmamalıdır. UUID sadece fatura güncelleme işleminde aynı kalmalıdır.

appType
required
int
Value: "e-Fatura : 1"

e-Fatura oluşturmak için AppType 1 olarak göndermelisiniz.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

prefix
string

Fatura numarası ön eki Örn: 'EPA'. Sistem tarafından fatura numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. Faturayı güncellemesi işleminde ön ek güncellenmemektedir.

useManualInvoiceId
bool

InvoiceZip içerisinde bulunan XML'deki, 16 haneli fatura numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz.Eğer xml içerisinde 'AdditionalDocumentReference' alanın da xslt kodunu gönderirseniz kod içinde ki görsel geçerli olacaktır.Boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

targetAlias
string

Alıcı firmanın posta kutusu, alias bilgisidir. e-Arşiv Faturalar alias bilgisi bulunmadığı için e-Arşiv Faturalar için bu alanı boş geçebilirsiniz. Faturayı güncelleyeceğiniz zaman, alıcı firmanın birden fazla alias değeri bulunuyorsa, bu alanı doldurmanız zorunludur.

useFirstAlias
bool

Birden fazla targetAlias değerine sahip alıcaya e-Fatura kesiyorsanız ve targetAlias değerini boş geçtiyseniz, bu alanı true olarak göndermelisiniz, aksi durumda e-Fatura göndermiş olduğunuz firmanın birden fazla etiketi(alias)'ı mevcuttur. uyarısı alırsınız.

Responses

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Put (UBL)

Faturayı UBL olarak hazırlayanların, fatura üzerinde değişiklik yapma veya hatalı faturalarını güncellemek için kullanabileceği uç noktasıdır.

UBL olarak fatura gönderme metodu ile güncelleme metotlarının model yapıları aynıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Request Body schema: multipart/form-data
invoiceFile
required
file

Oluşturduğunuz UBL'i file olarak bu alanda göndermelisiniz. invoiceFile içerisinde göndermiş olduğunuz UUID alanı, yeni fatura eklerken, daha önce gönderilmiş herhangi bir faturanın UUID ile aynı olmamalıdır. UUID sadece fatura güncelleme işleminde aynı kalmalıdır.

appType
required
int
Value: "e-Fatura : 1"

e-Fatura oluşturmak için AppType 1 olarak göndermelisiniz.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

prefix
string

Fatura numarası ön eki Örn: 'EPA'. Sistem tarafından fatura numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. Faturayı güncellemesi işleminde ön ek güncellenmemektedir.

useManualInvoiceId
bool

InvoiceZip içerisinde bulunan XML'deki, 16 haneli fatura numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz.Eğer xml içerisinde 'AdditionalDocumentReference' alanın da xslt kodunu gönderirseniz kod içinde ki görsel geçerli olacaktır.Boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

targetAlias
string

Alıcı firmanın posta kutusu, alias bilgisidir. e-Arşiv Faturalar alias bilgisi bulunmadığı için e-Arşiv Faturalar için bu alanı boş geçebilirsiniz. Faturayı güncelleyeceğiniz zaman, alıcı firmanın birden fazla alias değeri bulunuyorsa, bu alanı doldurmanız zorunludur.

useFirstAlias
bool

Birden fazla targetAlias değerine sahip alıcaya e-Fatura kesiyorsanız ve targetAlias değerini boş geçtiyseniz, bu alanı true olarak göndermelisiniz, aksi durumda e-Fatura göndermiş olduğunuz firmanın birden fazla etiketi(alias)'ı mevcuttur. uyarısı alırsınız.

Responses

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Get Status

Gönderilen e-faturanın durumunu sorgulayan uç noktasıdır. Gönderilen e-faturanın durumuna göre envelope (zarf) bilgileri dönmemektedir. Modellerinizi bu hususa göre oluşturmalısınız.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "id": null,
  • "invoiceNumber": "string",
  • "status": "Taslak : 0",
  • "message": "string",
  • "envelopeId": null,
  • "envelopeStatus": "Zarf kuyruğa Ekledi : 1000",
  • "envelopeMessage": "string"
}

Get Invoice Reason

Gönderilen ticari faturanın kabul/red bilgisi ve gönderilen ihracat faturasında Gümrük ve Ticaret Bakanlığından dönen GTB_REFNO,GTB_GCB_TESCILNO,GTB_FIILI_IHRACAT_TARIHI değerlerini alabilirsiniz. Test ortamı Gümrük ve Ticaret Bakanlığı ile entegre olmadı için test ortamında bu bilgi dönmeyecektir.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Arayüzden Kesilen e-Faturalar

Entegrasyon yapan firmaların, arayüzden kesilen faturalara ait Ettn bilgilerine ulaşabilmesi için geliştirilen uç noktasıdır. Arayüzden kesilen faturalara ulaşmak için yapılması gereken ilk işlem, fatura gönderimlerinde localReferenceId alanı dolu gönderilmeli. Bu alan arayüz üzerinden doldurulamayan bir alandır. LocalReferenceId alanına ait açıklamayı fatura gönderim için yapılan açıklamalarda bulabilirsiniz.

query Parameters
startDate - (2019-10-30 00:00:00)
string

Faturaların Turkcell e-şirkette oluşma tarihinin başlanıç değeri. Fatura tarihi değildir

startDate - (2019-10-30 00:00:00)
string

Faturaların Turkcell e-şirkette oluşma tarihinin bitiş değeri. Fatura tarihi değildir

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get HTML

Faturayı Html formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get PDF

Faturayı PDF formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get UBL

Faturayı Ubl formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Gelen e-Fatura

Gelen e-Fatura servis bilgileri.

Get List

Gelen e-faturaları, sayfalı olarak çeken uç noktasıdır. Belirtilen parametrelerde filtreleme uygulayabilirsiniz.

query Parameters
isNew
string

Gelen faturalar isNew true olarak sisteme kaydedilir. Muhasebe / ERP programıza çekmiş olduğunuz faturaları tekrar çekmek istemiyorsanız, çekmiş oldunuğunuz faturaların isNew alanını false olarak güncelleyebilirsiniz.

Bu bilgisi false yapmak için inboxinvoice/updateisnew metodunuz kullanabilirsiniz.

invoiceNumber
string

Fatura numarası bilgisi, ÖRNEK:EPA2019000001220, 3 hane ön ek, 4 hane yıl bilgisi, 9 fatura numarası olacak şekilde 16 haneli olur.

targetVknTckn
string

Gönderen firma VKN/TCKN bilgisi.

type
int
Enum: "Temel : 0" "Ticari : 1" "İhracat : 2" "Yolcu Beraber Fatura : 3"

Faturanın senaryosu bilgisi.

tipType
int
Enum: "Satış : 1" "İade : 2" "İstisna : 3" "Özel Matrah : 4" "Tevkifat : 5" "Araç Tescil : 6" "İhraç Kayıtlı : 7" "SGK : 8"

Faturanın tip bilgisi.

status
int
Enum: "Hata : 40" "Onaylandı : 60" "Onaylanıyor : 61" "Onaylama Hatası : 62" "Otomatik Onaylandı : 65" "Onay Bekliyor : 70" "Reddedildi : 80" "Reddediliyor : 81" "Reddetme Hatası : 82" "İade : 90" "İade Ediliyor : 91" "İade Hatası : 92" "e-Fatura İptal : 99"

Faturanın durumu bilgisi.e-Fatura iptal statüsü , karşı firma ile GİB portal üzerinde yaptığınız iptal sürecinden sonra, bize bilgi vermeniz dahilinde manuel yaptığımız bir işlemdir. Sistem üzerinden e-Fatura iptal işlemi yapılamamaktadır.

startDate - (2019-10-30 00:00:00)
string

Çekmek istediğiniz faturaların başlangıç tarihini belirtir.

endDate - (2019-10-30 00:00:00)
string

Çekmek istediğiniz faturaların son tarihini belirtir. Bulunduğunuz gün ve saatten büyük değer olmamalıdır.

pageIndex
int

Çekmek istediğiniz başlangıç sayfasını belirtir.

pageSize
int

Çekmek istediğiniz sayfada kaç adet kayıt olması gerektiğini belirtir. Tek seferde max 500 kayıt

isDesc
bool
Enum: "true : Evet" "false : Hayır"

Çekmek istediğiniz faturaları oluşturma tarihine göre sıralamak için gönderilir.

Responses

Response samples

Content type
application/json
{
  • "pageIndex": null,
  • "pageSize": null,
  • "totalCount": null,
  • "totalPages": null,
  • "hasNextPage": null,
  • "hasPreviousPage": null,
  • "items": {
    }
}

Get Status

Gelen faturanın durumunu sorgulamak için kullanılacak uç noktasıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string",
  • "Status": "string"
}

Get HTML

Faturayı html formatında indirmenizi sağlayan uç noktasıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get PDF

Faturayı PDF formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get ZİP

Faturayı Zip formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get UBL

Faturayı Ubl formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Put IsNewFlag

Gelen faturalar isNew true olarak sisteme kaydedilir. Muhasebe / ERP programıza çekmiş olduğunuz faturaları tekrar çekmek istemiyorsanız, çekmiş oldunuğunuz faturaların isNew alanını false olarak güncelleyebilirsiniz.

Request Body schema: application/json
Array ()
InvoiceId
Guid

Erişilmek istenen kaynağın unique id'si

IsNew
bool

Sisteme çekilen faturanın bir daha çekilmesi istenmiyorsa, çekilen faturanın IsNew alanı false yapılır.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
null

e-Arşiv

e-Arşiv Fatura gönderim ve sorgulama için gerekli servis uç noktalarını içerir.

Post

Yeni e-Arşiv Fatura kayıt etmek için kullanılır.

Turkcell e-Şirket fatura oluşturma arayüzlerininde kullandığı modeldir.

Bu model GİB in standart UBL yapısından farklıdır ve sunduğu özellikler fatura oluşturma arayüzlerinin yetenekleri ile sınırlıdır.

Daha önce GİB in standart yapısı ile çalışmış firmaların bu model UBL ile devam etmesini tavsiye ederiz.

Request Body schema: application/json
recordType
required
int
Value: "e-Arşiv Fatura : 0"

e-Arşiv Fatura oluşturmak için RecordType 0 olarak göndermelisiniz.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir. Oluşturacağınız faturayı taslak halinde kayıt etmek için 0, kaydedildiği anda, otomatik gönderilmesini istiyorsanız 20 olarak ayarlamanız gerekmektedir. Herhangi bir değer göndermezseniz faturanız 0 (Taslak) olarak kaydedilir.

localReferenceId
string

Muhasebe/ERP sisteminizde yer alan identifier numarayı bu alanda gönderebilir ve bu alan vasıtasıtasıyla Muhasebe / ERP uygulamanızdaki kayıt ile faturanızı eşleştirebilirsiniz.

useManualInvoiceId
bool

16 haneli fatura numarası, sizin tarafınızdan verilecek ise 'true' olarak gönderilmelidir, sizin göndermiş olduğunuz fatura numarası sistem tarafından takip edilmemektedir, bu yüzden göndermeniz durumlarda, sistem kendisinde bulunan sıradaki fatura numarasını verecektir.. Örnek fatura numarası: EPA2019000001220. 'false' olduğu durumda, sistem tarafından varsayılan seriden bir sonraki numara otomatik verilir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz. Eğer boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

note
string

Faturanıza not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

Array of objects

Fatura içerisinde liste şeklinde not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

required
object

Faturaya ait alıcı bilgilerin bulunduğu alandır.

object

Faturaya ait genel bilgilerin bulunduğu alandır.

Array of objects (invoiceLines)

Fatura içerisindeki mail veya hizmetler alanıdır. Bir veya birden fazla kalem olacak şekilde girilebilir.

Array of objects (relatedDespatchList)

Fatura irsaliye eklenmek istendiğinde bu alan doldurulmalı. Bir veya birden fazla kalem olacak şekilde girilebilir.

object

Fatura KDV bilgisinin hesaplanması ile ilgili seçim alanıdır.

object

Bu elemana ödeme şekli ile ilgili bilgiler yazılabilecektir.

object

Bu elemana ödeme koşulları ve ödemenin yapılmaması halinde uygulanacak müeyyideler yazılabilecektir.

object
object

AppType e-Arşiv olmasi durumunda gereklidir.

object

AppType e-Arşiv olmasi durumunda mail gönderimi için doldurulması gereken alanlar.

object

İlave fatura bilgileri.

object

Yolcu beraber / ihracat fatura senaryosunda 'Malı Alan Kişi/Kurum Bilgileri' alanıdır. Kamu kurumlarına kesilen faturalarda ise 'Asıl Alıcı Bilgileri' olarak dolduruluyor.

object

Yolcu beraber fatura senaryosunda doldurulması gereken kısımdır.

Array of objects (allowanceCharges)

İlave Fatura Bilgileri, Hal Tipi Fatura gönderimlerinde kullanılmaktadır.

Responses

Request samples

Content type
application/json
{
  • "recordType": 1,
  • "status": 20,
  • "localReferenceId": "string",
  • "useManualInvoiceId": null,
  • "xsltCode": null,
  • "note": "string",
  • "notes": [
    ],
  • "addressBook": {
    },
  • "generalInfoModel": {
    },
  • "invoiceLines": [
    ],
  • "relatedDespatchList": [
    ],
  • "ublSettingsModel": {
    },
  • "paymentMeansModel": {
    },
  • "paymentTermsModel": {
    },
  • "orderInfoModel": {
    },
  • "archiveInfoModel": {
    },
  • "eArsivInfo": {
    },
  • "additionalInvoiceTypeInfo": {
    },
  • "buyerCustomerInfoModel": {
    },
  • "taxRepresentativePartyInfoModel": {
    },
  • "allowanceCharges": [
    ]
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Put

e-Arşiv Fatura güncelleme methotudur. Turkcell e-Şirket fatura güncelleme arayününde kullandığı uç noktasıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Request Body schema: application/json
recordType
required
int
Value: "e-Arşiv Fatura : 0"

e-Arşiv Fatura oluşturmak için RecordType 0 olarak göndermelisiniz.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir. Oluşturacağınız faturayı taslak halinde kayıt etmek için 0, kaydedildiği anda, otomatik gönderilmesini istiyorsanız 20 olarak ayarlamanız gerekmektedir. Herhangi bir değer göndermezseniz faturanız 0 (Taslak) olarak kaydedilir.

localReferenceId
string

Muhasebe/ERP sisteminizde yer alan identifier numarayı bu alanda gönderebilir ve bu alan vasıtasıtasıyla Muhasebe / ERP uygulamanızdaki kayıt ile faturanızı eşleştirebilirsiniz.

useManualInvoiceId
bool

16 haneli fatura numarası, sizin tarafınızdan verilecek ise 'true' olarak gönderilmelidir, sizin göndermiş olduğunuz fatura numarası sistem tarafından takip edilmemektedir, bu yüzden göndermeniz durumlarda, sistem kendisinde bulunan sıradaki fatura numarasını verecektir.. Örnek fatura numarası: EPA2019000001220. 'false' olduğu durumda, sistem tarafından varsayılan seriden bir sonraki numara otomatik verilir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz. Eğer boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

note
string

Faturanıza not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

Array of objects

Fatura içerisinde liste şeklinde not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

required
object

Faturaya ait alıcı bilgilerin bulunduğu alandır.

object

Faturaya ait genel bilgilerin bulunduğu alandır.

Array of objects (invoiceLines)

Fatura içerisindeki mail veya hizmetler alanıdır. Bir veya birden fazla kalem olacak şekilde girilebilir.

Array of objects (relatedDespatchList)

Fatura irsaliye eklenmek istendiğinde bu alan doldurulmalı. Bir veya birden fazla kalem olacak şekilde girilebilir.

object

Fatura KDV bilgisinin hesaplanması ile ilgili seçim alanıdır.

object

Bu elemana ödeme şekli ile ilgili bilgiler yazılabilecektir.

object

Bu elemana ödeme koşulları ve ödemenin yapılmaması halinde uygulanacak müeyyideler yazılabilecektir.

object
object

AppType e-Arşiv olmasi durumunda gereklidir.

object

AppType e-Arşiv olmasi durumunda mail gönderimi için doldurulması gereken alanlar.

object

İlave fatura bilgileri.

object

Yolcu beraber / ihracat fatura senaryosunda 'Malı Alan Kişi/Kurum Bilgileri' alanıdır. Kamu kurumlarına kesilen faturalarda ise 'Asıl Alıcı Bilgileri' olarak dolduruluyor.

object

Yolcu beraber fatura senaryosunda doldurulması gereken kısımdır.

Array of objects (allowanceCharges)

İlave Fatura Bilgileri, Hal Tipi Fatura gönderimlerinde kullanılmaktadır.

Responses

Request samples

Content type
application/json
{
  • "recordType": 1,
  • "status": 20,
  • "localReferenceId": "string",
  • "useManualInvoiceId": null,
  • "xsltCode": null,
  • "note": "string",
  • "notes": [
    ],
  • "addressBook": {
    },
  • "generalInfoModel": {
    },
  • "invoiceLines": [
    ],
  • "relatedDespatchList": [
    ],
  • "ublSettingsModel": {
    },
  • "paymentMeansModel": {
    },
  • "paymentTermsModel": {
    },
  • "orderInfoModel": {
    },
  • "archiveInfoModel": {
    },
  • "eArsivInfo": {
    },
  • "additionalInvoiceTypeInfo": {
    },
  • "buyerCustomerInfoModel": {
    },
  • "taxRepresentativePartyInfoModel": {
    },
  • "allowanceCharges": [
    ]
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Post (UBL)

e-Arşiv Faturayı UBL olarak hazırlayanların kullanabileceği uç noktasıdır.

XML oluşturmak için UBL TR 1.2 standart modelinden yararlanabilirsiniz,

UBL inizi oluşturduktan sonra, file olarak bu uç noktasına göndermelisiniz.

Request Body schema: multipart/form-data
invoiceFile
required
file

Oluşturduğunuz UBL'i file olarak bu alanda göndermelisiniz. invoiceFile içerisinde göndermiş olduğunuz UUID alanı, yeni fatura eklerken, daha önce gönderilmiş herhangi bir faturanın UUID ile aynı olmamalıdır. UUID sadece fatura güncelleme işleminde aynı kalmalıdır.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

prefix
string

Fatura numarası ön eki Örn: 'EPA'. Sistem tarafından fatura numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. Faturayı güncellemesi işleminde ön ek güncellenmemektedir.

useManualInvoiceId
bool

InvoiceZip içerisinde bulunan XML'deki, 16 haneli fatura numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz.Eğer xml içerisinde 'AdditionalDocumentReference' alanın da xslt kodunu gönderirseniz kod içinde ki görsel geçerli olacaktır.Boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

sendEMail
bool
Enum: "Gönder : true" "Gönderme : false"

e-Arşiv fatura için karşı firmaya e-posta göndermek/göndermek için kullanılan alandır.

eMailAddress
string

e-posta gönderilecek firmanın/kişinin e-posta adresinin doldurulduğu alandır.Birden fazla firma/kişiye e-posta göndermek isterseniz, bu alanın içersine (;) ile ayrım yapılarak yazılabilir Ör:(deneme@deneme1.com;deneme@deneme2.com). sendEMail alanı true olduğu zaman zorunludur.

allowOldEArsivCustomer
bool

Sonradan e-fatura mükellefi olan firmalara eski tarihli e-arşiv fatura kesmek istediğinizde bu alanı true olarak göndermelisiniz.

Responses

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Put (UBL)

e-Arşiv Faturayı UBL olarak hazırlayanların, fatura üzerinde değişiklik yapma veya hatalı e-arşiv faturalarını güncellemek için kullanabileceği uç noktasıdır.

UBL olarak e-arşiv fatura gönderme metodu ile güncelleme metotlarının model yapıları aynıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Request Body schema: multipart/form-data
invoiceFile
required
file

Oluşturduğunuz UBL'i file olarak bu alanda göndermelisiniz. invoiceFile içerisinde göndermiş olduğunuz UUID alanı, yeni fatura eklerken, daha önce gönderilmiş herhangi bir faturanın UUID ile aynı olmamalıdır. UUID sadece fatura güncelleme işleminde aynı kalmalıdır.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

Faturanın durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

prefix
string

Fatura numarası ön eki Örn: 'EPA'. Sistem tarafından fatura numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. Faturayı güncellemesi işleminde ön ek güncellenmemektedir.

useManualInvoiceId
bool

InvoiceZip içerisinde bulunan XML'deki, 16 haneli fatura numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz.Eğer xml içerisinde 'AdditionalDocumentReference' alanın da xslt kodunu gönderirseniz kod içinde ki görsel geçerli olacaktır.Boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

sendEMail
bool
Enum: "Gönder : true" "Gönderme : false"

e-Arşiv fatura için karşı firmaya e-posta göndermek/göndermek için kullanılan alandır.

eMailAddress
string

e-posta gönderilecek firmanın/kişinin e-posta adresinin doldurulduğu alandır.Birden fazla firma/kişiye e-posta göndermek isterseniz, bu alanın içersine (;) ile ayrım yapılarak yazılabilir Ör:(deneme@deneme1.com;deneme@deneme2.com). sendEMail alanı true olduğu zaman zorunludur.

allowOldEArsivCustomer
bool

Sonradan e-fatura mükellefi olan firmalara eski tarihli e-arşiv fatura kesmek istediğinizde bu alanı true olarak göndermelisiniz.

Responses

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Get Status

Gönderilen e-Arşiv Fatura durumunu sorgulayan uç noktasıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "id": null,
  • "invoiceNumber": "string",
  • "status": "Taslak : 0",
  • "message": "string"
}

Get HTML

e-Arşiv Faturayı Html formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get PDF

e-Arşiv Faturayı PDF formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get UBL

e-Arşiv Faturayı Ubl formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Arayüzden Kesilen e-Arşiv Faturalar

Entegrasyon yapan firmaların, arayüzden kesilen e-arşiv faturalara ait Ettn bilgilerine ulaşabilmesi için geliştirilen uç noktasıdır. Arayüzden kesilen e-arşiv faturalara ulaşmak için yapılması gereken ilk işlem, e-arşiv fatura gönderimlerinde localReferenceId alanı dolu gönderilmeli. Bu alan arayüz üzerinden doldurulamayan bir alandır. LocalReferenceId alanına ait açıklamayı e-arşiv fatura gönderim için yapılan açıklamalarda bulabilirsiniz.

query Parameters
startDate - (2019-10-30 00:00:00)
string

Faturaların Turkcell e-şirkette oluşma tarihinin başlanıç değeri. Fatura tarihi değildir

startDate - (2019-10-30 00:00:00)
string

Faturaların Turkcell e-şirkette oluşma tarihinin bitiş değeri. Fatura tarihi değildir

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get EMailDetail

e-Arşiv Fatura için gönderilen e-postanın uygulamadaki durumunu döndürür.

query Parameters
id
Guid

Erişilmek istenen e-Arşiv Faturanın unique Id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Id": null,
  • "InvoiceId": null,
  • "EmailAddress": "string",
  • "EmailStatus": "0 : Oluşturuldu",
  • "TryCount": null,
  • "LastTryDate": null,
  • "CreatedDate": null
}

RetryInvoiceMail For Error

e-Arşiv Faturaya ait gönderilen e-postanın hatalı durumundaysa tekrar denemek için kullanılan uç noktasıdır.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Error": {
    }
}

RetryInvoiceMail

e-Arşiv Fatura için gönderilen e-postayı tekrardan göndermek veya yeni bir mail adresine göndermek için kullanılan uç noktasıdır.

Request Body schema: application/json
id
required
Guid

Erişilmek istenen e-Arşiv Faturanın unique Id'si (ETTN)

emailaddresses
required
string

e-Posta bilgisi, ; ile ayırarak birden fazla kişiye gönderim yapabilirsiniz Ör: deneme1@gmail.com;deneme2@gmail.com

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
null

Cancel Invoice

e-Arşiv Faturayı iptal etmek için bu metot kullanılır.Sadece başarılı durumdaki (Status = 60 ) olan e-Arşiv Faturalar iptal edilebilir. Parametre olarak Guid Array alır.

["5BC57BFA-DBB4-4D7D-8050-9322E23CA529"]

["5BC57BFA-DBB4-4D7D-8050-9322E23CA529","5BC57BFA-DBB4-4D7D-8050-9322E23CA529"]

Responses

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Gelen Ticari Fatura Cevap

Get

Fatura durum sorgulama. Bu metot ile faturanızın onaylandı mı ? Reddedildi mi ? Kuyrukta mı ? vb durumunu öğrenmek için kullanabilirsiniz.

path Parameters
invoiceid
Guid

Fatura Id'si

Responses

Response samples

Content type
application/json
{
  • "InvoiceId": null,
  • "Status": 60,
  • "Reason": "string",
  • "ResponseStatus": 2
}

Post

Gelen ticari faturayı kabul/red etme işlemlerini bu metot üzerinden gerçekleştirebilirsiniz.

Request Body schema: application/json
InvoiceId
required
Guid

Fatura Id'si

Status
required
int
Enum: "1 : Kabul" "2 : Red"

Fatura onay durumu

Reason
string

Onaylama/Reddetme nedeni

Responses

Request samples

Content type
application/json
{
  • "InvoiceId": "E63032B9-E307-41B9-9E37-74E13BB514E6",
  • "Status": 1,
  • "Reason": "string"
}

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Put RetryInvoice

Onaylama/Reddetme hata durumunda olan faturayı tekrar deneme.

Request Body schema: application/json
Ids
Guid []

Guid Id Dizisi

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
null

Mükellefler

e-Fatura mükellef listesi, gönderici/alıcı birim bilgileri

GibUserZipList

Zip içersinde Json model döner.İçerisinde sadece e-fatura kullanıcılarının alıcı bilgileri(pk/alias) vardır.Model açıklamaları 200 response içindedir.

Responses

Response samples

Content type
application/json
null

Statik Listeler

UnitCode List

Fatura kalemleri içerisinde kullanılan birimlerin listesini bu metot üzerinden çekebilirsiniz.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Country List

Ülkelerin çekildiği metotdur.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TaxOffice List

Vergi dairelerinin çekildiği metotdur.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TaxTypeCode List

Vergi parametre kodları ve açıklamalarının çekildiği metotdur.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Withholding List

Tevkifat kodları ve açıklamalarının çekildiği metotdur.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

TaxExemptionReason List

Vergi muafiyet kodları ve açıklamalarının çekildiği metotdur.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

E-MM

e-Müstahsil Makbuzu gönderim ve sorgulama için kullanılan servis uç noktalarını içerir.

Post (UBL)

e-Müstahsil Makbuzunu UBL olarak hazırlayanların kullanabileceği uç noktasıdır. Hazırlanan xml, zip'lenerek modelde ilgili alana eklenerek gönderilir.

XML modelini istemiş olduğunuz bilgiler ile oluşturduktan sonra,

İlgili modeli ilk önce XML formatına dönüştürerek dönüştürülen XML dosyasınıda ziplemek için

bytcode dönüştürmeniz gerekmektedir daha sonra bu bytcodu Base64 formatıyla stringe parse ederek servise gönderebilirsiniz.

Request Body schema: application/json
producerReceiptZip
required
string

Stringe parse ettiğiniz byte kodu producerReceiptZip içerisinde göndermeniz gerekmektedir. ProducerReceiptZip içerisinde göndermiş olduğunuz UUID alanı, yeni e-Müstahsil Makbuzu eklerken, daha önce gönderilmiş herhangi bir e-Müstahsil Makbuzunun UUID ile aynı olmamalıdır. UUID sadece e-Müstahsil Makbuzunun güncelleme işleminde aynı kalmalıdır.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

e-Müstahsil Makbuzunun durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

prefix
string

e-Müstahsil Makbuz numarası ön eki Örn: 'EPA'. Sistem tarafından e-Müstahsil Makbuz numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. e-Müstahsil Makbuz güncellemesi işleminde ön ek güncellenmemektedir.

useManualProducerReceiptId
bool

ProducerReceiptZip içerisinde bulunan XML'deki, 16 haneli e-Müstahsil Makbuz numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

sendEMail
bool
Enum: "Gönder : true" "Gönderme : false"

e-Müstahsil Makbuzu için karşı firmaya e-posta göndermek/göndermek için kullanılan alandır.

eMailAddress
string

e-posta gönderilecek firmanın/kişinin e-posta adresinin doldurulduğu alandır.Birden fazla firma/kişiye e-posta göndermek isterseniz, bu alanın içersine (;) ile ayrım yapılarak yazılabilir Ör:(deneme@deneme1.com;deneme@deneme2.com). sendEMail alanı true olduğu zaman zorunludur.

Responses

Request samples

Content type
application/json
{
  • "producerReceiptZip": "string",
  • "status": "Taslak : 0",
  • "localReferenceId": "string",
  • "prefix": "string",
  • "useManualProducerReceiptId": null,
  • "checkLocalReferenceId": null,
  • "sendEMail": true,
  • "eMailAddress": "string"
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "ProducerReceiptNumber": "string"
}

Update Status List

Bu metot e-Müstahsil Makbuzunun statüsünü güncellemek için kullanılır.

Hata alan e-Müstahsil Makbuzunu düzenlemek için taslağa çekmeniz gerekiyor (Status = 0).

e-Müstahsil Makbuzunu düzenledikten sonra bu metodu tekrar çağırarak makbuz statüsünü 20 (Kuyrukta) yaparak makbuzlarınızın gönderimini sağlayabilirsiniz.

Request Body schema: application/json
ids
required
Guid [ ]

Erişilmek istenen kaynağın unique id veya id'leri dizi olarak (ETTN).

status
required
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

e-Müstahsil Makbuzunun durumunu belirtir.

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Put (UBL)

e-Müstahsil Makbuzunu UBL olarak hazırlayanların güncelleme için kullanabileceği uç noktasıdır. Post (UBL)'de olduğu gibi, zip'lenerek modelde ilgili alana eklenerek gönderilir.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Request Body schema: application/json
producerReceiptZip
required
string

Stringe parse ettiğiniz byte kodu producerReceiptZip içerisinde göndermeniz gerekmektedir. ProducerReceiptZip içerisinde göndermiş olduğunuz UUID alanı, yeni e-Müstahsil Makbuzu eklerken, daha önce gönderilmiş herhangi bir e-Müstahsil Makbuzunun UUID ile aynı olmamalıdır. UUID sadece e-Müstahsil Makbuzunun güncelleme işleminde aynı kalmalıdır.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

e-Müstahsil Makbuzunun durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

prefix
string

e-Müstahsil Makbuz numarası ön eki Örn: 'EPA'. Sistem tarafından e-Müstahsil Makbuz numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. e-Müstahsil Makbuz güncellemesi işleminde ön ek güncellenmemektedir.

useManualProducerReceiptId
bool

ProducerReceiptZip içerisinde bulunan XML'deki, 16 haneli e-Müstahsil Makbuz numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

sendEMail
bool
Enum: "Gönder : true" "Gönderme : false"

e-Müstahsil Makbuzu için karşı firmaya e-posta göndermek/göndermek için kullanılan alandır.

eMailAddress
string

e-posta gönderilecek firmanın/kişinin e-posta adresinin doldurulduğu alandır.Birden fazla firma/kişiye e-posta göndermek isterseniz, bu alanın içersine (;) ile ayrım yapılarak yazılabilir Ör:(deneme@deneme1.com;deneme@deneme2.com). sendEMail alanı true olduğu zaman zorunludur.

Responses

Request samples

Content type
application/json
{
  • "producerReceiptZip": "string",
  • "status": "Taslak : 0",
  • "localReferenceId": "string",
  • "prefix": "string",
  • "useManualProducerReceiptId": null,
  • "checkLocalReferenceId": null,
  • "sendEMail": true,
  • "eMailAddress": "string"
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "ProducerReceiptNumber": "string"
}

Cancel Producer Receipt

e-Müstahsil Makbuzunu iptal etmek için bu metot kullanılır.Sadece başarılı durumdaki (Status = 60 ) olan e-Müstahsil Makbuzları iptal edilebilir.İptal edildikten sonraki Status=100 olur. Parametre olarak Guid Array alır.

["5BC57BFA-DBB4-4D7D-8050-9322E23CA529"]

["5BC57BFA-DBB4-4D7D-8050-9322E23CA529","5BC57BFA-DBB4-4D7D-8050-9322E23CA529"]

Responses

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Get Status

e-Müstahsil Makbuzunun durumunu sorgulama.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "producerReceiptNumber": "string",
  • "status": "Taslak : 0",
  • "message": "string"
}

Get HTML

e-Müstahsil Makbuzunu Html formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get PDF

e-Müstahsil Makbuzunu PDF formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get ZİP

e-Müstahsil Makbuzunu Zip formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get UBL

e-Müstahsil Makbuzunu Ubl formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

E-SMM

e-Serbest Meslek Makbuzu gönderim ve sorgulama için kullanılan servis uç noktalarını içerir.

Post

Yeni e-Serbest Meslek Makbuzu kayıt etmek için kullanılır.

Turkcell e-Şirket e-Serbest Meslek Makbuzu oluşturma arayüzlerininde kullandığı modeldir.

Bu model GİB in standart UBL yapısından farklıdır ve sunduğu özellikler e-Serbest Meslek Makbuzu oluşturma arayüzlerinin yetenekleri ile sınırlıdır.

Daha önce GİB in standart yapısı ile çalışmış firmaların bu model UBL ile devam etmesini tavsiye ederiz.

Request Body schema: application/json
status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

e-Serbest Meslek Makbuzunun durumunu belirtir. Oluşturacağınız e-SMMM taslak halinde kayıt etmek için 0, kaydedildiği anda otomatik gönderilmesini istiyorsanız 20 olarak ayarlamanız gerekmektedir. Herhangi bir değer göndermezseniz e-SMM 0 (Taslak) olarak kaydedilir.

sendEMail
bool
Enum: "Gönder : true" "Gönderme : false"

e-Serbest Meslek Makbuzu için karşı firmaya e-posta göndermek/göndermek için kullanılan alandır.

useManualVoucherId
bool

16 haneli e-Serbest Meslek Makbuzu numarası, sizin tarafınızdan verilecek ise 'true' olarak gönderilmelidir, sizin göndermiş olduğunuz e-SMM numarası sistem tarafından takip edilmemektedir, bu yüzden göndermeniz durumlarda, sistem kendisinde bulunan sıradaki e-SMM numarasını verecektir.. Örnek e-SMM numarası: SMM2021000001220. 'false' olduğu durumda, sistem tarafından varsayılan seriden bir sonraki numara otomatik verilir.

xsltCode
string

Sizin için özel oluşturulmış fatura görünümünü var ise, bu fatura görünümünü kullanmak için, size verilen xsltCode bilgisini bu alan ile göndermelisiniz. Eğer boş gönderirseniz standart fatura görünümü ile faturanız kaydedilir. Özel oluşturulan fatura görünümünü destek ekibimiz sisteme yüklemektedir.

note
string

e-Serbest Meslek Makbuzuna not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

Array of objects

e-Serbest Meslek Makbuzu içerisinde liste şeklinde not girmek istediğiniz durumlarda bu alanı kullanabilirsiniz.

required
object

e-Serbest Meslek Makbuzuna ait alıcı bilgilerin bulunduğu alandır.

object

e-Serbest Meslek Makbuzuna ait genel bilgilerin bulunduğu alandır.

Array of objects (voucherInvoiceLines)

e-Serbest Meslek Makbuzu içerisindeki kalem bilgileri.

Responses

Request samples

Content type
application/json
{
  • "status": 20,
  • "sendEMail": true,
  • "useManualVoucherId": null,
  • "xsltCode": null,
  • "note": "string",
  • "notes": [
    ],
  • "addressBook": {
    },
  • "generalInfoModel": {
    },
  • "invoiceLines": [
    ]
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "InvoiceNumber": "string"
}

Post (UBL)

e-Serbest Meslek Makbuzunu UBL olarak hazırlayanların kullanabileceği uç noktasıdır. Hazırlanan xml, zip'lenerek modelde ilgili alana eklenerek gönderilir.

XML modelini istemiş olduğunuz bilgiler ile oluşturduktan sonra,

İlgili modeli ilk önce XML formatına dönüştürerek dönüştürülen XML dosyasınıda ziplemek için

bytcode dönüştürmeniz gerekmektedir daha sonra bu bytcodu Base64 formatıyla stringe parse ederek servise gönderebilirsiniz.

Request Body schema: application/json
voucherZip
string

Stringe parse ettiğiniz byte kodu voucherZip içerisinde göndermeniz gerekmektedir. VoucherZip içerisinde göndermiş olduğunuz UUID alanı, yeni e-Serbest Meslek Makbuzu eklerken, daha önce gönderilmiş herhangi bir e-serbest Meslek Makbuzunun UUID ile aynı olmamalıdır. UUID sadece e-serbest Meslek Makbuzunun güncelleme işleminde aynı kalmalıdır.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

e-Serbest Meslek Makbuzunun durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

prefix
string

e-Serbest Meslek Makbuz numarası ön eki Örn: 'EPA'. Sistem tarafından e-Serbest Meslek Makbuz numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. e-Serbest Meslek Makbuz güncellemesi işleminde ön ek güncellenmemektedir.

UseManualVoucherId
bool

VoucherZip içerisinde bulunan XML'deki, 16 haneli e-Serbest Meslek Makbuz numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

sendEMail
bool
Enum: "Gönder : true" "Gönderme : false"

e-Serbest Meslek Makbuzu için karşı firmaya e-posta göndermek/göndermek için kullanılan alandır.

eMailAddress
string

e-posta gönderilecek firmanın/kişinin e-posta adresinin doldurulduğu alandır.Birden fazla firma/kişiye e-posta göndermek isterseniz, bu alanın içersine (;) ile ayrım yapılarak yazılabilir Ör:(deneme@deneme1.com;deneme@deneme2.com). sendEMail alanı true olduğu zaman zorunludur.

Responses

Request samples

Content type
application/json
{
  • "voucherZip": "string",
  • "status": "Taslak : 0",
  • "localReferenceId": "string",
  • "prefix": "string",
  • "UseManualVoucherId": null,
  • "checkLocalReferenceId": null,
  • "sendEMail": true,
  • "eMailAddress": "string"
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "VoucherNumber": "string"
}

Put (UBL)

e-Serbest Meslek Makbuzunu UBL olarak hazırlayanların güncelleme için kullanabileceği uç noktasıdır. Post (UBL)'de olduğu gibi, zip'lenerek modelde ilgili alana eklenerek gönderilir.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Request Body schema: application/json
voucherZip
string

Stringe parse ettiğiniz byte kodu voucherZip içerisinde göndermeniz gerekmektedir. VoucherZip içerisinde göndermiş olduğunuz UUID alanı, yeni e-Serbest Meslek Makbuzu eklerken, daha önce gönderilmiş herhangi bir e-serbest Meslek Makbuzunun UUID ile aynı olmamalıdır. UUID sadece e-serbest Meslek Makbuzunun güncelleme işleminde aynı kalmalıdır.

status
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

e-Serbest Meslek Makbuzunun durumunu belirtir.

localReferenceId
string

Gönderilen Muhasebe/ERP numarası.

prefix
string

e-Serbest Meslek Makbuz numarası ön eki Örn: 'EPA'. Sistem tarafından e-Serbest Meslek Makbuz numarası veriyorsa ve sistem üzerinde birden fazla ön ek değeriniz bulunuyor ise, bu alana tercih ettiğiniz bir ön ek koyabilirsiniz, aksi durumda sistem, varsaylılan olarak belirlenen ön ek üzerinden fatura numarası verecektir. e-Serbest Meslek Makbuz güncellemesi işleminde ön ek güncellenmemektedir.

UseManualVoucherId
bool

VoucherZip içerisinde bulunan XML'deki, 16 haneli e-Serbest Meslek Makbuz numarasının geçerli olmasını istiyorsanız, bu alanı true olarak set etmelisiniz, aksi durumda sistem kendisi numara verecektir.

checkLocalReferenceId
Nullable bool

Gönderilen Muhasebe/ERP numarası için mükerrerlik kontrolü yapılmak isteniyorsa bu alan true gönderilmelidir.

sendEMail
bool
Enum: "Gönder : true" "Gönderme : false"

e-Serbest Meslek Makbuzu için karşı firmaya e-posta göndermek/göndermek için kullanılan alandır.

eMailAddress
string

e-posta gönderilecek firmanın/kişinin e-posta adresinin doldurulduğu alandır.Birden fazla firma/kişiye e-posta göndermek isterseniz, bu alanın içersine (;) ile ayrım yapılarak yazılabilir Ör:(deneme@deneme1.com;deneme@deneme2.com). sendEMail alanı true olduğu zaman zorunludur.

Responses

Request samples

Content type
application/json
{
  • "voucherZip": "string",
  • "status": "Taslak : 0",
  • "localReferenceId": "string",
  • "prefix": "string",
  • "UseManualVoucherId": null,
  • "checkLocalReferenceId": null,
  • "sendEMail": true,
  • "eMailAddress": "string"
}

Response samples

Content type
application/json
{
  • "Id": "string",
  • "VoucherNumber": "string"
}

Update Status List

Bu metot e-Serbest Meslek Makbuzunun statüsünü güncellemek için kullanılır.

Hata alan e-Serbest Meslek Makbuzunu düzenlemek için taslağa çekmeniz gerekiyor (Status = 0).

e-Serbest Meslek Makbuzunu düzenledikten sonra bu metodu tekrar çağırarak makbuz statüsünü 20 (Kuyrukta) yaparak makbuzlarınızın gönderimini sağlayabilirsiniz.

Request Body schema: application/json
ids
required
Guid [ ]

Erişilmek istenen kaynağın unique id veya id'leri dizi olarak (ETTN).

status
required
int
Enum: "Taslak : 0" "Kaydet ve Gönder : 20"

e-Serbest Meslek Makbuzunun durumunu belirtir.

Responses

Request samples

Content type
application/json
null

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Cancel Voucher

e-Serbest Meslek Makbuzunu iptal etmek için bu metot kullanılır.Sadece başarılı durumdaki (Status = 60 ) olan e-Serbest Meslek Makbuzları iptal edilebilir.İptal edildikten sonraki Status=100 olur. Parametre olarak Guid Array alır.

["5BC57BFA-DBB4-4D7D-8050-9322E23CA529"]

["5BC57BFA-DBB4-4D7D-8050-9322E23CA529","5BC57BFA-DBB4-4D7D-8050-9322E23CA529"]

Responses

Response samples

Content type
application/json
{
  • "Error": {
    }
}

Get Status

e-Serbest Meslek Makbuzunun durumunu sorgulama.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "id": "string",
  • "voucherNumber": "string",
  • "status": "Taslak : 0",
  • "message": "string"
}

Get HTML

e-Serbest Meslek Makbuzunu Html formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get PDF

e-Serbest Meslek Makbuzunu PDF formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get ZİP

e-Serbest Meslek Makbuzunu Zip formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

isStandartXslt
bool

Bu alan false olarak gönderilirse, kendi eklemiş olduğunuz XLST / XSLT'ler içersinden default olana göre fatura getirilir.

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}

Get UBL

e-Serbest Meslek Makbuzunu Ubl formatında indirme.

path Parameters
id
Guid

Erişilmek istenen kaynağın unique id'si (ETTN)

Responses

Response samples

Content type
application/json
{
  • "Response": { }
}