Como funciona o failover entre fornecedores
Equipe AltiviaCloud · 5 de setembro de 2026 · 3 min de leitura
O que acontece por dentro quando você pede um número, por que uma tentativa falha sem ninguém ter caído, e o limite que o failover não cobre — nem deveria.
Nenhum fornecedor de numeração tem estoque de tudo, o tempo todo, com o mesmo preço. Quem integra um só descobre isso no dia em que o painel diz "sem número disponível" e o processo para. Failover é o que transforma essa falha em um detalhe que ninguém percebe.
O que acontece quando você pede um número
Do seu lado é uma chamada. Por dentro:
- Consulta de preço e estoque em cada fornecedor que atende aquele par país+serviço.
- Ordenação pelo custo naquele instante, considerando quem tem estoque de verdade.
- Tentativa no primeiro. Se responder com número, acabou.
- Se falhar, o próximo. Sem devolver erro para você, e sem cobrar pela tentativa que não deu certo.
- Se todos falharem, aí sim o erro sobe — e nada é debitado.
O ganho não é só disponibilidade. Como a ordenação é por custo no momento da compra, o mesmo mecanismo que protege da queda também melhora o preço.
Por que uma tentativa falha
Quase nunca é "o fornecedor caiu". As causas comuns são mais chatas:
Estoque acabou entre a consulta e a compra. O número que aparecia disponível foi levado por outra pessoa nos milissegundos entre as duas chamadas. Numa faixa disputada isso é rotina.
O preço mudou. Você pediu com um teto de custo e o valor subiu. Melhor tentar o próximo do que comprar acima do combinado.
Timeout. O fornecedor demorou além do aceitável. Continuar esperando é pior do que tentar outro.
Erro de mapeamento. Aquele fornecedor não conhece o serviço pedido com o mesmo identificador. É de configuração, não de rede.
Por que a ordem importa mais que a lista
Ter três fornecedores não ajuda se você tenta sempre na mesma ordem fixa. Duas regras mudam o resultado:
Ordene por custo no instante da compra, não por uma tabela guardada. Preço de faixa muda ao longo do dia — é a mesma volatilidade que faz o preço final variar.
Pule quem está falhando. Se um fornecedor errou as últimas tentativas seguidas, tirá-lo da fila por alguns minutos economiza o tempo de espera de todas as próximas. É o mesmo raciocínio do circuit breaker: parar de bater numa porta que não abre.
O limite do failover
Failover cobre falha de fornecimento. Não cobre falha de entrega.
Se o serviço de destino marcou a faixa inteira daquele país, todos os fornecedores vão vender um número que não recebe código. A compra funciona, o SMS não chega, e nenhum failover resolve — porque não houve erro nenhum para disparar a troca.
Esse caso se resolve do outro lado: trocando o país, não o fornecedor. Saber distinguir os dois evita horas procurando problema no lugar errado.
O que isso significa para quem integra
Na prática, três coisas:
Uma chamada só. Você pede país e serviço; qual fornecedor atendeu é detalhe interno. Não precisa manter credencial, formato de resposta nem tratamento de erro de cada um.
Tentativa que falha não custa. Você paga pelo número entregue, não pela busca.
Erro só quando acabou mesmo. Se subiu erro para você, todos os caminhos foram tentados. Isso muda como você trata a resposta: um erro aqui não é candidato a retentativa imediata — espere o intervalo indicado antes de tentar de novo.
Se você fosse construir por conta
Vale saber o tamanho do que está sendo terceirizado: credencial e renovação por fornecedor, tradução de identificadores de país e serviço entre APIs que não combinam, normalização de formato de resposta, política de timeout, contabilidade de custo por tentativa, e reconciliação quando um fornecedor confirma uma compra que o seu lado já deu como perdida.
Nada disso é difícil isoladamente. Junto, é um sistema — e é uma decisão de comprar ou construir, não um detalhe de implementação.
É esse o mecanismo por trás dos números virtuais da AltiviaCloud: uma chamada só, com mais de um fornecedor atrás dela.