e-Fatura

Giden Fatura

Giden Fatura Request Örnekleri

On profil ile iptal, itiraz ve sorgulama işlemleri için tam ve kopyalanabilir JSON örnekleri.

Senaryo Kapsamı

Miktar alanları ham sayı yerine { "UnitCode", "Value" } biçiminde nesne olarak gönderilir. Aşağıdaki her örnek, ilgili endpoint'e doğrudan gönderilebilen tam bir request gövdesidir.

Desteklenen 10 ProfileId değerinin her biri için tam, bağımsız ve doğrudan kopyalanabilir JSON request gövdesi verilmiştir. Her örnek ortak zorunlu alanlarla birlikte profile özgü alanları da içerir. EARSIVFATURA bu rehberin kapsamı dışındadır.

Kullanım: Her JSON bloğu ilgili endpoint'in gerçek request modeliyle uyumlu, bağımsız ve doğrudan kopyalanabilir tam bir gövdedir. Her gönderimde benzersiz bir InvoiceExternalId kullanın.
ÖrnekProfilAyırt Edici Nokta
1TemelFatura (temsilci — Grup 1)Tam gövde; tek kalem, KDV, ek koşul yok
2KamuBuyerCustomerParty zorunlu, PaymentMeans.PayeeFinancialAccount IBAN + para birimi
3HKS (Hal Kayıt Sistemi)InvoiceLine.Item.AdditionalItemIdentification içinde 19 haneli KUNYENO
4EnerjiInvoiceTypeCode yalnızca SARJ/SARJANLIK olabilir
5İlaç/Tıbbi CihazAdditionalItemIdentification.SchemeId = ILAC/TIBBICIHAZ/DIGER
6Yatırım TeşvikContractDocumentReference içinde 6 haneli YTBNO, Item.CommodityClassification
7İDİSIdisSevkiyatNo ("SE-" + 7 hane) ve kalem bazlı ETIKETNO
8TicariFatura (temsilci — Grup 2)Tam gövde; ReceiverIdentifier ile alıcı etiketi doğrulaması
9İhracatDelivery.DeliveryTerms (INCOTERMS), ShipmentStage.TransportModeCode, GoodsItem.RequiredCustomsId (GTİP), DeliveryAddress, alıcı PARTYTYPE=EXPORT
10Yolcu Beraberinde EşyaAlıcı PARTYTYPE=TAXFREE, Person.IdentityDocumentReference (pasaport no)

Her örnek ilgili profile referans verir.

#ProfilGrup
1TemelFatura1 — Tek başına gönderilebilen
2Kamu1
3HKS1
4Enerji1
5İlaç/Tıbbi Cihaz1
6Yatırım Teşvik1
7İDİS1
8TicariFatura2 — Taraflar arası ek bilgi taşıyan
9İhracat2
10Yolcu Beraberinde Eşya2

Örnek 1: TemelFatura (temsilci örnek)

Grup 1'in temsilci örneği. Diğer tek-başına-gönderilebilen profiller (Kamu, HKS, Enerji, İlaç/Tıbbi Cihaz, Yatırım Teşvik, İDİS) bu gövdeyi temel alır; tam ve bağımsız request gövdeleri sonraki örneklerde gösterilir.

JSON örneğini görüntüle

Tek kalemli, KDV'li (TaxTypeCode=0015) bir SATIS tipi TemelFatura.

{
  "InvoiceExternalId": "ERP-EF-2026-001",
  "ProfileId": "TEMELFATURA",
  "InvoiceTypeCode": "SATIS",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 10
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Danışmanlık Hizmeti"
      },
      "Price": 100,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ]
}

Örnek 2: Kamu

ProfileId değeri KAMU iken (veya alıcı bir kamu tüzel kişiliğiyse ve fatura TEMELFATURA gönderilse dahi) BuyerCustomerParty zorunlu hale gelir ve PaymentMeans.PayeeFinancialAccount geçerli bir Türkiye IBAN'ı ile para birimi içermelidir ).

Zorunlu alanları ve JSON örneğini görüntüle

Bu örnek ortak alanların tamamını taşır; profile özgü ekler BuyerCustomerParty ve PaymentMeans alanlarının eklenmesidir.

