Bot-Fatura
Motor de cobrança automatizada desenvolvido para organizar recebíveis recorrentes, executar réguas de cobrança via WhatsApp e dar mais previsibilidade aos fluxos financeiros da operação.

Cobrança Recorrente com Automação
Projeto desenvolvido para estruturar fluxos de cobrança periódica, organizar recebíveis e automatizar comunicações financeiras em uma operação recorrente.
.NET, PostgreSQL e WhatsApp
Solução construída com APIs em .NET, persistência em PostgreSQL e integração com WhatsApp para sustentar regras de recorrência e comunicação automatizada.
Software Customizado
Sistema desenvolvido sob demanda para uma operação real de cobrança, com foco em automação, flexibilidade e evolução contínua da plataforma.
Do desafio à solução
1. O Problema
Cobrança manual e pouca previsibilidade no fluxo financeiro
A operação precisava lidar com cobranças recorrentes, lembretes e inadimplência de forma mais organizada, evitando dependência de ações manuais e perda de consistência na comunicação.
2. O Objetivo
Automatizar recorrência, mensagens e regras financeiras
A proposta era construir uma solução capaz de controlar vigência de cobranças, executar uma régua automatizada e dar mais clareza ao acompanhamento dos recebíveis.
3. A Solução
Uma plataforma orientada à automação de cobrança
A solução foi desenvolvida com APIs em .NET, persistência em PostgreSQL, integração com WhatsApp e uma estrutura preparada para mensagens dinâmicas, resiliência e evolução contínua.
Stack do projeto
Uma base tecnológica estruturada para sustentar cobrança recorrente, automação de mensagens, flexibilidade operacional e evolução contínua da solução.
.NET 8
BackendBase das APIs responsáveis pela lógica de cobrança, recorrência e organização dos fluxos financeiros.
Minimal APIs
BackendUtilizadas para criar uma camada de exposição leve, direta e alinhada ao perfil modular da aplicação.
Carter
BackendAplicado para modularizar rotas e manter a organização dos endpoints de forma mais escalável.
PostgreSQL
DatabaseResponsável pela persistência dos dados financeiros e regras associadas à recorrência de cobrança.
WhatsApp / Evolution API
MessagingCanal usado para execução da régua de cobrança e envio automatizado de mensagens ao longo do fluxo financeiro.
Polly
IntegrationAplicado para aumentar resiliência em integrações externas com políticas de retry e maior tolerância a falhas transitórias.
Clean Architecture
ArchitectureUtilizada para manter separação de responsabilidades e apoiar a evolução do sistema com menor acoplamento.
Como o sistema foi desenhado
Uma visão das decisões de engenharia que ajudaram a estruturar a recorrência, automatizar a comunicação e preparar a plataforma para crescer com consistência.
Controle financeiro com { Vigência &
Expiração }
A aplicação foi desenhada para lidar com cobranças periódicas de forma estruturada, considerando início, recorrência, validade e encerramento de ciclos dentro da lógica central do sistema.
- Regras de vigência e expiração por contrato
- Cobranças recorrentes organizadas no domínio
public class CobrancaRecorrente : Entity<Guid>
{
public DateOnly InicioVigencia { get; private set; }
public DateOnly? FimVigencia { get; private set; }
public RecurrenceRule Recorrencia { get; private set; }
public DateOnly ProximaCobranca { get; private set; }
public bool EstaAtivaEm(DateOnly data)
{
if (data < InicioVigencia) return false;
if (FimVigencia.HasValue && data > FimVigencia.Value)
return false;
return true;
}
}public async Task<bool> SendWhatsAppMessageAsync(string jid, string text)
{
var url = $"BaseUrl/message/sendText/{InstanceName}";
var body = new {
number = jid,
options = new { delay = 1200, presence = "composing" },
text = text
};
var response = await httpClient.PostAsJsonAsync(url, body);
return response.IsSuccessStatusCode;
}Régua operacional com { WhatsApp &
Templates Dinâmicos }
O fluxo de mensagens foi pensado para permitir lembretes, avisos de vencimento e notificações de inadimplência com conteúdo configurável para diferentes etapas da jornada financeira.
- Régua de cobrança com múltiplas etapas
- Templates personalizados por contexto do fluxo
Base preparada com { Polly &
Multi-tenant Ready }
As integrações externas foram protegidas com políticas de resiliência, enquanto a estrutura da aplicação foi pensada para facilitar expansão futura sem comprometer a base existente.
- Retry em integrações críticas
- Arquitetura preparada para evolução multi-tenant
services.AddHttpClient<IEvolutionClient, EvolutionClient>()
.AddTransientHttpErrorPolicy(p => p
.WaitAndRetryAsync(4, n => TimeSpan.FromSeconds(Math.Pow(2, n))))
.AddTransientHttpErrorPolicy(p => p
.CircuitBreakerAsync(6, TimeSpan.FromSeconds(45)));Gostou do que viu?
Vamos conversar sobre como posso ajudar seu time.
Resultados da implementação
Cobrança mais estruturada
Fluxos recorrentes organizados com regras claras de vigência, recorrência e acompanhamento financeiro.
Mais automação no dia a dia
Execução de lembretes, avisos e notificações com menor dependência de ações manuais.
Comunicação mais flexível
Templates dinâmicos permitindo adaptar mensagens a diferentes etapas e cenários da régua de cobrança.
Base pronta para crescer
Arquitetura pensada para continuidade, manutenção e futura evolução da solução.
Vamos conversar sobre o seu projeto?
Se você busca uma solução bem estruturada, com clareza técnica e foco em evolução, me chame e vamos alinhar o que faz sentido para o seu contexto.
Falar no WhatsApp