temsor API
← Finans

e-Fatura Belgesi Üretici

Düz JSON’dan UBL-TR e-Fatura / e-Arşiv XML belgesi üretir; tüm toplamları kendisi hesaplar, tarafları doğrular.

POST /v1/tr/invoice/build · 3 kredi

  • Bu sayfadaki her ucu hesap açmadan deneyebilirsiniz.
  • Deterministik uçlar önbellekten tek haneli milisaniyede yanıtlar.
  • Her yanıt bir fiş taşır: harcanan kredi, önbellek durumu, süre.
POST/v1/tr/invoice/build
{
  "series": "ABC",
  "sequence": 123,
  "issueDate": "2026-07-26",
  "supplier": {
    "name": "Örnek Yazılım A.Ş.",
    "taxNumber": "4840847211",
    "taxOffice": "Kadıköy",
    "street": "Moda Cad.",
    "buildingNumber": "12",
    "district": "Kadıköy",
    "city": "İstanbul"
  },
  "customer": {
    "name": "Alıcı Ticaret Ltd. Şti.",
    "taxNumber": "3250566341",
    "taxOffice": "Beşiktaş",
    "city": "İstanbul"
  },
  "lines": [
    {
      "name": "Yazılım geliştirme hizmeti",
      "quantity": 10,
      "unitCode": "HUR",
      "unitPrice": 1500,
      "vatRate": 20
    }
  ]
}
henüz istek gönderilmedi
Çalıştır’a basınca tarayıcınızdan canlı API çağrılır.
1uç nokta
biriken veri noktası
zaman serisi
ortanca yanıt

Neden var

Düşman girdi için tasarlandı

Türkçe adres "Cd." de olur "Cad." da "Caddesi" de; daire numarası bina numarasına yapışık gelir. Genel ayrıştırıcılar yarısını sessizce düşürür. Bu, yerleştiremediğini size söyler.

Tarihçe sonradan üretilemez

Kur arşivi her iş günü büyüyor ve her nokta kaynak URL’i ile içerik özetini saklıyor. Rakip bugünün bültenini okuyabilir — geçen çeyreği üretemez.

Yalnız yapılan işe ödersiniz

Tekrarlanan girdi önbellekten gelir, sıfır kredi yakar. Bir yanıt kendi şemasına uymazsa çağrı otomatik iade edilir.

Uç noktalarparametreleri görmek ve canlı çağırmak için satırı açın

Finans1

/v1/tr/invoice/build e-Fatura Belgesi Üretici 3 kredi

Düz JSON’dan UBL-TR e-Fatura / e-Arşiv XML belgesi üretir; tüm toplamları kendisi hesaplar, tarafları doğrular.

Türkiye’ye fatura kesmek, öğe sırası şemayla sabitlenmiş ve toplamları kuruşu kuruşuna tutması gereken bir UBL-TR belgesi üretmek demek; tutmazsa entegratör geri çevirir. Bu uç faturayı sıradan JSON olarak alır, XML döndürür. Gönderdiğiniz toplamlara bilerek bakılmaz: kalem tutarları, orana göre KDV alt toplamları ve ödenecek tutar burada yeniden hesaplanır — bir kuruşluk yuvarlama farkı en sık ret sebebidir. VKN/TCKN sağlamaları doğrulanır, tutar faturaların istediği gibi Türkçe yazıyla yazılır. Belge İMZALANMAZ ve GİB’e GÖNDERİLMEZ: mali mühür sizin sertifikanızın, gönderim entegratörünüzün işidir. Dönen belge o adıma girmeye hazır hâldedir.

Parametreler

profile "TEMELFATURA" | "TICARIFATURA" | "EARSIVFATURA" TEMELFATURA: no formal objection flow. TICARIFATURA: buyer may accept/reject. EARSIVFATURA: buyer is not an e-Invoice user. varsayılan "TEMELFATURA"
invoiceTypeCode "SATIS" | "IADE" varsayılan "SATIS"
id string Invoice number. Omit and supply `series` to have it built from the series and sequence.
series string Three-letter series code, used with `sequence`.
sequence integer Sequence number within the series and year.
uuid string Document UUID (ETTN). Generated when omitted.
issueDate* string
issueTime string
currency string ISO 4217. Anything other than TRY requires `exchangeRate`. varsayılan "TRY"
exchangeRate number Units of TRY per one unit of `currency`.
supplier* object
customer* object
lines* object[]
notes string[] varsayılan []
amountInWords boolean Adds the payable amount written out in Turkish words as a note, the way invoices require. varsayılan true
despatchDocumentId string Delivery note number, if the goods shipped separately.
orderReferenceId string
POST/v1/tr/invoice/build
{
  "series": "ABC",
  "sequence": 123,
  "issueDate": "2026-07-26",
  "supplier": {
    "name": "Örnek Yazılım A.Ş.",
    "taxNumber": "4840847211",
    "taxOffice": "Kadıköy",
    "street": "Moda Cad.",
    "buildingNumber": "12",
    "district": "Kadıköy",
    "city": "İstanbul"
  },
  "customer": {
    "name": "Alıcı Ticaret Ltd. Şti.",
    "taxNumber": "3250566341",
    "taxOffice": "Beşiktaş",
    "city": "İstanbul"
  },
  "lines": [
    {
      "name": "Yazılım geliştirme hizmeti",
      "quantity": 10,
      "unitCode": "HUR",
      "unitPrice": 1500,
      "vatRate": 20
    }
  ]
}
henüz istek gönderilmedi
Çalıştır’a basınca tarayıcınızdan canlı API çağrılır.