AlanZorunlulukDeğer/Kural
ProfileIdZKAMU (veya kamu alıcılı TEMELFATURA)
BuyerCustomerPartyZVBT e-Fatura API sözleşmesinde zorunludur
PaymentMeans[].PayeeFinancialAccount.IdZGeçerli Türkiye IBAN'ı (regex ile doğrulanır)
PaymentMeans[].PayeeFinancialAccount.CurrencyCodeZBoş bırakılamaz
{
  "InvoiceExternalId": "ERP-EF-2026-002",
  "ProfileId": "KAMU",
  "InvoiceTypeCode": "SATIS",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 10
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Danışmanlık Hizmeti"
      },
      "Price": 100,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ],
  "BuyerCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Kamu Kurumu"
    }
  },
  "PaymentMeans": [
    {
      "PayeeFinancialAccount": {
        "Id": "TR330006100519786457841326",
        "CurrencyCode": "TRY"
      }
    }
  ]
}

Örnek 3: HKS (Hal Kayıt Sistemi)

ProfileId değeri HKS iken her InvoiceLine, SchemeId değeri KUNYENO olan ve değeri 19 karakter uzunluğunda bir AdditionalItemIdentification içermelidir ().

Zorunlu alanları ve JSON örneğini görüntüle
AlanZorunlulukDeğer/Kural
InvoiceLine[].Item.AdditionalItemIdentification[].SchemeIdZKUNYENO
InvoiceLine[].Item.AdditionalItemIdentification[].ValueZTam olarak 19 karakter
{
  "InvoiceExternalId": "ERP-EF-2026-003",
  "ProfileId": "HKS",
  "InvoiceTypeCode": "HKSSATIS",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "KGM",
        "Value": 500
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Domates",
        "AdditionalItemIdentification": [
          {
            "SchemeId": "KUNYENO",
            "Value": "1234567890123456789"
          }
        ]
      },
      "Price": 2,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ]
}

Örnek 4: Enerji

ProfileId değeri ENERJI iken InvoiceTypeCode yalnızca SARJ veya SARJANLIK olabilir (.

Zorunlu alanları ve JSON örneğini görüntüle
AlanZorunlulukDeğer/Kural
ProfileIdZENERJI
InvoiceTypeCodeZSARJ veya SARJANLIK
{
  "InvoiceExternalId": "ERP-EF-2026-004",
  "ProfileId": "ENERJI",
  "InvoiceTypeCode": "SARJ",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 10
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Danışmanlık Hizmeti"
      },
      "Price": 100,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ]
}

Örnek 5: İlaç/Tıbbi Cihaz

ProfileId değeri ILAC_TIBBICIHAZ iken her InvoiceLine, SchemeId değeri ILAC, TIBBICIHAZ veya DIGER olan en az bir AdditionalItemIdentification içermelidir; ayrıca InvoiceTypeCode yalnızca SATIS, ISTISNA, TEVKIFAT, TEVKIFATIADE, IADE veya IHRACKAYITLI olabilir ( ve 1177-1193).

Zorunlu alanları ve JSON örneğini görüntüle
AlanZorunlulukDeğer/Kural
InvoiceLine[].Item.AdditionalItemIdentification[].SchemeIdZILAC / TIBBICIHAZ / DIGER
InvoiceTypeCodeZSATIS, ISTISNA, TEVKIFAT, TEVKIFATIADE, IADE, IHRACKAYITLI
{
  "InvoiceExternalId": "ERP-EF-2026-005",
  "ProfileId": "ILAC_TIBBICIHAZ",
  "InvoiceTypeCode": "SATIS",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 100
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Steril Enjektör",
        "AdditionalItemIdentification": [
          {
            "SchemeId": "TIBBICIHAZ",
            "Value": "TC-UTS-000123"
          }
        ]
      },
      "Price": 10,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ]
}

Örnek 6: Yatırım Teşvik

ProfileId değeri YATIRIMTESVIK iken ContractDocumentReference içinde SchemeId=YTBNO olan, 6 haneli değer ve dolu IssueDate içeren kayıt zorunludur. Güncel GİB kılavuzuna göre InvoiceTypeCode yalnızca SATIS, ISTISNA veya IADE olmalıdır.

