> ## Documentation Index
> Fetch the complete documentation index at: https://tahsil.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Kurlar ve portföy değerleme

> Piyasa veya TCMB kurlarıyla portföyü değerleyin ve hareket giriş kuru revizyonlarını yönetin.

Tahsil Banka API, güncel kurları ve banka hesaplarının seçilen para birimindeki
karşılığını tek tenant-safe sözleşmede sunar. Entegrasyonunuz yalnız Tahsil
Core'u çağırır.

## Güncel kurları okuma

`GET /banks/market-rates` için `bank:read` kapsamı gerekir.

```bash theme={"system"}
curl --request GET \
  --url 'https://api.tahsil.dev/banks/market-rates?channel=piyasa&codes=USD,EUR,XAU' \
  --header 'x-api-key: tahsil_live_example' \
  --header 'x-api-secret: secret_example' \
  --header 'x-company-id: 66a000000000000000000001'
```

`channel`, `piyasa` veya `tcmb` olabilir. `codes` verilmezse kanaldaki güncel
liste döner. Her kur alış, satış, kaynak zamanı, gözlem zamanı ve tazelik
bilgisini taşır.

Altın ve gümüş hesaplarında şu birim varsayımları açıkça döndürülür:

| Hesap kodu | Kaynak kodu | Varsayım             |
| ---------- | ----------- | -------------------- |
| `XAU`      | `GRAM`      | 1 XAU = 1 gram altın |
| `GAU`      | `GRAM`      | 1 GAU = 1 gram altın |
| `XAG`      | `XAG`       | 1 XAG = 1 gram gümüş |

## Portföyü hedef para biriminde değerleme

`GET /banks/portfolio/valuation`, banka alt hesaplarındaki muhasebe
`balance` değerini kullanır. Mevcut kullanılabilir bakiye alanını değiştirmez.

```bash theme={"system"}
curl --request GET \
  --url 'https://api.tahsil.dev/banks/portfolio/valuation?channel=piyasa&quoteCurrency=TRY' \
  --header 'x-api-key: tahsil_live_example' \
  --header 'x-api-secret: secret_example' \
  --header 'x-company-id: 66a000000000000000000001'
```

TRY varsayılan hedeftir. `availableQuoteCurrencies`, seçili kanalda
kullanabileceğiniz fiat hedefleri bildirir. Cevapta:

* toplam karşılık ve kur zamanı,
* varlık, firma, banka bağlantısı ve alt hesap kırılımı,
* her hesap için özgün bakiye, çevrilmiş tutar ve kullanılan kur tarafı,
* kapsanan hesap sayısı ve kapsama oranı,
* eksik veya yedi günden eski kur nedeniyle hariç kalan hesaplar

bulunur.

Pozitif varlıklar alış kuruyla değerlenir. Negatif bakiye, borcu olduğundan
düşük göstermemek için ters kur tarafını kullanır. Eksik kurda toplam sessizce
eksilmez; `status: partial`, `warnings` ve `exclusions` birlikte döner.

## Hareket giriş kurunu okuma

`GET /banks/transactions/{id}/valuation`, özgün banka hareketini değiştirmeden
giriş kuru durumunu ve bütün revizyonları döndürür.

* Yeni hareketler için `fetchedAt` anını kapsayan 30 dakikalık Piyasa kuru
  kullanılır.
* Özellik öncesi hareketler günlük geçmiş kurla değerlenebilir.
* `granularity`, `30m`, `1d` veya `manual` değerini taşır.
* `origin`, otomatik, backfill veya manuel kaynağı ayırır.
* TRY hareketleri `not_applicable` döner.

## Manuel giriş kuru revizyonu

`PUT /banks/transactions/{id}/valuation`, `bank:operate` kapsamı ve
admin/operator rolü gerektirir.

```bash theme={"system"}
curl --request PUT \
  --url 'https://api.tahsil.dev/banks/transactions/66b000000000000000000001/valuation' \
  --header 'content-type: application/json' \
  --header 'x-api-key: tahsil_live_example' \
  --header 'x-api-secret: secret_example' \
  --header 'x-company-id: 66a000000000000000000001' \
  --data '{"rate":42.375,"note":"Ay sonu kontrolünde düzeltildi"}'
```

Bu istek hareket tutarını veya para birimini güncellemez. Mevcut değerleme
ezilmez; yeni append-only sürüm oluşur ve en yüksek sürüm güncel kabul edilir.
Manuel sürüm otomasyon tarafından değiştirilmez.

<Note>
  Bu özellik kâr/zarar hesaplamaz. Saklanan giriş kuru ve kaynak zamanı,
  gelecekteki maliyet ve kâr/zarar hesaplarının temelidir.
</Note>

<Warning>
  Kur ve portföy değerleri bilgilendirme amaçlıdır. Yatırım tavsiyesi,
  gerçekleşebilir işlem fiyatı veya resmi muhasebe kuru garantisi değildir.
</Warning>
