Blog'a Dön

Nostro ve vostro hesapları nedir? Muhabir bankacılık için geliştirici rehberi

V
Vlado Grigirov
August 08, 2026
Nostro Vostro Correspondent Banking Cross-Border Payments Currency API Exchange Rates Developer Guide Finexly

Bir ödeme özelliği geliştirip paranın bir sınırı gerçekte nasıl geçtiğini merak ettiyseniz, cevap neredeyse her zaman tuhaf Latince adlara sahip iki hesabı içerir: nostro ve vostro. Bunlar her uluslararası havalenin, para transferinin ve çok para birimli ödemenin arkasındaki tesisattır. Nostro ve vostro hesapları hakkındaki açıklamaların çoğu sözlük tanımında durur. Bu rehber daha ileri gider: kavramı sade bir dille açıklar, çift taraflı kayıt üzerinden çalışılmış bir örneği adım adım gösterir ve ardından bu bakiyeleri bir döviz kuru API'si kullanarak kodda nasıl modelleyeceğinizi, değerleyeceğinizi ve mutabakatını yapacağınızı gösterir. Fintech, hazine ya da muhasebe yazılımı geliştiriyorsanız, ihtiyaç duyduğunuz zihinsel model budur.

Nostro ve vostro hesapları nedir?

Nostro ve vostro İtalyancadan (Latince üzerinden) gelir: nostro "bizim", vostro "sizin" demektir. Bunlar bir bankacılık ilişkisinin karşılıklı iki tarafından bakılan aynı hesabın iki etiketidir.

  • Bir nostro hesabı "bizim paramız sizde" demektir. Bir bankanın yabancı bir bankada tuttuğu, o yabancı para birimi cinsinden bir hesaptır. Ana bankanın defterlerinde bir varlıktır.
  • Bir vostro hesabı "sizin paranız bizde" demektir. Fonları saklayan bankanın gözünden aynı hesaptır. Onun defterlerinde bir yükümlülüktür.

Bir geliştirici için kritik içgörü: Nostro ve vostro iki farklı hesap değildir — iki bakış açısından tanımlanmış tek bir hesaptır. A Bankası'nın B Bankası'ndaki USD nostrosu dediği şeye, B Bankası A Bankası için vostrosu der. Aynı bakiye, aynı işlemler, iki defter, ters işaretler.

İşte klasik örnek. Bir Alman bankasının müşterileri için ABD doları ödemeleri yapması gerekir, ancak ABD'de şubesi ve dolar takasına doğrudan erişimi yoktur. Bu yüzden bir ABD muhabir bankasında bir USD hesabı açar ve doları orada tutar.

  • Alman bankası için o USD hesabı bir nostrodur ("bizim dolarlarımız, orada, uzakta").
  • ABD bankası için aynı hesap bir vostrodur ("Almanların dolarları, burada bizde").

Nostro ve vostro: temel fark

Ayrım tamamen bakış açısıyla ilgilidir. Bu tablo özetliyor:

ÖzellikNostro hesabıVostro hesabı
Anlamı"Bizim paramız sizde""Sizin paranız bizde"
Kimin bakış açısıFonlara sahip olan bankaFonları saklayan banka
Nerede tutulurYabancı bir muhabir bankadaYurt içi (saklayan) bankada
Para birimiYabancı para birimiSaklayan bankanın yerel para birimi
Bilanço işlemiSahibi için varlıkSaklayan için yükümlülük
Tipik kullanımYurt dışına yapılan döviz ödemelerinin takasıYabancı bir bankanın yerel para biriminde ödeme yapabilmesi
Yararlı bir hafıza ipucu: nostro = "bizim, yurt dışında"; vostro = "sizin, burada". Parayı sahip olan ve başka bir yerde tutan bankanın yazılımını yazıyorsanız, bir nostroyu izliyorsunuz. Başkasının parasını saklayan bankanın yazılımını yazıyorsanız, bir vostroyu izliyorsunuz.

Loro hesabı nereye oturur

Ara sıra üçüncü bir terimle, loro ("onların") ile karşılaşırsınız. Loro hesabı yeni bir hesap türü değildir — bir bankanın başka iki bankaya ait bir hesaptan söz ederken kullandığı bir atıftır. A Bankası, B Bankası'nın C Bankası için tuttuğu hesaptan söz ederse, A Bankası buna loro hesabı der. Bu daha çok çok bankalı ödeme zincirlerinde SWIFT mesajlarının netliği için önemlidir; onu doğrudan modellemeniz nadiren gerekir.