Zorunlu alanları ve JSON örneğini görüntüle
AlanZorunlulukDeğer/Kural
ContractDocumentReference[].SchemeIdZYTBNO
ContractDocumentReference[].IdZ6 haneli YTB numarası
ContractDocumentReference[].IssueDateZBoş bırakılamaz
InvoiceLine[].Item.CommodityClassification[].ValueŞ01/02/03/04 — kod ile InvoiceTypeCode uyumu ayrıca kontrol edilir
{
  "InvoiceExternalId": "ERP-EF-2026-006",
  "ProfileId": "YATIRIMTESVIK",
  "InvoiceTypeCode": "SATIS",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 1
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "CNC Torna Tezgahı",
        "CommodityClassification": [
          {
            "Value": "01"
          }
        ]
      },
      "Price": 1000,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ],
  "ContractDocumentReference": [
    {
      "SchemeId": "YTBNO",
      "Id": "123456",
      "IssueDate": "2026-01-15T00:00:00"
    }
  ]
}

Örnek 7: İDİS

ProfileId değeri IDIS iken IdisSevkiyatNo alanı "SE-" ön eki ve ardından 7 haneli sayı formatında olmalı; her InvoiceLine, SchemeId değeri ETIKETNO olan ve düzeni doğrulanan bir AdditionalItemIdentification içermelidir ().

Zorunlu alanları ve JSON örneğini görüntüle
AlanZorunlulukDeğer/Kural
IdisSevkiyatNoZSE- + 7 haneli sayı
InvoiceLine[].Item.AdditionalItemIdentification[].SchemeIdZETIKETNO
InvoiceLine[].Item.AdditionalItemIdentification[].ValueZİlk 2 karakter harf, sonraki 7 karakter rakam
{
  "InvoiceExternalId": "ERP-EF-2026-007",
  "ProfileId": "IDIS",
  "InvoiceTypeCode": "SATIS",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 10
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Karkas Et",
        "AdditionalItemIdentification": [
          {
            "SchemeId": "ETIKETNO",
            "Value": "AB1234567"
          }
        ]
      },
      "Price": 100,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ],
  "IdisSevkiyatNo": "SE-1234567"
}

Örnek 8: TicariFatura (temsilci örnek)

Grup 2'nin temsilci örneği. Request ortak alanların tamamını taşır; ProfileId değeri TICARIFATURA olduğunda ve ReceiverIdentifier (alıcı GİB etiketi) doldurulduğunda VBT bu etiketin ilgili mükellef için geçerli olup olmadığını GİB kullanıcı listesinden doğrular (TemelFatura, TicariFatura ve Kamu profilleri için geçerlidir).

JSON örneğini görüntüle
Fark: Örnek 1'e göre tek değişiklik ProfileId değeri ve isteğe bağlı ReceiverIdentifier alanının eklenmesidir; kalem/vergi yapısı aynıdır.
{
  "InvoiceExternalId": "ERP-EF-2026-008",
  "ProfileId": "TICARIFATURA",
  "InvoiceTypeCode": "SATIS",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-11T10:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 10
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Danışmanlık Hizmeti"
      },
      "Price": 100,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ],
  "ReceiverIdentifier": "urn:mail:ornekfirma@vbt.com.tr"
}

Örnek 9: İhracat

ProfileId değeri IHRACAT iken InvoiceTypeCode yalnızca ISTISNA olabilir; BuyerCustomerParty.Party.PartyIdentifications içinde SchemeId=PARTYTYPE, Value=EXPORT olan bir kayıt, PartyLegalEntity.RegistrationName, tedarikçi tarafında PartyTaxScheme.TaxScheme.Name, kalemlerde pozitif InvoicedQuantity, teslimat bilgilerinde (fatura ya da kalem seviyesinde) DeliveryTerms altında SchemeId=INCOTERMS olan bir Id ile Shipment.ShipmentStage.TransportModeCode, fatura veya kalem seviyesinde en az bir Delivery.DeliveryAddress, ve her kalemde Delivery.Shipment.GoodsItem.RequiredCustomsId (GTİP, 12 haneli numerik) zorunludur (, 1327-1500, 1502-1527, 1529-1558, 1603-1619).

