Crie um calendário de vencimento de contas recorrentes
Em 30 de janeiro de 2026, uma conta com vencimento no dia 1 cai em 1º de fevereiro, e outra no dia 30 vence nesse mesmo dia. Informe cada conta com seu dia mensal e veja a próxima data na ordem digitada. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Roda direto no seu navegador. Grátis, sem cadastro — seus dados não são enviados para lugar nenhum.
Transforme uma lista de dias de vencimento mensal em próximas datas concretas. Informe a data atual, o nome de cada conta e o dia de vencimento; o resultado apresenta a próxima ocorrência de cada item na mesma ordem. Uma conta que vence hoje continua com a data de hoje. Quando um dia válido, como 29, 30 ou 31, não existe no mês relevante, a ocorrência passa para o último dia desse mês.
Informe a data atual e as contas recorrentes
Comece com a data atual no formato inequívoco AAAA-MM-DD. Depois, adicione uma linha para cada conta mensal, com um nome reconhecível e um dia de vencimento inteiro entre 1 e 31. O nome é preservado exatamente no resultado e pode identificar um fornecedor, apelido de conta ou categoria de despesa.
O dia representa uma recorrência mensal, não uma data completa. Valores abaixo de 1 ou acima de 31 são rejeitados. A ordem da lista também é mantida, facilitando a comparação com seu orçamento, planilha ou lista de pagamentos.
Use uma linha para cada obrigação, mesmo quando várias contas compartilham o mesmo dia. A data informada precisa existir no calendário gregoriano; valores impossíveis, como 30 de fevereiro, não são tratados como aproximações.
Entenda como a próxima ocorrência é escolhida
Para cada conta, o cálculo considera primeiro o vencimento no mês atual. Se essa data for hoje ou posterior, ela será a próxima ocorrência. Essa regra inclusiva impede que uma conta com vencimento hoje seja transferida para o mês seguinte.
Se a ocorrência do mês atual já passou, o cálculo avança exatamente um mês. Como os meses têm durações diferentes, um dia válido pode não existir em todos eles. Nesse caso, utiliza-se o último dia real do mês selecionado.
Assim, uma conta com vencimento no dia 31 cai em 30 de abril e em 28 ou 29 de fevereiro. A mesma regra vale para os dias 29 e 30 em fevereiro. Os anos bissextos seguem as regras gregorianas, inclusive a exceção dos séculos.
O resultado é determinístico e independe de fuso horário, relógio local ou interpretação do ambiente.
Aplique o calendário ao seu processo de pagamentos
O resultado contém a data atual informada e uma linha para cada conta, com o nome, o dia recorrente e a próxima data no formato AAAA-MM-DD. Você pode ordenar ou agrupar essas datas em sua planilha para obter uma visão cronológica do fluxo de caixa; o cálculo mantém intencionalmente a ordem de entrada. Execute novamente com uma data posterior para atualizar o calendário.
Entradas idênticas sempre geram saídas idênticas, o que favorece testes e conferências repetíveis. Confira os resultados de fim de mês se o contrato do credor adotar outra regra, como transferir o pagamento para o próximo dia útil, pois este cálculo usa somente dias corridos. Ele não conhece feriados, fins de semana, carências, atrasos bancários ou pagamentos concluídos, nem armazena dados de contas.
Casos de uso
Orçamento doméstico mensal
Converta aluguel, serviços, assinaturas, seguros e cartões em próximas datas para planejar o fluxo de caixa.
Lista de contas a pagar
Atribua uma próxima data concreta a cada fornecedor recorrente sem alterar a ordem da lista interna de pagamentos.
Revisão do fim do mês
Veja como vencimentos nos dias 29, 30 e 31 são ajustados em fevereiro e em outros meses mais curtos.
Perguntas frequentes
Uma conta que vence hoje aparece hoje ou no próximo mês?
Ela aparece hoje. A data atual faz parte da seleção da próxima ocorrência.
O que acontece com o dia 31 em um mês mais curto?
A ocorrência é colocada no último dia do mês, como 30 de abril ou 28 de fevereiro em um ano não bissexto.
Fins de semana e feriados são considerados?
Não. O cálculo usa dias corridos e não muda datas por feriados ou calendários bancários.
Quais valores são aceitos como dia de vencimento?
O valor deve ser um inteiro de 1 a 31. Zero, negativos, frações e números acima de 31 são rejeitados.
As contas ou informações de pagamento são armazenadas?
Não. As datas são calculadas de forma determinística a partir da entrada, sem rede nem armazenamento persistente.
Ferramentas relacionadas
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/final3/recurring-bill-due-date-list \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"current_date":"2026-01-30","bills":[{"name":"Rent","due_day":1},{"name":"Internet","due_day":31}]}'const res = await fetch("https://api.kit.forhosting.com/final3/recurring-bill-due-date-list", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"current_date": "2026-01-30",
"bills": [
{
"name": "Rent",
"due_day": 1
},
{
"name": "Internet",
"due_day": 31
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/final3/recurring-bill-due-date-list",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"current_date": "2026-01-30",
"bills": [
{
"name": "Rent",
"due_day": 1
},
{
"name": "Internet",
"due_day": 31
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/final3/recurring-bill-due-date-list", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"current_date":"2026-01-30","bills":[{"name":"Rent","due_day":1},{"name":"Internet","due_day":31}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"current_date":"2026-01-30","bills":[{"name":"Rent","due_day":1},{"name":"Internet","due_day":31}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/final3/recurring-bill-due-date-list", 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
{
"current_date": "2026-01-30",
"bills": [
{
"name": "Rent",
"due_day": 1
},
{
"name": "Internet",
"due_day": 31
}
]
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "final3.recurring_bill_due_date_list",
"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. |
Notas técnicas
Aplique o calendário ao seu processo de pagamentos
O preço-base da execução é US$ 0,002; serviços associados podem apresentar detalhes de cobrança separadamente.