Se você já criou um recurso de pagamentos e se perguntou como o dinheiro realmente cruza uma fronteira, a resposta quase sempre envolve duas contas com nomes latinos estranhos: nostro e vostro. Elas são o encanamento por trás de cada transferência internacional, remessa e pagamento em múltiplas moedas. A maioria das explicações sobre contas nostro e vostro para na definição de dicionário. Este guia vai além: explica o conceito em linguagem simples, percorre um exemplo prático de partidas dobradas e depois mostra como modelar, avaliar e conciliar esses saldos em código usando uma API de taxas de câmbio. Se você desenvolve software de fintech, tesouraria ou contabilidade, este é o modelo mental de que você precisa.
O que são contas nostro e vostro?
Nostro e vostro vêm do italiano (via latim): nostro significa "nosso" e vostro significa "vosso". São dois rótulos para a mesma conta, vista de lados opostos de uma relação bancária.
- Uma conta nostro é "nosso dinheiro em poder de vocês". É uma conta que um banco mantém em um banco estrangeiro, denominada na moeda estrangeira. Nos livros do banco de origem, é um ativo.
- Uma conta vostro é "seu dinheiro em poder de nós". É exatamente a mesma conta vista pelo banco que guarda os fundos. Nos livros dele, é um passivo.
O insight essencial para um desenvolvedor: nostro e vostro não são duas contas diferentes — são uma única conta descrita a partir de duas perspectivas. O que o Banco A chama de sua conta nostro em USD no Banco B, o Banco B chama de sua conta vostro para o Banco A. Mesmo saldo, mesmas transações, dois livros contábeis, sinais opostos.
Este é o exemplo canônico. Um banco alemão precisa fazer pagamentos em dólares americanos para seus clientes, mas não tem filial nos Estados Unidos nem acesso direto à compensação em dólares. Então abre uma conta em USD em um banco correspondente americano e mantém os dólares lá.
- Para o banco alemão, essa conta em USD é uma nostro ("nossos dólares, lá longe").
- Para o banco americano, essa mesma conta é uma vostro ("os dólares dos alemães, aqui conosco").
Nostro vs. vostro: a diferença essencial
A distinção é inteiramente sobre ponto de vista. Esta tabela resume:
| Atributo | Conta nostro | Conta vostro |
|---|---|---|
| Significado | "Nosso dinheiro com vocês" | "Seu dinheiro conosco" |
| Perspectiva de quem | O banco que possui os fundos | O banco que guarda os fundos |
| Mantida onde | Em um banco correspondente estrangeiro | No banco nacional (guardião) |
| Moeda | Moeda estrangeira | Moeda local do banco guardião |
| Tratamento no balanço | Ativo para o dono | Passivo para o guardião |
| Uso típico | Liquidar pagamentos de saída em moeda estrangeira | Permitir que um banco estrangeiro pague em moeda local |
Onde entra a conta loro
De vez em quando você verá um terceiro termo, loro ("deles"). Uma conta loro não é um novo tipo de conta — é uma referência que um banco usa ao falar de uma conta que pertence a dois outros bancos. Se o Banco A discute a conta que o Banco B mantém para o Banco C, o Banco A a chama de conta loro. Importa sobretudo para a clareza das mensagens SWIFT em cadeias de pagamento com vários bancos; você raramente precisa modelá-la diretamente.
Por que essas contas existem: o banco correspondente
Nenhum banco tem filial em todos os países, nem participação direta no sistema de compensação doméstico de cada país. O banco correspondente resolve isso. Um banco "respondente" menor faz parceria com um banco "correspondente" maior que tem acesso local e pré-financia uma conta nostro lá. Agora o respondente pode oferecer pagamentos naquela moeda sem nunca montar infraestrutura local.
Um único banco grande pode manter dezenas de contas nostro ao redor do mundo — uma por moeda em que precisa liquidar — cada uma um pool de liquidez pré-financiado. Do outro lado, um grande correspondente opera centenas de contas vostro para bancos respondentes no mundo todo. As instruções que movem saldos entre essas contas viajam pela rede SWIFT como mensagens padronizadas (cada vez mais no formato ISO 20022).
É por isso que um pagamento transfronteiriço "simples" pode tocar três ou quatro bancos, levar de um a três dias e perder uma fatia em taxas e spread cambial pelo caminho. Cada salto é um débito e um crédito contra um saldo nostro ou vostro em algum lugar.
Um exemplo prático: partidas dobradas entre um par nostro/vostro
Os conceitos ficam concretos rapidamente quando você segue o dinheiro. Suponha que o FNBA (um banco na Austrália) mantenha uma nostro em USD no CMB (um banco americano). O FNBA vende AUD 1.000.000 a um cliente, C, em troca de USD 2.000.000 a uma taxa acordada.
No livro do FNBA (sua nostro é um ativo em USD):
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 AUDNo livro do CMB, essa mesma conta em USD é uma vostro (um passivo que ele deve ao FNBA):
Dr Customer C (USD) 2,000,000 USD
Cr FNBA Vostro (USD) 2,000,000 USDNote o espelho: o FNBA debita sua nostro para registrar mais dólares que possui; o CMB credita a vostro idêntica para registrar mais dólares que deve. Some as duas visões que os bancos têm da conta e, por design, elas se conciliam em zero. Esse espelhamento é o cerne de tudo — e é exatamente o que seu código de conciliação vai explorar.
Modelando saldos nostro/vostro como desenvolvedor
Se você constrói software de tesouraria, contabilidade ou pagamentos, não precisa ser um banco para usar esse modelo. Qualquer sistema que mantenha saldos em várias moedas por conta de terceiros — uma carteira multimoeda, um motor de pagamentos de um marketplace, o razão de um neobanco — enfrenta o mesmo problema: você mantém saldos reais em várias moedas e deve reportar seu valor combinado em uma única moeda base.
Comece com um esquema mínimo. Cada saldo do tipo nostro é apenas uma moeda, um valor e a contraparte que o guarda:
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()
);No momento em que você mantém mais de uma moeda, surge uma pergunta de relatório: quanto vale o total em nossa moeda base agora? Você não pode somar USD, EUR e JPY diretamente — precisa primeiro avaliar cada saldo pela taxa de câmbio atual. É aí que uma API de câmbio ganha seu lugar. Aqui está uma função em Python que avalia um conjunto de saldos nostro na moeda base escolhida:
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"))A chamada à API retorna um objeto de taxas limpo — {"base": "EUR", "date": "2026-08-08", "rates": {"USD": 1.0842, ...}} — então reconverter cada saldo estrangeiro para a moeda base é uma única divisão. Para um detalhamento completo do endpoint e seus parâmetros, veja a documentação da API de taxas de câmbio e, se você é novo nisso, o nível de API de câmbio gratuita já basta para prototipar tudo.
Conciliação nostro e ganho/perda cambial
Dois problemas dominam as operações nostro reais, e ambos são claramente trabalho do desenvolvedor.
1. Conciliação. Como uma nostro e sua vostro espelhada precisam concordar, conciliar significa cruzar seu registro interno da conta com o extrato que o correspondente envia (hoje, normalmente um extrato SWIFT MT940/camt.053). Cada lançamento em seus livros deve ter um lançamento correspondente nos deles. Quebras — um lançamento de um lado, mas não do outro — sinalizam uma transação ausente, duplicada ou atrasada que precisa ser investigada antes de virar um problema de liquidez ou conformidade. A propriedade de espelho do exemplo acima é o que torna o cruzamento automático possível.
2. Reavaliação cambial. Um saldo nostro é mantido em moeda estrangeira, mas você reporta na sua moeda base. Como as taxas de câmbio se movem, o valor em moeda base de um saldo estrangeiro estático muda todos os dias. Essa diferença é um ganho ou perda cambial não realizado, e as normas contábeis exigem reconhecê-la. O padrão: registre a taxa quando o saldo foi estabelecido, compare com a taxa de hoje e lance a diferença.
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);Para relatórios de fim de período e trilhas de auditoria, você também vai querer taxas históricas, não apenas ao vivo — obter a taxa de fechamento exata de uma data passada. É para isso que serve um endpoint de taxas de câmbio históricas, essencial para reproduzir uma reavaliação de fim de mês meses depois. À medida que sua quantidade de saldos e a frequência de conciliação crescem, confira os planos de preços para dimensionar seu volume de requisições; um painel de tesouraria que atualiza dezenas de moedas a cada poucos minutos soma rápido.
Se você quiser expor conversões ao vivo aos usuários finais sobre esses saldos — por exemplo, deixar um cliente ver um pagamento cotado na própria moeda —, um conversor de moedas hospedado ou o mesmo endpoint latest alimenta isso diretamente.
Alternativas modernas: para onde vai o modelo nostro/vostro
O modelo nostro/vostro tem séculos e ainda movimenta a maior parte do valor transfronteiriço, mas o atrito — liquidez pré-financiada presa em dezenas de contas, liquidação de vários dias, taxas opacas — empurrou o setor para alternativas:
- SWIFT gpi adiciona rastreamento de ponta a ponta e liquidação no mesmo dia sobre os trilhos correspondentes existentes, sem substituir as contas.
- Stablecoins e depósitos tokenizados permitem que instituições liquidem em minutos sem pré-financiar uma nostro em cada moeda, embora a clareza regulatória ainda esteja se ajustando.
- CBDCs e pilotos de liquidação de atacado (vários bancos centrais estão testando corredores transfronteiriços) visam encurtar por completo a cadeia de intermediários.
Ainda assim, para a maioria do software que você vai construir nos próximos anos, as contas — e a lógica de conciliação e reavaliação acima — não vão a lugar nenhum. Entendê-las é uma habilidade duradoura.
Perguntas frequentes
Qual é a diferença entre uma conta nostro e uma vostro? São a mesma conta vista de dois lados. Uma nostro é "nosso dinheiro em poder de vocês" (um ativo, em moeda estrangeira) na visão do banco dono; uma vostro é "seu dinheiro em poder de nós" (um passivo, em moeda local) na visão do banco guardião.
Uma conta nostro é um ativo ou um passivo? Uma conta nostro é um ativo no balanço do banco dono — representa seus próprios fundos estacionados em um correspondente. A vostro espelhada é um passivo para o banco que guarda esses fundos.
Por que os bancos precisam de contas nostro e vostro? Porque nenhum banco tem filiais ou acesso direto à compensação em todos os países. Relações de correspondência sustentadas por saldos nostro/vostro permitem que um banco faça e receba pagamentos em moedas onde não tem presença local.
Como se concilia uma conta nostro?
Cruzando seu razão interno da conta com o extrato do correspondente (por exemplo, um SWIFT camt.053). Cada lançamento deve aparecer nos dois lados; lançamentos sem correspondência ("quebras") são investigados. Como a nostro e a vostro se espelham, os dois registros devem somar zero.
Como uma API de câmbio ajuda na contabilidade nostro/vostro? Os saldos ficam em várias moedas estrangeiras, mas você reporta em uma única moeda base. Uma API de câmbio fornece as taxas ao vivo e históricas necessárias para avaliar cada saldo, calcular o ganho/perda cambial não realizado e produzir relatórios multimoeda consistentes.
Experimente você mesmo
Pronto para avaliar e conciliar saldos multimoeda com taxas de câmbio reais? Obtenha sua chave gratuita da API Finexly — sem cartão de crédito. Comece com 1.000 requisições grátis por mês, obtenha taxas ao vivo e históricas de mais de 170 moedas e faça upgrade conforme sua lógica de tesouraria cresce.
Explore More
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 →