Zorunlu alanları ve JSON örneğini görüntüle
AlanZorunlulukDeğer/Kural
InvoiceTypeCodeZISTISNA
BuyerCustomerParty.Party.PartyIdentifications[]ZSchemeId=PARTYTYPE, Value=EXPORT
BuyerCustomerParty.Party.PartyLegalEntity[].RegistrationNameZBoş bırakılamaz
AccountingSupplierParty.Party.PartyTaxScheme.TaxScheme.NameZBoş bırakılamaz
InvoiceLine[].InvoicedQuantityZDolu ve > 0
Delivery[].DeliveryTerms[].IdZSchemeId=INCOTERMS — fatura veya kalem seviyesinde en az bir tanesinde
Delivery[].Shipment.ShipmentStage[].TransportModeCodeZFatura veya kalem seviyesinde en az bir tanesinde dolu olmalı
Delivery[].DeliveryAddressZFatura veya kalem seviyesinde en az bir tanesinde dolu olmalı
InvoiceLine[].Delivery[].Shipment.GoodsItem[].RequiredCustomsIdZGTİP kodu — 12 haneli, yalnızca rakam
Fark: Örnek 8'e göre InvoiceTypeCode ISTISNA'ya sabitlenir; BuyerCustomerParty, PartyLegalEntity, PartyTaxScheme ve Delivery (adres, INCOTERMS, taşıma şekli, GTİP) alanları eklenir.
{
  "InvoiceExternalId": "ERP-EF-2026-009",
  "ProfileId": "IHRACAT",
  "InvoiceTypeCode": "ISTISNA",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek İhracat A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      },
      "PartyTaxScheme": {
        "TaxScheme": {
          "Name": "Kadıköy Vergi Dairesi"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "KGM",
        "Value": 1000
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "Tekstil Ürünü"
      },
      "Price": 1,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      },
      "Delivery": [
        {
          "Shipment": {
            "GoodsItem": [
              {
                "RequiredCustomsId": "610910000000"
              }
            ]
          }
        }
      ]
    }
  ],
  "ReceiverIdentifier": "urn:mail:ihracatpk@gtb.gov.tr",
  "BuyerCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "PARTYTYPE",
          "Value": "EXPORT"
        }
      ],
      "PartyName": "Foreign Buyer GmbH",
      "PartyLegalEntity": [
        {
          "RegistrationName": "Foreign Buyer GmbH"
        }
      ]
    }
  },
  "Delivery": [
    {
      "DeliveryAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      },
      "DeliveryTerms": [
        {
          "Id": {
            "SchemeId": "INCOTERMS",
            "Value": "FOB"
          }
        }
      ],
      "Shipment": {
        "ShipmentStage": [
          {
            "TransportModeCode": "1"
          }
        ]
      }
    }
  ]
}

Örnek 10: Yolcu Beraberinde Eşya

ProfileId değeri YOLCUBERABERFATURA iken InvoiceTypeCode yalnızca ISTISNA olabilir; BuyerCustomerParty.Party.PartyIdentifications içinde SchemeId=PARTYTYPE, Value=TAXFREE olan bir kayıt bulunmalı ve aynı tarafın Person.IdentityDocumentReference.Id alanı (pasaport numarası) boş bırakılmamalıdır (, 1621-1650).

