Teslimat Veri Biçimleri▾
Talep ile Aktarım

Teslimat Veri Biçimleri

Talep türüne göre complete gövdesi: cari listesi, ekstre satırları, dönem bakiyeleri.

Son güncelleme: 21 Eylül 2026 · Sözleşme sürümü 1.0.0

Talebin kind alanına göre complete gövdesi. Ekstre satırları complete'ten ÖNCE POST …/statement/rows ile ≤ 20.000'lik parçalar hâlinde sırayla gönderilir; complete yalnız parça sayısını bildirir.

kindTalepte ne gelirGövdeAlanlarTavan / kural
counterpartiesparams boş — tüm cari listesi istenir{ "counterparties": [ … ] }external_id (ERP kodu, zorunlu) · name · tax_number (VKN 10 / TCKN 11 hane) · email · contact_name · notes≤ 10.000 (içeride 1.000'lik parçalar; kısmi başarı — reddedilenler delivery.errors[])
statementparams.counterparty { external_id, name, tax_number } + period_start / period_end (+ currency)Önce POST …/statement/rows × N: { "part", "total_parts", "rows": [ … ] } (sıralı parçalar) · sonra complete: { "statement": { "total_parts" } }satır: date (YYYY-MM-DD) · description · reference_no · amount (işaretli: borç +, alacak −) ya da debit / credit · currency; para birimi talepten (para birimsiz satırlar onu alır)parça ≤ 20.000 satır ve ≤ 16 MB, toplam ≤ 250.000 satır (elle yüklemeyle aynı) / 128 MB; tüm teslimat talepten itibaren 40 dk içinde; dönem ve cari talepten; satırlar arka planda ayrıştırılıp sihirbaz kartına düşer ("hazırlanıyor" → dosya), iş adı/taraflar/para birimi muhasebe personelinin çerçevesinden
balancesparams.period_date (+ currency){ "balances": { "records": [ … ], "response_deadline"?, "currency"? } }kayıt: counterparty { external_id | tax_number } (biri zorunlu; name verilirse rehberde yoksa satır içi oluşturulur; email gönderin — muhasebe personeli tek tek yazmak zorunda kalmasın) · amount (işaretsiz) · direction (debit | credit)≤ 5.000; bir kayıt reddedilirse hiçbiri yazılmaz (422 details[]); response_deadline yoksa bugün + 15 gün. Dikkat: name verilen kayıt rehberdeki mevcut bir firmaya denk geliyorsa anahtarda counterparties:write olmalı (yoksa 422 directory_update_requires_scope ve tüm teslimat düşer) — ya bu kapsamı verin ya da yalnız external_id gönderin

Örnek gövdeler

// kind = statement — 1) POST …/{id}/statement/rows (parça 1..N, her biri kendi Idempotency-Key'iyle)
{ "part": 1, "total_parts": 1, "rows": [
  { "reference_no": "FTR2026000123", "date": "2026-08-14", "description": "Satış faturası", "amount": "12500.00" },
  { "reference_no": "TAH-88",        "date": "2026-08-20", "description": "Havale",         "debit": "0.00", "credit": "5000.00" }
] }
// kind = statement — 2) POST …/{id}/complete (tüm parçalar gittikten sonra)
{ "statement": { "total_parts": 1 } }

// kind = balances
{ "balances": { "records": [
  { "counterparty": { "external_id": "0001000045" }, "amount": "184250.00", "direction": "debit" }
], "response_deadline": "2026-09-30" } }

// kind = counterparties
{ "counterparties": [
  { "external_id": "0001000045", "name": "Örnek Ticaret A.Ş.", "tax_number": "1234567890", "email": "muhasebe@ornek-ticaret.com.tr" }
] }
Not
Tutarlar 2 ondalık haneli string ("12500.00"); ekstrede amount işaretlidir (borç +, alacak −) ya da debit / credit çifti verilir. Tarihler YYYY-MM-DD. currency boş bırakılan satırlar talebin para birimini alır.