Fiyatlandırmatek anahtar tüm uçları kapsar

Free
Ücretsiz
kredi
2,000
Hız sınırı
2/s
Hemen dene
Starter
$19/ay
kredi
50,000
Hız sınırı
10/s
en çok seçilen
Pro
$79/ay
kredi
300,000
Hız sınırı
30/s
Scale
$299/ay
kredi
2,000,000
Hız sınırı
100/s

Kredi çağrı başına düşer, önbellekten gelen yanıt ücretsizdir. Anahtarsız istekler IP başına dar bir demo kotasıyla çalışır; kaydolmadan değerlendirebilirsiniz.

API anahtarı ödeme onaylanır onaylanmaz e-postayla gelir. Plan yükseltmede anahtar DEĞİŞMEZ, entegrasyonunuz kırılmaz.

Yapay zekâ asistanından kullanaynı katalog, MCP aracı olarak

Her uç aynı zamanda Model Context Protocol üzerinden yayınlanıyor; Claude, ChatGPT ya da kendi ajanınız doğrudan çağırabilir — ara kod yok, sarmalayıcı fonksiyon yok. Asistan aynı girdi şemalarını ve aynı ölçümü görür.

Şu an 14 araç. Yeni uçlar kendiliğinden görünür; sizin tarafınızda güncellenecek bir şey yok.

claude_desktop_config.json

{
  "mcpServers": {
    "temsor": {
      "url": "https://api.temsor.com/mcp",
      "headers": { "x-api-key": "fk_live_…" }
    }
  }
}

Hızlı başlangıç

Resmî istemci: npm install temsor-api · npmjs.com/package/temsor-api

Node.js

import Client from "temsor-api";

const api = new Client({ apiKey: KEY });
const r = await api.${(() => {
  const first = apis[0];
  return first.slug.split(/[/-]/).map((p, i) => (i === 0 ? p : p[0].toUpperCase() + p.slice(1))).join('');
})()}(${esc(JSON.stringify(apis[0].examples[0]?.input ?? {}))});
console.log(r, r.$meta);

cURL

curl -s https://api.temsor.com/v1/tr/invoice/build \
  -H "content-type: application/json" \
  -H "x-api-key: fk_live_…" \
  -d '{"series":"ABC","sequence":123,"issueDate":"2026-07-26","supplier":{"name":"Örnek Yazılım A.Ş.","taxNumber":"4840847211","taxOffice":"Kadıköy","street":"Moda Cad.","buildingNumber":"12","district":"Kadıköy","city":"İstanbul"},"customer":{"name":"Alıcı Ticaret Ltd. Şti.","taxNumber":"3250566341","taxOffice":"Beşiktaş","city":"İstanbul"},"lines":[{"name":"Yazılım geliştirme hizmeti","quantity":10,"unitCode":"HUR","unitPrice":1500,"vatRate":20}]}'

JavaScript

const res = await fetch("https://api.temsor.com/v1/tr/invoice/build", {
  method: "POST",
  headers: { "content-type": "application/json", "x-api-key": KEY },
  body: JSON.stringify({"series":"ABC","sequence":123,"issueDate":"2026-07-26","supplier":{"name":"Örnek Yazılım A.Ş.","taxNumber":"4840847211","taxOffice":"Kadıköy","street":"Moda Cad.","buildingNumber":"12","district":"Kadıköy","city":"İstanbul"},"customer":{"name":"Alıcı Ticaret Ltd. Şti.","taxNumber":"3250566341","taxOffice":"Beşiktaş","city":"İstanbul"},"lines":[{"name":"Yazılım geliştirme hizmeti","quantity":10,"unitCode":"HUR","unitPrice":1500,"vatRate":20}]})
});
const { data } = await res.json();

Python

import httpx
r = httpx.post("https://api.temsor.com/v1/tr/invoice/build",
    headers={"x-api-key": KEY},
    json={"series":"ABC","sequence":123,"issueDate":"2026-07-26","supplier":{"name":"Örnek Yazılım A.Ş.","taxNumber":"4840847211","taxOffice":"Kadıköy","street":"Moda Cad.","buildingNumber":"12","district":"Kadıköy","city":"İstanbul"},"customer":{"name":"Alıcı Ticaret Ltd. Şti.","taxNumber":"3250566341","taxOffice":"Beşiktaş","city":"İstanbul"},"lines":[{"name":"Yazılım geliştirme hizmeti","quantity":10,"unitCode":"HUR","unitPrice":1500,"vatRate":20}]})
data = r.json()["data"]