Zorunlu alanları ve JSON örneğini görüntüle
AlanZorunlulukDeğer/Kural
InvoiceTypeCodeZISTISNA
BuyerCustomerParty.Party.PartyIdentifications[]ZSchemeId=PARTYTYPE, Value=TAXFREE
BuyerCustomerParty.Party.Person.IdentityDocumentReference.IdZPasaport numarası; boş bırakılamaz
Fark: Örnek 9'daki EXPORT/İhracat alanları yerine TAXFREE kimliği ve pasaport referansı kullanılır. Bu profil için zorunlu alanlar yukarıdaki tabloda verilen alıcı kimliği ve pasaport referansıdır.
{
  "InvoiceExternalId": "ERP-EF-2026-010",
  "ProfileId": "YOLCUBERABERFATURA",
  "InvoiceTypeCode": "ISTISNA",
  "DocumentCurrencyCode": "TRY",
  "IssueDate": "2026-06-10T09:00:00",
  "LineCountNumeric": 1,
  "AccountingSupplierParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "1234567890"
        }
      ],
      "PartyName": "Örnek Ticaret A.Ş.",
      "PostalAddress": {
        "CityName": "İstanbul",
        "Country": {
          "Name": "Türkiye"
        }
      }
    }
  },
  "AccountingCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "VKN",
          "Value": "9876543210"
        }
      ],
      "PartyName": "Alıcı Firma Ltd. Şti."
    }
  },
  "LegalMonetaryTotal": {
    "LineExtensionAmount": 1000,
    "TaxExclusiveAmount": 1000,
    "TaxInclusiveAmount": 1200,
    "PayableAmount": 1200
  },
  "TaxTotal": [
    {
      "TaxAmount": 200,
      "TaxSubtotal": [
        {
          "TaxableAmount": 1000,
          "TaxAmount": 200,
          "Percent": 20,
          "TaxCategory": {
            "TaxScheme": {
              "Name": "KDV",
              "TaxTypeCode": "0015"
            }
          }
        }
      ]
    }
  ],
  "InvoiceLine": [
    {
      "Id": "1",
      "InvoicedQuantity": {
        "UnitCode": "C62",
        "Value": 2
      },
      "LineExtensionAmount": 1000,
      "Item": {
        "Name": "El Yapımı Halı"
      },
      "Price": 500,
      "TaxTotal": {
        "TaxAmount": 200,
        "TaxSubtotal": [
          {
            "TaxableAmount": 1000,
            "TaxAmount": 200,
            "Percent": 20,
            "TaxCategory": {
              "TaxScheme": {
                "Name": "KDV",
                "TaxTypeCode": "0015"
              }
            }
          }
        ]
      }
    }
  ],
  "ReceiverIdentifier": "urn:mail:yolcuberaberpk@gtb.gov.tr",
  "BuyerCustomerParty": {
    "Party": {
      "PartyIdentifications": [
        {
          "SchemeId": "PARTYTYPE",
          "Value": "TAXFREE"
        }
      ],
      "PartyName": "John Traveler",
      "Person": {
        "FirstName": "John",
        "FamilyName": "Traveler",
        "NationalityId": "DE",
        "IdentityDocumentReference": {
          "Id": "P1234567"
        }
      }
    }
  }
}

Örnek 11: Giden Fatura İptali

İptal isteği yalnızca iptali desteklenen profiller için kullanılmalıdır. ETTN değeri, oluşturma yanıtından saklanan belge kimliğidir.

JSON örneğini görüntüle
{
  "Ettn": "7f8c9726-5e6f-4dc4-a984-f3da76e2a912"
}

Örnek 12: Giden Fatura İtirazı

İtiraz belgesinin tarihi, numarası, yöntemi ve açıklaması ETTN ile birlikte gönderilir.

JSON örneğini görüntüle
{
  "UUId": "7f8c9726-5e6f-4dc4-a984-f3da76e2a912",
  "ObjectingDocumentDate": "2026-07-31T10:30:00",
  "ObjectingDocumentNumber": "KEP-2026-000184",
  "ObjectingType": "KEP",
  "ObjectingDescription": "İtiraz bildirimi KEP üzerinden iletilmiştir."
}

Örnek 13: Giden Fatura Sorgulama

Liste sorgusu sayfalama bilgisiyle birlikte bir Query nesnesi taşır. Aşağıdaki örnek tarih aralığı ve profil filtresi uygular.

JSON örneğini görüntüle
{
  "Skip": 0,
  "Take": 20,
  "OrderByName": "IssueDate",
  "OrderByType": "Descending",
  "Query": {
    "IssueDate": {
      "StartDate": "2026-07-01T00:00:00",
      "EndDate": "2026-07-31T23:59:59"
    },
    "ProfileId": "TICARIFATURA"
  }
}