Lembretes no WhatsApp para reduzir inadimplência
Publicado em
Boleto esquecido e fatura que passa do vencimento por distração são comuns. Um lembrete no WhatsApp chega no aparelho que o cliente já tem na mão. Este texto mostra como montar isso a partir do seu sistema.
Não prometemos um percentual de recuperação: o resultado depende do seu público, do texto e do momento do envio. Teste com uma parte da base e compare.
Um fluxo simples
- Todo dia, num horário fixo, o seu sistema busca as cobranças que vencem em 3 dias, hoje ou venceram ontem.
- Para cada uma, monta uma mensagem com o nome do cliente, o valor e a forma de pagar.
- Envia pela API e guarda o
iddevolvido. - Registra o resultado quando o webhook
message.statuschegar.
Para o passo 4, o tutorial Receber mensagens por webhook mostra como montar o receptor.
O envio
A rota é POST /v1/instances/{instanceId}/messages/text. O corpo leva o telefone (to) e o texto (text). O token da instância vai no cabeçalho Authorization.
curl -X POST https://api.zap.nigora.com.br/v1/instances/INSTANCIA_ID/messages/text \ -H "Authorization: Bearer TOKEN" \ -H "Content-Type: application/json" \ -d '{ "to": "5511999999999", "text": "Olá, Marina! Sua fatura de R$ 149,90 vence amanhã. Pague pelo Pix: 00020126... Se já pagou, ignore esta mensagem." }'A API responde 202 na hora, com { "id": "…", "status": "queued" }: a mensagem entra na fila e sai em seguida. Em Node.js (18 ou mais novo, sem pacotes extras), um lembrete fica assim:
const { NIGORA_INSTANCIA_ID: instanciaId, NIGORA_TOKEN: token } = process.env
async function enviarLembrete(telefone, nome, valor, vencimento) { const texto = `Olá, ${nome}! Sua fatura de ${valor} vence em ${vencimento}. Se já pagou, ignore esta mensagem.` const resposta = await fetch(`https://api.zap.nigora.com.br/v1/instances/${instanciaId}/messages/text`, { method: 'POST', headers: { Authorization: `Bearer ${token}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ to: telefone, text: texto }), }) if (!resposta.ok) throw new Error(`Falha ${resposta.status}: ${await resposta.text()}`) return (await resposta.json()).id}
console.log(await enviarLembrete('5511999999999', 'Marina', 'R$ 149,90', '10/11'))Salve como lembrete.mjs, defina NIGORA_INSTANCIA_ID e NIGORA_TOKEN no ambiente e rode com node lembrete.mjs. Os tutoriais completos, com tratamento de erros, estão em PHP e Node.js.
Cuidados que valem mais do que o código
- Só clientes com cobrança em aberto. Lembrete de quem já pagou irrita e gera denúncia.
- Uma mensagem por cobrança, não uma por dia. Cobrar toda hora faz o cliente bloquear você.
- Tom de aviso, não de ameaça. “Sua fatura vence amanhã” funciona melhor do que texto de cobrança dura.
- Deixe sair. Ligue o descadastro: quem responde
SAIRdeixa de receber, e a API recusa novos envios para ele. Combine outro canal de cobrança para esse cliente. - Dê o caminho do pagamento na própria mensagem, como o código Pix ou o link, e um jeito de falar com uma pessoa.
- Respeite o horário. Evite madrugada e domingo.
Mensagens automáticas têm risco de bloqueio do número. Leia como reduzir o risco de bloqueio antes de colocar o fluxo em produção.
Para testar, a Nigora Zap API tem 7 dias grátis, sem cartão.