Bu hesaplar neden var: muhabir bankacılık

Hiçbir bankanın her ülkede şubesi ya da her ülkenin yurt içi takas sistemine doğrudan üyeliği yoktur. Muhabir bankacılık bunu çözer. Daha küçük bir "muhatap (respondent)" banka, gerçekten yerel erişimi olan daha büyük bir "muhabir (correspondent)" bankayla ortaklık kurar ve orada bir nostro hesabını önceden fonlar. Artık muhatap banka, hiç yerel altyapı kurmadan o para biriminde ödeme sunabilir.

Tek bir büyük banka, takas yapması gereken her para birimi için bir tane olmak üzere, dünya çapında onlarca nostro hesabı tutabilir; her biri önceden fonlanmış bir likidite havuzudur. Diğer tarafta, büyük bir muhabir, dünya çapındaki muhatap bankalar için yüzlerce vostro hesabı işletir. Bu hesaplar arasında bakiyeleri hareket ettiren talimatlar, standartlaştırılmış mesajlar olarak SWIFT ağı üzerinden gider (giderek daha çok ISO 20022 biçiminde).

İşte bu yüzden "basit" bir sınır ötesi ödeme üç dört bankaya uğrayabilir, bir ila üç gün sürebilir ve yolda ücretlere ve kur farkına bir dilim kaptırabilir. Her sıçrama, bir yerde bir nostro veya vostro bakiyesine karşı bir borç ve bir alacak kaydıdır.

Çalışılmış bir örnek: bir nostro/vostro çifti üzerinde çift taraflı kayıt

Parayı takip ettiğinizde kavramlar hızla somutlaşır. Diyelim ki FNBA (Avustralya'da bir banka) CMB'de (bir ABD bankası) bir USD nostro tutuyor. FNBA, anlaşılan bir kur üzerinden bir müşteriye, C'ye, USD 2.000.000 karşılığında AUD 1.000.000 satıyor.

FNBA'nın defterinde (nostrosu USD cinsinden bir varlık):

Dr  USD Nostro @ CMB          2,000,000 USD
    Cr  FX Trading (USD)          2,000,000 USD

Dr  FX Trading (AUD)          1,000,000 AUD
    Cr  Customer C (AUD)          1,000,000 AUD

CMB'nin defterinde aynı USD hesabı bir vostrodur (FNBA'ya borçlu olduğu bir yükümlülük):

Dr  Customer C (USD)          2,000,000 USD
    Cr  FNBA Vostro (USD)         2,000,000 USD

Aynadaki yansımaya dikkat edin: FNBA, sahip olduğu daha fazla doları kaydetmek için nostrosuna borç yazar; CMB, borçlu olduğu daha fazla doları kaydetmek için aynı vostroya alacak yazar. Bankaların hesaba dair iki görüşünü toplayın; tasarım gereği sıfıra mutabık kalırlar. Bu yansıma bütün meselenin özüdür — ve tam olarak mutabakat kodunuzun yararlanacağı şeydir.

Bir geliştirici olarak nostro/vostro bakiyelerini modellemek

Hazine, defter ya da ödeme yazılımı geliştiriyorsanız, bu modeli kullanmak için banka olmanıza gerek yok. Başkaları adına birden çok para biriminde bakiye tutan her sistem — çok para birimli bir cüzdan, bir pazar yeri ödeme motoru, bir neobankanın defteri — aynı sorunla karşılaşır: birden çok para biriminde gerçek bakiyeler tutarsınız ve bunların birleşik değerini tek bir ana para biriminde raporlamanız gerekir.

Asgari bir şemayla başlayın. Nostro türü her bakiye yalnızca bir para birimi, bir tutar ve onu saklayan karşı taraftır:

CREATE TABLE nostro_balances (
    id            BIGSERIAL PRIMARY KEY,
    correspondent TEXT NOT NULL,        -- who holds the funds
    currency      CHAR(3) NOT NULL,     -- ISO 4217 code, e.g. 'USD'
    balance       NUMERIC(20,4) NOT NULL DEFAULT 0,
    updated_at    TIMESTAMPTZ NOT NULL DEFAULT now()
);

Birden fazla para birimi tuttuğunuz anda bir raporlama sorusu belirir: toplam, şu anda ana para birimimizde ne kadar eder? USD, EUR ve JPY'yi doğrudan toplayamazsınız — önce her bakiyeyi güncel döviz kuruyla değerlemeniz gerekir. Bir para birimi API'sinin yerini kazandığı yer burasıdır. İşte bir dizi nostro bakiyesini seçilen bir ana para biriminde değerleyen bir Python fonksiyonu:

