Calculadora de APY: converta taxa nominal em rendimento anual efetivo
A API de APY converte uma taxa de juros nominal declarada no rendimento percentual anual — a taxa anual efetiva que você realmente recebe quando a capitalização é levada em conta.
Executar grátis
Uma conta poupança que anuncia 5% com capitalização mensal não paga 5% ao ano; paga 5,116%. Você envia a taxa nominal e o número de períodos de capitalização por ano, e o endpoint retorna o rendimento efetivo, com exatidão, sempre. O mesmo cálculo roda gratuitamente no seu navegador nesta página, para que você confira um número manualmente e só pague quando automatizá-lo em um produto, uma ferramenta de comparação ou uma verificação de conformidade.
Por que a taxa nominal não é a taxa que você recebe
Bancos e credores anunciam uma taxa anual nominal, mas os juros costumam ser creditados mais de uma vez por ano. A cada crédito, os novos juros começam a render juros próprios, e o dinheiro cresce mais rápido do que o valor anunciado sugere. A diferença aumenta com a frequência da capitalização: 5% capitalizados anualmente são simplesmente 5%, mas com capitalização mensal passam a cerca de 5,116%, e diária, cerca de 5,127%. Esse valor efetivo é o APY — o rendimento percentual anual — e é a única forma honesta de comparar dois produtos com capitalizações diferentes. Comparar taxas nominais entre uma poupança com capitalização diária e um certificado com capitalização trimestral favorece silenciosamente o que capitaliza menos. Regulamentações de vários países exigem a divulgação do APY justamente porque as taxas nominais induzem ao erro, e este endpoint calcula esse número obrigatório a partir dos dois dados que toda ficha de produto já contém.
Como o cálculo funciona
A fórmula é a definição clássica de juros compostos condensada em uma expressão: APY é igual a (1 + r/n) elevado à n-ésima potência, menos 1, onde r é a taxa anual nominal em decimal e n é o número de períodos de capitalização por ano. Com 5% capitalizados mensalmente, temos (1 + 0.05/12)^12 − 1 = 0.0511619. O endpoint aceita a taxa em decimal, portanto 0.05 significa 5% — enviar 5 descreveria uma taxa de 500% e produziria um resultado absurdo, e é por isso que a documentação repete essa convenção a cada passo. O número de períodos deve ser um inteiro positivo: 1 para anual, 2 para semestral, 4 para trimestral, 12 para mensal, 365 para diária. Frequências fracionárias ou zero não têm significado financeiro e são rejeitadas com um erro claro, em vez de convertidas silenciosamente. Os resultados são arredondados em dez casas decimais, de modo que a mesma entrada retorna uma saída idêntica em qualquer máquina.
Onde ele se encaixa em um produto real
Sites de comparação recalculam o APY de cada produto listado para que a ordenação reflita o que os clientes realmente ganham, e não o que a página de marketing destaca. Backends de neobancos e fintechs o usam para exibir o rendimento exigido pelo regulador ao lado de cada conta, derivado da mesma taxa e frequência armazenadas no catálogo de produtos, de modo que uma mudança de taxa se propague sem que ninguém edite textos. Equipes financeiras que validam uma proposta conferem se a taxa efetiva cotada corresponde à taxa nominal e ao regime de capitalização escritos no contrato — uma divergência é um sinal de alerta que vale detectar antes da assinatura. Como o cálculo é determinístico e não tem dependências externas, ele roda de forma idêntica na nossa edge, na sua suíte de testes e no widget gratuito do navegador nesta página; o mesmo módulo atende aos três. Custa US$ 0,002 por chamada pela API, sem retenção de dados após o envio da resposta.
Casos de uso
Classifique produtos de poupança pelo rendimento real
Recalcule o APY de cada conta em uma ferramenta de comparação para que a ordenação reflita o que os clientes realmente ganham em diferentes regimes de capitalização.
Exiba o rendimento exigido pelo regulador
Derive o APY divulgado a partir da taxa nominal e da frequência de capitalização já armazenadas no seu catálogo de produtos, sem edições manuais quando a taxa mudar.
Verifique uma taxa efetiva cotada
Confira se a taxa anual efetiva de uma proposta corresponde à taxa nominal e ao regime de capitalização previstos no contrato antes de assinar.
Perguntas frequentes
Quanto custa?
US$ 0,002 por chamada de API. A mesma calculadora também é gratuita no seu navegador, nesta página.
Como envio a taxa de juros?
Em decimal: 0.05 significa 5%. Enviar 5 descreve uma taxa nominal de 500%.
Quais frequências de capitalização são permitidas?
Qualquer inteiro positivo: 1 para anual, 2 para semestral, 4 para trimestral, 12 para mensal, 365 para diária. Valores não inteiros são rejeitados.
Qual é a diferença entre APR e APY?
O APY inclui o efeito da capitalização ao longo do ano; o APR, não. Este endpoint calcula o APY a partir de uma taxa nominal e sua frequência de capitalização.
A taxa nominal pode ser zero ou negativa?
Zero é permitido e resulta em um APY de zero. Taxas negativas são rejeitadas como entrada inválida.
Algum dos meus dados é armazenado?
Não. O cálculo é aritmética pura; nada é persistido nem registrado além da própria requisição.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/fin/apy \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"nominal_rate":0.05,"periods_per_year":12}'const res = await fetch("https://api.kit.forhosting.com/fin/apy", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"nominal_rate": 0.05,
"periods_per_year": 12
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fin/apy",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"nominal_rate": 0.05,
"periods_per_year": 12
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fin/apy", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"nominal_rate":0.05,"periods_per_year":12}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"nominal_rate":0.05,"periods_per_year":12}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fin/apy", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"nominal_rate": 0.05,
"periods_per_year": 12
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fin.apy",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |