Örnekler
Request Örnekleri
Gerçek ve tüzel alıcılarla TRY, döviz, stopaj ve tevkifat senaryolarına yönelik JSON örnekleri.
Senaryo Kapsamı
Örnekler aynı SmmRequestModel sözleşmesinin gerçek/tüzel alıcı, TRY/döviz, KDV, stopaj, tevkifat, çok kalem, teslim, güncelleme ve iptal varyasyonlarını gösterir. Tutarlar örnek hesaplamadır; oran ve tevkifat kodu işlemin mevzuat bağlamına göre belirlenmelidir.
| Örnek | Alıcı | Para birimi | Vergi/kesinti | Teslim |
|---|---|---|---|---|
| 1 | Tüzel | TRY | KDV + stopaj | Elektronik |
| 2 | Gerçek | TRY | KDV | Elektronik |
| 3 | Tüzel | USD | KDV + stopaj | Elektronik |
| 4 | Tüzel | TRY | Yalnız KDV | Elektronik |
| 5 | Tüzel | TRY | KDV + stopaj | Elektronik |
| 6 | Tüzel | TRY | KDV tevkifatı | Elektronik |
| 7 | Tüzel | TRY | Stopaj + tevkifat | Elektronik |
| 8 | Tüzel | TRY | Çok kalem | Kâğıt |
| 9–11 | Mevcut belge | — | Güncelleme, iptal, PDF | — |
Örnek 1: Tüzel Kişi — TRY, KDV ve Stopaj
Tam oluşturma request’i
{
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T10:30:00+03:00",
"BelgeZamanSpecified": true,
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00001",
"ChannelCode": "ERP",
"EArchiveMailTo": "muhasebe@example.com",
"Alici": {
"Unvan": "Örnek Danışmanlık A.Ş.",
"VknTckn": "1234567890",
"VergiDaire": "Zincirlikuyu",
"Adres": {
"Mahalle": "Esentepe",
"CaddeSokak": "Büyükdere Caddesi",
"BinaNo": "10",
"KapiNo": "5",
"Semt": "Şişli",
"Sehir": "İstanbul",
"PostaKod": "34394",
"Ulke": "Türkiye",
"Telefon": "02120000000"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "ERP-LINE-1",
"MalHizmetAd": "Temmuz ayı danışmanlık hizmeti",
"TotalAmount": 1000,
"KdvOran": 20,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 0,
"TevkifatKodu": null,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 800,
"PayableAmount": 1000,
"ToplamVergi": 400
}
],
"TotalAmount": 1000,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 0,
"TevkifatKodu": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 800,
"PayableAmount": 1000,
"ToplamVergi": 400,
"YaziIle": "BİN TÜRK LİRASI",
"Aciklamalar": [
"Temmuz 2026 danışmanlık hizmet bedeli"
]
}Örnek 2: Gerçek Kişi Alıcı — TRY
Gerçek kişi alanlarıyla tam request
{
"LocationCode": "ANKARA",
"IssueDate": "2026-07-27T11:00:00+03:00",
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00002",
"ChannelCode": "ERP",
"EArchiveMailTo": "ayse.yilmaz@example.com",
"Alici": {
"Ad": "Ayşe",
"Soyad": "Yılmaz",
"VknTckn": "11111111111",
"Adres": {
"Mahalle": "Kavaklıdere",
"CaddeSokak": "Atatürk Bulvarı",
"BinaNo": "25",
"Semt": "Çankaya",
"Sehir": "Ankara",
"Ulke": "Türkiye"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "ERP-LINE-1",
"MalHizmetAd": "Hukuki danışmanlık hizmeti",
"TotalAmount": 500,
"KdvOran": 20,
"HesaplananKdv": 100,
"StopajOran": 0,
"TaxStopajTotalAmount": 0,
"TevkifatOran": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 100,
"NetUcret": 500,
"PayableAmount": 600,
"ToplamVergi": 100
}
],
"TotalAmount": 500,
"HesaplananKdv": 100,
"StopajOran": 0,
"TaxStopajTotalAmount": 0,
"TevkifatOran": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 100,
"NetUcret": 500,
"PayableAmount": 600,
"ToplamVergi": 100,
"Aciklamalar": [
"Bireysel danışmanlık"
]
}Ad ve Soyad birlikte gönderilir; Unvan ve VergiDaire kurum alanları kullanılmaz.Örnek 3: USD Belge ve TRY Karşılıkları
Dövizli request
{
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T12:00:00+03:00",
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "USD",
"CalculationRate": 32.5,
"SmmExternalId": "ERP-SMM-2026-00003",
"ChannelCode": "ERP",
"EArchiveMailTo": "finance@example.com",
"Alici": {
"Unvan": "Global Örnek Ltd. Şti.",
"VknTckn": "1234567890",
"VergiDaire": "Boğaziçi Kurumlar",
"Adres": {
"Semt": "Beşiktaş",
"Sehir": "İstanbul",
"Ulke": "Türkiye"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "USD-1",
"MalHizmetAd": "Uluslararası danışmanlık hizmeti",
"TotalAmount": 100,
"KdvOran": 20,
"HesaplananKdv": 20,
"StopajOran": 20,
"TaxStopajTotalAmount": 20,
"TevkifatOran": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 20,
"NetUcret": 80,
"PayableAmount": 100,
"ToplamVergi": 40
}
],
"TotalAmount": 100,
"HesaplananKdv": 20,
"StopajOran": 20,
"TaxStopajTotalAmount": 20,
"TevkifatOran": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 20,
"NetUcret": 80,
"PayableAmount": 100,
"ToplamVergi": 40,
"Kur": {
"TotalAmount": 3250,
"NetUcret": 2600,
"HesaplananKdv": 650,
"TaxStopajTotalAmount": 650,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 650,
"PayableAmount": 3250
}
}Kur içindeki karşılıklar TRY’dir. CalculationRate sıfır olamaz.Örnek 4: Yalnız KDV — Kesintisiz İşlem
Vergi/kesinti alanları
{
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T10:30:00+03:00",
"BelgeZamanSpecified": true,
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00001",
"ChannelCode": "ERP",
"EArchiveMailTo": "muhasebe@example.com",
"Alici": {
"Unvan": "Örnek Danışmanlık A.Ş.",
"VknTckn": "1234567890",
"VergiDaire": "Zincirlikuyu",
"Adres": {
"Mahalle": "Esentepe",
"CaddeSokak": "Büyükdere Caddesi",
"BinaNo": "10",
"KapiNo": "5",
"Semt": "Şişli",
"Sehir": "İstanbul",
"PostaKod": "34394",
"Ulke": "Türkiye",
"Telefon": "02120000000"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "KDV-1",
"MalHizmetAd": "Proje danışmanlığı",
"TotalAmount": 1000,
"KdvOran": 20,
"HesaplananKdv": 200,
"StopajOran": 0,
"TaxStopajTotalAmount": 0,
"TevkifatOran": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 1000,
"PayableAmount": 1200,
"ToplamVergi": 200
}
],
"TotalAmount": 1000,
"HesaplananKdv": 200,
"StopajOran": 0,
"TaxStopajTotalAmount": 0,
"TevkifatOran": 0,
"TevkifatKodu": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 1000,
"PayableAmount": 1200,
"ToplamVergi": 200,
"YaziIle": "BİN TÜRK LİRASI",
"Aciklamalar": [
"Temmuz 2026 danışmanlık hizmet bedeli"
]
}Bu blok, Örnek 1’deki kimlik, tarih, teslim, alıcı ve dış referans alanlarıyla birlikte kullanılır.
Örnek 5: Gelir Vergisi Stopajı
Stopajlı tutar bloğu
{
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T10:30:00+03:00",
"BelgeZamanSpecified": true,
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00001",
"ChannelCode": "ERP",
"EArchiveMailTo": "muhasebe@example.com",
"Alici": {
"Unvan": "Örnek Danışmanlık A.Ş.",
"VknTckn": "1234567890",
"VergiDaire": "Zincirlikuyu",
"Adres": {
"Mahalle": "Esentepe",
"CaddeSokak": "Büyükdere Caddesi",
"BinaNo": "10",
"KapiNo": "5",
"Semt": "Şişli",
"Sehir": "İstanbul",
"PostaKod": "34394",
"Ulke": "Türkiye",
"Telefon": "02120000000"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "ERP-LINE-1",
"MalHizmetAd": "Temmuz ayı danışmanlık hizmeti",
"TotalAmount": 1000,
"KdvOran": 20,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 0,
"TevkifatKodu": null,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 800,
"PayableAmount": 1000,
"ToplamVergi": 400
}
],
"TotalAmount": 2500,
"HesaplananKdv": 500,
"StopajOran": 20,
"TaxStopajTotalAmount": 500,
"TevkifatOran": 0,
"TevkifatKodu": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 500,
"NetUcret": 2000,
"PayableAmount": 2500,
"ToplamVergi": 1000,
"YaziIle": "BİN TÜRK LİRASI",
"Aciklamalar": [
"Temmuz 2026 danışmanlık hizmet bedeli"
]
}Aynı değerler ilgili MalHizmet satırında da kendi satır tutarı üzerinden gönderilir.
Örnek 6: KDV Tevkifatı
Tevkifatlı tutar bloğu
{
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T10:30:00+03:00",
"BelgeZamanSpecified": true,
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00001",
"ChannelCode": "ERP",
"EArchiveMailTo": "muhasebe@example.com",
"Alici": {
"Unvan": "Örnek Danışmanlık A.Ş.",
"VknTckn": "1234567890",
"VergiDaire": "Zincirlikuyu",
"Adres": {
"Mahalle": "Esentepe",
"CaddeSokak": "Büyükdere Caddesi",
"BinaNo": "10",
"KapiNo": "5",
"Semt": "Şişli",
"Sehir": "İstanbul",
"PostaKod": "34394",
"Ulke": "Türkiye",
"Telefon": "02120000000"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "TEV-1",
"MalHizmetAd": "Tevkifat kapsamındaki danışmanlık",
"TotalAmount": 1000,
"KdvOran": 20,
"HesaplananKdv": 200,
"StopajOran": 0,
"TaxStopajTotalAmount": 0,
"TevkifatOran": 50,
"TevkifatKodu": "601",
"WithholdingTaxTotalAmount": 100,
"TaxKdvTotalAmount": 100,
"NetUcret": 1000,
"PayableAmount": 1100,
"ToplamVergi": 200
}
],
"TotalAmount": 1000,
"HesaplananKdv": 200,
"StopajOran": 0,
"TaxStopajTotalAmount": 0,
"TevkifatOran": 50,
"TevkifatKodu": 601,
"WithholdingTaxTotalAmount": 100,
"TaxKdvTotalAmount": 100,
"NetUcret": 1000,
"PayableAmount": 1100,
"ToplamVergi": 200,
"YaziIle": "BİN TÜRK LİRASI",
"Aciklamalar": [
"Temmuz 2026 danışmanlık hizmet bedeli"
]
}601 yalnız örnek değerdir. Gerçek işlemde yürürlükteki mevzuata ve hizmet türüne uygun tevkifat kodu kullanılmalıdır.Örnek 7: Stopaj ve Tevkifat Birlikte
İki kesintinin ayrı hesaplandığı blok
{
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T10:30:00+03:00",
"BelgeZamanSpecified": true,
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00001",
"ChannelCode": "ERP",
"EArchiveMailTo": "muhasebe@example.com",
"Alici": {
"Unvan": "Örnek Danışmanlık A.Ş.",
"VknTckn": "1234567890",
"VergiDaire": "Zincirlikuyu",
"Adres": {
"Mahalle": "Esentepe",
"CaddeSokak": "Büyükdere Caddesi",
"BinaNo": "10",
"KapiNo": "5",
"Semt": "Şişli",
"Sehir": "İstanbul",
"PostaKod": "34394",
"Ulke": "Türkiye",
"Telefon": "02120000000"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "ERP-LINE-1",
"MalHizmetAd": "Temmuz ayı danışmanlık hizmeti",
"TotalAmount": 1000,
"KdvOran": 20,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 0,
"TevkifatKodu": null,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 800,
"PayableAmount": 1000,
"ToplamVergi": 400
}
],
"TotalAmount": 1000,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 50,
"TevkifatKodu": 601,
"WithholdingTaxTotalAmount": 100,
"TaxKdvTotalAmount": 100,
"NetUcret": 800,
"PayableAmount": 900,
"ToplamVergi": 400,
"YaziIle": "BİN TÜRK LİRASI",
"Aciklamalar": [
"Temmuz 2026 danışmanlık hizmet bedeli"
]
}Stopaj brüt bedelden, tevkifat hesaplanan KDV’den düşülür. Nihai tutar 800 + 100 = 900 olur.
Örnek 8: Çok Kalemli ve Kâğıt Teslim
İki hizmet satırı
{
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T10:30:00+03:00",
"BelgeZamanSpecified": true,
"GonderimSekli": "Kagit",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00008",
"ChannelCode": "ERP",
"EArchiveMailTo": "muhasebe@example.com",
"Alici": {
"Unvan": "Örnek Danışmanlık A.Ş.",
"VknTckn": "1234567890",
"VergiDaire": "Zincirlikuyu",
"Adres": {
"Mahalle": "Esentepe",
"CaddeSokak": "Büyükdere Caddesi",
"BinaNo": "10",
"KapiNo": "5",
"Semt": "Şişli",
"Sehir": "İstanbul",
"PostaKod": "34394",
"Ulke": "Türkiye",
"Telefon": "02120000000"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "LINE-1",
"MalHizmetAd": "Sözleşme inceleme",
"TotalAmount": 600,
"KdvOran": 20,
"HesaplananKdv": 120,
"StopajOran": 20,
"TaxStopajTotalAmount": 120,
"TevkifatOran": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 120,
"NetUcret": 480,
"PayableAmount": 600,
"ToplamVergi": 240
},
{
"LineId": 2,
"Id": "LINE-2",
"MalHizmetAd": "Toplantı ve mütalaa",
"TotalAmount": 400,
"KdvOran": 20,
"HesaplananKdv": 80,
"StopajOran": 20,
"TaxStopajTotalAmount": 80,
"TevkifatOran": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 80,
"NetUcret": 320,
"PayableAmount": 400,
"ToplamVergi": 160
}
],
"TotalAmount": 1000,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 0,
"TevkifatKodu": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 800,
"PayableAmount": 1000,
"ToplamVergi": 400,
"YaziIle": "BİN TÜRK LİRASI",
"Aciklamalar": [
"Temmuz 2026 danışmanlık hizmet bedeli"
]
}Alıcı, tarih, kanal ve açıklama alanları Örnek 1’deki gibi eklenir. Kâğıt teslimde EArchiveMailTo zorunlu değildir.
Örnek 9: Güncelleme
Mevcut kimliklerle tam güncelleme request’i
{
"Id": 1842,
"UUId": "6b60c576-7ed9-4bf1-9f90-3c97747b7470",
"SmmNumber": "SMM2026000000001",
"LocationCode": "MERKEZ",
"IssueDate": "2026-07-27T10:30:00+03:00",
"BelgeZamanSpecified": true,
"GonderimSekli": "Elektronik",
"DocumentCurrencyCode": "TRY",
"CalculationRate": 1,
"SmmExternalId": "ERP-SMM-2026-00001",
"ChannelCode": "ERP",
"EArchiveMailTo": "yeni-adres@example.com",
"Alici": {
"Unvan": "Örnek Danışmanlık A.Ş.",
"VknTckn": "1234567890",
"VergiDaire": "Zincirlikuyu",
"Adres": {
"Mahalle": "Esentepe",
"CaddeSokak": "Büyükdere Caddesi",
"BinaNo": "10",
"KapiNo": "5",
"Semt": "Şişli",
"Sehir": "İstanbul",
"PostaKod": "34394",
"Ulke": "Türkiye"
}
},
"MalHizmetler": [
{
"LineId": 1,
"Id": "ERP-LINE-1",
"MalHizmetAd": "Temmuz ayı güncel danışmanlık hizmeti",
"TotalAmount": 1000,
"KdvOran": 20,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 0,
"TevkifatKodu": null,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 800,
"PayableAmount": 1000,
"ToplamVergi": 400
}
],
"TotalAmount": 1000,
"HesaplananKdv": 200,
"StopajOran": 20,
"TaxStopajTotalAmount": 200,
"TevkifatOran": 0,
"TevkifatKodu": 0,
"WithholdingTaxTotalAmount": 0,
"TaxKdvTotalAmount": 200,
"NetUcret": 800,
"PayableAmount": 1000,
"ToplamVergi": 400,
"YaziIle": "BİN TÜRK LİRASI",
"Aciklamalar": [
"Güncellenmiş e-posta ve hizmet açıklaması"
]
}GetOutgoingSmm ile okunur; değiştirilen alanlarla birlikte tam model, mevcut Id ve UUId kullanılarak gönderilir.Örnek 10: İptal
İptal request ve response
{
"UUId": "6b60c576-7ed9-4bf1-9f90-3c97747b7470"
}Örnek 11: Liste Sorgusu ve PDF Alma
Dış referansla sorgulama
{
"Query": {
"SmmExternalId": "ERP-SMM-2026-00001",
"IssueDate": {
"StartDate": "2026-07-01T00:00:00+03:00",
"EndDate": "2026-07-31T23:59:59+03:00"
}
},
"Skip": 0,
"Take": 20,
"OrderByName": "IssueDate",
"OrderByType": "DESC"
}UUID listesiyle PDF
{
"Ettns": [
"6b60c576-7ed9-4bf1-9f90-3c97747b7470",
"941d56fd-d928-4554-880d-6c79a5413ad4"
],
"DisplayPdf": false
}