Saber como automatizar WhatsApp para pequenas empresas pode ser a diferença entre perder clientes e fidelizá-los. Com a ZAP API e poucas linhas de código, é possível criar automações que economizam horas por dia — começando com trial de 7 dias grátis, sem cartão.
5 automações essenciais para qualquer PME
- Mensagem de boas-vindas: resposta instantânea ao primeiro contato
- FAQ automático: preço, horário, endereço — 80% das perguntas resolvidas
- Aviso de horário: fora do expediente, informe quando será respondido
- Confirmação de pedido/agendamento: reduz no-show
- Pós-venda: 3-7 dias após a compra, pergunte sobre a experiência
Implementação: webhook com auto-resposta
// server.js
require('dotenv').config();
const express = require('express');
const axios = require('axios');
const app = express();
app.use(express.json());
const api = axios.create({
baseURL: 'https://zap-api.tech/v1',
headers: { Authorization: 'Bearer ' + process.env.ZAP_TOKEN }
});
const INST = process.env.ZAP_INSTANCE;
const contatosConhecidos = new Set();
const FAQ = {
'preco': 'Nossos planos começam a partir de R$49/mês.',
'horario': 'Segunda a sexta, 8h às 18h. Sábados 9h às 13h.',
'endereco': 'Rua Exemplo, 123 - Centro.',
'prazo': 'Entrega em 3 a 7 dias úteis.',
'pagamento': 'Pix, cartão (até 12x), boleto e transferência.'
};
function detectarIntencao(msg) {
const t = msg.toLowerCase().normalize('NFD').replace(/[\u0300-\u036f]/g, '');
if (t.match(/pre[cç]o|valor|quanto/)) return 'preco';
if (t.match(/hora|funciona|abre/)) return 'horario';
if (t.match(/endere|onde fica/)) return 'endereco';
if (t.match(/prazo|entrega/)) return 'prazo';
if (t.match(/pagamento|pix|cartao/)) return 'pagamento';
return null;
}
function dentroDoHorario() {
const h = new Date().getHours();
const d = new Date().getDay();
if (d === 0) return false;
if (d === 6) return h >= 9 && h < 13;
return h >= 8 && h < 18;
}
app.post('/webhook', async (req, res) => {
res.json({ ok: true });
const { event, data } = req.body;
if (event !== 'message.received' || data.fromMe) return;
const phone = data.phone;
const texto = data.body || '';
// Boas-vindas
if (!contatosConhecidos.has(phone)) {
contatosConhecidos.add(phone);
await api.post(`/instances/${INST}/send`, {
phone, type: 'text',
body: 'Olá! Bem-vindo(a)! Posso ajudar com preços, horário, endereço e mais. Digite sua dúvida!'
});
return;
}
// FAQ
const intencao = detectarIntencao(texto);
if (intencao) {
await api.post(`/instances/${INST}/send`, { phone, type: 'text', body: FAQ[intencao] });
return;
}
// Fora do horário
if (!dentroDoHorario()) {
await api.post(`/instances/${INST}/send`, {
phone, type: 'text',
body: 'Recebemos sua mensagem! Atendimento: seg-sex 8h-18h, sáb 9h-13h. Responderemos em breve!'
});
}
});
app.listen(3000);
Usando sem programar: no-code
- n8n: gratuito e self-hosted, conecte webhook da ZAP API com lógica visual
- Make (Integromat): cenários com HTTP module
- Zapier: "Webhooks by Zapier" + módulo HTTP
Quanto custa?
- R$49/mês por instância (1a e 2a)
- A partir de R$29/mês (3a em diante)
- Sem cobrança por mensagem
- 7 dias grátis sem cartão
FAQ
- Preciso saber programar?
Não necessariamente. Use ferramentas no-code ou contrate um freelancer para o setup inicial. - Corro risco de ban?
Se respeitar boas práticas (sem spam, com opt-out, throttle adequado), o risco é mínimo. - Uma instância é suficiente?
Para a maioria das PMEs, sim. Suporta centenas de conversas simultâneas. - Posso usar meu número atual?
Sim. Conecta via QR Code ou pairing code. - E se o cliente quiser falar com humano?
Mensagens sem match no FAQ são direcionadas para a equipe. Veja o guia de atendimento.