import requests

FINEXLY_KEY = "YOUR_API_KEY"

def value_nostros(balances, home="EUR"):
    """balances: dict of {currency: amount}. Returns total in `home`."""
    symbols = ",".join(c for c in balances if c != home)
    resp = requests.get(
        "https://api.finexly.com/v1/latest",
        params={"base": home, "symbols": symbols},
        headers={"Authorization": f"Bearer {FINEXLY_KEY}"},
        timeout=5,
    )
    resp.raise_for_status()
    rates = resp.json()["rates"]   # e.g. {"USD": 1.0842, "JPY": 161.4}

    total = 0.0
    for currency, amount in balances.items():
        if currency == home:
            total += amount
        else:
            # rates[X] = units of X per 1 home unit, so divide to convert back
            total += amount / rates[currency]
    return round(total, 2)

nostros = {"USD": 2_000_000, "JPY": 500_000_000, "GBP": 750_000}
print(value_nostros(nostros, home="EUR"))

API çağrısı temiz bir kur nesnesi döndürür — {"base": "EUR", "date": "2026-08-08", "rates": {"USD": 1.0842, ...}} — böylece her yabancı bakiyeyi ana para birimine geri çevirmek tek bir bölme işlemidir. Uç noktanın ve parametrelerinin tam dökümü için döviz kuru API'si belgelerine bakın; yeniyseniz, tümünü prototiplemek için ücretsiz para birimi API'si kademesi yeterlidir.

Nostro mutabakatı ve kur kârı/zararı

Gerçek nostro operasyonlarında iki sorun başat rol oynar ve her ikisi de açıkça geliştiricinin işidir.

1. Mutabakat. Bir nostro ile onun aynadaki vostrosu uyuşmak zorunda olduğundan, mutabakat, hesaba ilişkin dahili kaydınızı muhabirin gönderdiği ekstreyle (bugün genellikle bir SWIFT MT940/camt.053 ekstresi) karşılaştırmak demektir. Defterlerinizdeki her kayıt, onların defterlerinde karşılık gelen bir kayda sahip olmalıdır. Farklar — bir tarafta olup diğerinde olmayan bir kayıt — bir likidite veya uyum sorununa dönüşmeden önce araştırılması gereken eksik, mükerrer veya gecikmiş bir işlemi işaret eder. Yukarıdaki örnekteki yansıma özelliği, otomatik eşleştirmeyi mümkün kılan şeydir.

2. Kur yeniden değerlemesi. Bir nostro bakiyesi yabancı para biriminde tutulur, ama siz ana para biriminizde raporlarsınız. Döviz kurları hareket ettiği için, sabit bir yabancı bakiyenin ana para birimi cinsinden değeri her gün değişir. Bu fark, gerçekleşmemiş bir kur kârı ya da zararıdır ve muhasebe standartları bunun tanınmasını gerektirir. Kalıp şudur: bakiye oluşturulduğunda kuru bir anlık görüntü olarak kaydedin, bugünün kuruyla karşılaştırın ve farkı kaydedin.

const FINEXLY_KEY = "YOUR_API_KEY";

async function fxGainLoss(currency, amount, rateAtBooking, home = "EUR") {
  const url = `https://api.finexly.com/v1/latest?base=${home}&symbols=${currency}`;
  const res = await fetch(url, {
    headers: { Authorization: `Bearer ${FINEXLY_KEY}` },
  });
  const { rates } = await res.json();
  const currentRate = rates[currency];        // currency units per 1 home unit

  const valueAtBooking = amount / rateAtBooking;
  const valueNow = amount / currentRate;
  return {
    home,
    valueAtBooking: +valueAtBooking.toFixed(2),
    valueNow: +valueNow.toFixed(2),
    unrealizedPnl: +(valueNow - valueAtBooking).toFixed(2),
  };
}

// 2,000,000 USD booked at 1.0800, revalued at today's rate
fxGainLoss("USD", 2_000_000, 1.08).then(console.log);

Dönem sonu raporlaması ve denetim izleri için yalnızca canlı değil, geçmiş kurlara da ihtiyacınız olacak — geçmiş bir tarihe ait tam kapanış kurunu çekmek. Geçmiş döviz kurları uç noktası tam da bunun içindir ve bir ay sonu yeniden değerlemesini aylar sonra yeniden üretmek için elzemdir. Bakiye sayınız ve mutabakat sıklığınız arttıkça, istek hacminizi boyutlandırmak için fiyatlandırma planlarını inceleyin; onlarca para birimini birkaç dakikada bir yenileyen bir hazine panosu hızla birikir.

Bu bakiyelerin üzerinde son kullanıcılara canlı dönüşümler sunmak isterseniz — örneğin bir müşterinin kendi para biriminde fiyatlandırılmış bir ödeme görmesini sağlamak — barındırılan bir para birimi dönüştürücü ya da aynı latest uç noktası bunu doğrudan besler.

Modern alternatifler: nostro/vostro nereye gidiyor

Nostro/vostro modeli asırlıktır ve sınır ötesi değerin çoğunu hâlâ hareket ettirir, ama sürtünme — onlarca hesapta sıkışıp kalan önceden fonlanmış likidite, çok günlü takas, opak ücretler — sektörü alternatiflere doğru itti:

  1. SWIFT gpi, hesapları değiştirmeden mevcut muhabir raylarının üzerine uçtan uca izleme ve aynı gün takas ekler.
  2. Stabil kripto paralar ve tokenleştirilmiş mevduatlar, kurumların her para biriminde bir nostroyu önceden fonlamadan dakikalar içinde takas yapmasını sağlar; düzenleyici netlik hâlâ yetişmeye çalışsa da.
  3. CBDC'ler ve toptan takas pilotları (birkaç merkez bankası sınır ötesi koridorları test ediyor), aracı zincirini tümüyle kısaltmayı hedefler.

Yine de, önümüzdeki birkaç yılda geliştireceğiniz yazılımların çoğu için, hesaplar — ve yukarıdaki mutabakat ve yeniden değerleme mantığı — hiçbir yere gitmiyor. Onları anlamak kalıcı bir beceridir.

Sıkça Sorulan Sorular

Nostro hesabı ile vostro hesabı arasındaki fark nedir? İkisi de iki taraftan bakılan aynı hesaptır. Nostro, sahip olan bankanın gözünden "bizim paramız sizde" (yabancı para cinsinden bir varlık); vostro ise saklayan bankanın gözünden "sizin paranız bizde" (yerel para cinsinden bir yükümlülük) demektir.

Nostro hesabı bir varlık mı, yükümlülük mü? Nostro hesabı, sahip olan bankanın bilançosunda bir varlıktır — bir muhabirde park edilmiş kendi fonlarını temsil eder. Aynadaki vostro, bu fonları saklayan banka için bir yükümlülüktür.

Bankaların nostro ve vostro hesaplarına neden ihtiyacı var? Çünkü hiçbir bankanın her ülkede şubesi ya da takasa doğrudan erişimi yoktur. Nostro/vostro bakiyeleriyle desteklenen muhabir ilişkileri, bir bankanın yerel varlığı olmayan para birimlerinde ödeme yapıp almasını sağlar.

Bir nostro hesabının mutabakatı nasıl yapılır? Hesaba ilişkin dahili defterinizi muhabirin ekstresiyle (örneğin bir SWIFT camt.053) eşleştirerek. Her kayıt iki tarafta da görünmeli; eşleşmeyen kayıtlar ("farklar") araştırılır. Nostro ve vostro birbirinin aynası olduğundan, iki kayıt net olarak sıfıra gelmelidir.

Bir para birimi API'si nostro/vostro muhasebesine nasıl yardım eder? Bakiyeler birden çok yabancı para birimindedir, ama siz tek bir ana para biriminde raporlarsınız. Bir para birimi API'si, her bakiyeyi değerlemek, gerçekleşmemiş kur kârını/zararını hesaplamak ve tutarlı çok para birimli raporlar üretmek için gereken canlı ve geçmiş kurları sağlar.

Kendiniz deneyin

Çok para birimli bakiyeleri gerçek döviz kurlarıyla değerlemeye ve mutabık kılmaya hazır mısınız? Ücretsiz Finexly API anahtarınızı alın — kredi kartı gerekmez. Ayda 1.000 ücretsiz istekle başlayın, 170'ten fazla para birimi için canlı ve geçmiş kurları çekin ve hazine mantığınız büyüdükçe yükseltin.

Vlado Grigirov

Senior Currency Markets Analyst & Financial Strategist

Vlado Grigirov is a senior currency markets analyst and financial strategist with over 14 years of experience in foreign exchange markets, cross-border finance, and currency risk management. He has wo...

View full profile →