A oficina perde tempo em dois pontos, e nenhum deles é na bancada. O primeiro é o telefone tocando o dia inteiro com a mesma pergunta: "o carro ficou pronto?". Cada ligação dessas tira alguém do serviço. O segundo é pior: o orçamento parado. O diagnóstico saiu, a peça está na prateleira do fornecedor, o mecânico está livre, e o elevador continua ocupado por um veículo que ninguém autorizou a consertar.
Os dois se resolvem pelo mesmo canal. Uma API de WhatsApp deixa o seu sistema de OS falar com o cliente na hora em que a informação existe. O zapon expõe uma API REST curta — header token, JSON entrando e saindo — que o software da oficina chama como chamaria qualquer serviço. Abaixo: o fluxo do pátio, os endpoints em cURL e Node, o evento que chega quando o cliente aprova e o que gravar desse aceite.
A dor da oficina: o telefone que toca e o elevador que não gira
Por que a oficina passa o dia respondendo se o carro ficou pronto?
Porque o cliente não tem outro jeito de saber. Ele deixou o veículo, ouviu "a gente te avisa" e ficou sem previsão. Na dúvida, liga, e liga de novo à tarde. Cada ligação custa um mecânico interrompido e um consultor técnico ocupado com informação que o sistema já tem pronta.
São duas perdas diferentes, tratadas quase sempre como uma só:
- A ligação de status. Barulho evitável. O cliente não quer conversar: quer a etapa e a data. Quando recebe isso antes de precisar pedir, a ligação não acontece.
- A espera de aprovação. Dinheiro parado. Enquanto o orçamento não volta, o box está ocupado, a peça não é comprada e a fila de amanhã empurra a de depois.
Por que orçamento parado custa mais que desconto dado?
Desconto é uma conta que você enxerga. Espera de aprovação é uma conta que ninguém lança: o elevador ocupado por um veículo sem autorização não aparece em relatório nenhum, mas impede a entrada do próximo. O prejuízo é a hora de mão de obra que não foi vendida naquele box, somada ao atraso que se espalha para trás no pátio.
A aprovação do orçamento: por que ela decide o dia da oficina
Por que aprovar orçamento por mensagem é mais rápido que por telefone?
Porque a mensagem não exige as duas pessoas livres no mesmo minuto. A ligação exige: o consultor liga quando o diagnóstico fica pronto, o cliente está dirigindo, e o orçamento passa a tarde em rodízio de recado. Por escrito, ele lê peça, mão de obra e prazo quando puder, toca em um botão, e a aprovação cai no sistema amarrada ao número da OS.
O valor por escrito ainda reduz a discussão na retirada. Com peça e mão de obra separadas na mensagem, o cliente sabe o que aprovou, e o "achei que era só a troca de óleo" some.
Como versionar o orçamento para o botão nunca aprovar o valor errado?
Orçamento de oficina é revisto: o mecânico abre o conjunto e acha mais coisa, o fornecedor muda a cotação da peça. Se o cliente ainda tem na conversa o orçamento antigo e toca naquele botão, chega uma aprovação de um valor que não existe mais.
A solução é numerar. Cada revisão vira uma versão, e o identificador do botão carrega a OS e a versão: um id como os1487|v2|aprovar diz exatamente o que foi aprovado. O receptor compara a versão do botão com a vigente no banco; se forem diferentes, não registra o aceite, avisa que o valor mudou e reenvia o orçamento atual.
Quantas opções o orçamento deve oferecer?
Três, que é também o limite de botões do WhatsApp: aprovar, não aprovar e falar antes. A terceira é a que quase todo mundo esquece. Quem quer negociar, parcelar ou tirar um item precisa de um caminho que não seja o silêncio, ou você fica sem saber se aquilo é recusa ou dúvida.
O que a oficina precisa ter para começar
O que preciso para avisar o cliente sobre a OS automaticamente?
Três coisas: um número de WhatsApp da oficina, uma conta no zapon com esse número conectado por QR Code ou código de pareamento, e um sistema que saiba em que etapa cada OS está. Não é preciso servidor próprio, conta na Meta, aprovação de template nem aplicativo instalado no celular do balcão.
- Um número. Pode ser o mesmo da fachada: a API opera esse número, não o substitui, e o balcão continua atendendo no aparelho. Nunca o celular pessoal do gerente.
- Uma conexão no zapon. Cada conexão é um número e tem o seu
token, credencial de todas as chamadas. Conecta-se lendo o QR Code no painel ou por código de pareamento.
- Quem dispara. Ou o seu sistema de OS chama os endpoints quando a etapa muda, ou uma ferramenta de automação lê a tabela de ordens de serviço e chama a API por HTTP.
E se o sistema de OS for fechado e não tiver integração?
Ainda dá. A API precisa de telefone e texto, então basta ler os dados por fora: exportação diária, consulta ao banco, relatório de ordens abertas. O trabalho não está na API, está em descobrir onde o seu sistema guarda a etapa e a data prevista de entrega.
O fluxo da oficina, da entrada do veículo à retirada
Como funciona o fluxo de comunicação da OS ponta a ponta?
Cinco etapas: (1) o veículo é recebido e o cliente recebe o número da OS e o prazo do diagnóstico; (2) o orçamento sai com valor de peça, mão de obra, prazo e três botões; (3) mudanças de etapa viram mensagem apenas quando alteram a data de entrega; (4) o veículo pronto gera o aviso de retirada com valor final e horário; (5) o webhook entrega a resposta e o seu sistema grava o aceite e libera a OS para execução.
Cada passo tem uma função distinta. Repetir a mesma mensagem em etapas diferentes é o caminho mais curto para o cliente parar de ler todas.
1. O que enviar quando o veículo entra na oficina?
A primeira mensagem confirma a entrada e ancora a expectativa. Ela leva o número da OS, o que o cliente relatou com as palavras dele ("barulho na suspensão do lado direito") e o prazo para o diagnóstico ficar pronto. Esses três elementos substituem a primeira ligação, aquela de "chegou tudo certo?", e criam uma referência para todas as mensagens seguintes. Repetir o relato tem um segundo efeito: se a recepção anotou errado, o cliente corrige agora, antes do scanner, e não depois do serviço feito.
2. Como mandar o orçamento com aprovação em um toque?
É o passo que sustenta a página inteira. Com o diagnóstico pronto, sai uma mensagem com valor da peça, valor da mão de obra, prazo estimado de entrega e três botões: aprovar, não aprovar, falar antes. O id de cada botão carrega a OS e a versão do orçamento, porque um orçamento revisado não pode ser aprovado com o botão do orçamento antigo. Se a oficina emite o orçamento em PDF, ele cabe no envio de documento — uma das 13 formas de envio da API —, mas mande o resumo em texto junto: notificação de PDF, muita gente não abre.
3. Quando avisar mudança de etapa sem virar mensagem demais?
Peça chegou, peça atrasou, serviço iniciado, veículo em teste. A regra é uma só e vale escrever no código: status que não muda a data de entrega não vira mensagem. Cinco avisos por dia treinam o cliente a ignorar todos, inclusive o que importa. Quando a data prevista muda — e principalmente quando atrasa — aí sim a mensagem é obrigatória, com a nova data e o motivo em uma linha. Cliente avisado de atraso reclama; cliente não avisado liga, reclama e desconfia.
4. Como avisar que o veículo está pronto para retirada?
Este é o aviso que apaga a maior parte das ligações. Ele leva o valor final, o horário até o qual a oficina fica aberta e as formas de pagamento aceitas. Sem o valor, o cliente liga para perguntar quanto é; sem o horário, ele aparece dez minutos depois de fechar; sem a forma de pagamento, descobre no balcão que não passa o cartão que ele trouxe. As três informações juntas transformam uma retirada em uma retirada sem ligação nenhuma.
5. O que fazer com a resposta e o que registrar dela?
O webhook entrega a aprovação ao seu sistema, e é aí que o registro acontece: o Id da mensagem, o carimbo de tempo, o texto exato que o cliente enviou ou o rótulo do botão que ele tocou, e a versão do orçamento a que aquele aceite se refere. Com o aceite gravado, a OS é liberada para execução e a compra da peça pode ser disparada. Depois da retirada, entra a régua de retorno: revisão por data ou por quilometragem estimada, que é assunto de marketing e pede consentimento — o tema volta mais abaixo.
Os endpoints que a oficina usa na prática
Quais endpoints da API do zapon uma oficina precisa?
Três resolvem o fluxo inteiro: POST /chat/send/text para os avisos de entrada, etapa e retirada, POST /chat/send/buttons para o orçamento com aprovação em um toque e POST /user/check para conferir o telefone do cadastro antes de disparar. Todos usam a base https://api.zapon.dev e o header token. São 49 endpoints publicados, todos com schema, mas o pátio vive nesses três.
A autenticação é um header só, token, copiado da conexão no painel: não é Authorization, não é Bearer, não há OAuth. Trate-o como a chave do cofre — quem o tem envia mensagens em nome da oficina.
Como avisar a entrada do veículo pela API?
Um POST em /chat/send/text com dois campos: Phone, o número em formato internacional só com dígitos, e Body, o texto.
entrada do veículo — cURL
curl -X POST https://api.zapon.dev/chat/send/text \
-H "token: SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"Phone": "5511999999999",
"Body": "Marcos, recebemos o seu veículo. OS 1487.\n\nRelato: barulho na suspensão dianteira direita em lombada.\nDiagnóstico previsto para hoje até as 15h.\n\nAssim que o scanner e a inspeção terminarem, mandamos o orçamento por aqui para você aprovar."
}'
A resposta traz o identificador da mensagem no WhatsApp:
resposta da API
{
"code": 200,
"success": true,
"data": {
"Details": "Sent",
"Id": "7C41A9D0E5B23F8817A6C2D9",
"Timestamp": "2026-04-08T08:41:17-03:00"
}
}
Grave esse Id na OS. Ele prova qual mensagem saiu, em que momento, e impede que uma rotina rodada duas vezes avise a mesma coisa duas vezes.
Como enviar o orçamento com botões de aprovação?
O /chat/send/buttons envia botões de resposta rápida, cada um com um id definido por você e um rótulo curto. É esse id que volta no webhook quando o cliente toca. Repare que ele carrega três pedaços separados por barra: a OS, a versão do orçamento e a intenção. Além da resposta rápida, o mesmo endpoint monta botão que abre um link ("type": "cta_url"), botão que abre o discador ("type": "cta_call") e botão que copia um código ("type": "copy") — e os tipos convivem na mesma mensagem. O toque em resposta rápida volta no webhook; os outros três agem no aparelho de quem recebe.
orçamento com botões
POST https://api.zapon.dev/chat/send/buttons
token: SEU_TOKEN
{
"Phone": "5511999999999",
"Body": "OS 1487 — orçamento (versão 2)\n\nDiagnóstico: bandeja e bieletas do lado direito com folga.\nPeças: R$ 640,00\nMão de obra: R$ 380,00\nTotal: R$ 1.020,00\n\nPrazo: pronto em 2 dias úteis após a aprovação, com alinhamento incluso.\nGarantia de 90 dias para o serviço.",
"Footer": "Oficina Bandeirantes",
"Buttons": [
{ "id": "os1487|v2|aprovar", "text": "Aprovar" },
{ "id": "os1487|v2|recusar", "text": "Não aprovar" },
{ "id": "os1487|v2|falar", "text": "Falar antes" }
]
}
O rótulo é curto por natureza do WhatsApp — uma ou duas palavras. Toda a informação vai no Body; o botão só carrega a decisão. Se a oficina quiser oferecer o orçamento fatiado, com o cliente escolhendo entre fazer só o essencial agora ou o pacote completo, o menu em lista do /chat/send/list comporta mais opções que os três botões.
Como avisar mudança de etapa só quando a data de entrega muda?
A rotina que faz isso é curta, e o valor dela está no que ela não envia. Ela compara a data prevista anterior com a nova antes de escrever qualquer coisa:
aviso de etapa — Node
// etapas.js — chamado toda vez que uma OS muda de etapa
const API = "https://api.zapon.dev";
const TOKEN = process.env.ZAPON_TOKEN;
async function enviarTexto(phone, body) {
const r = await fetch(`${API}/chat/send/text`, {
method: "POST",
headers: { "token": TOKEN, "Content-Type": "application/json" },
body: JSON.stringify({ Phone: phone, Body: body })
});
const json = await r.json();
if (!r.ok || !json.success) throw new Error(json.error || `HTTP ${r.status}`);
return json.data.Id;
}
async function mudouEtapa(os, etapa, entregaAnterior, entregaNova, motivo) {
if (os.cliente.optOut) return; // pediu para não receber
if (entregaAnterior === entregaNova) {
return registrarEtapa(os.id, etapa); // muda no sistema, não no WhatsApp
}
const atrasou = new Date(entregaNova) > new Date(entregaAnterior);
const texto = atrasou
? `OS ${os.numero}: a entrega passou de ${entregaAnterior} para ${entregaNova}. ` +
`Motivo: ${motivo}. Qualquer coisa, é só responder por aqui.`
: `OS ${os.numero}: boa notícia, seu veículo deve ficar pronto em ${entregaNova}.`;
const id = await enviarTexto(os.cliente.telefone, texto);
await registrarEnvio(os.id, "mudanca_entrega", id); // guarda o Id do aviso
await registrarEtapa(os.id, etapa);
}
Duas linhas fazem o trabalho pesado. A comparação de datas descarta "peça chegou" quando o prazo continua o mesmo — o cliente não precisa saber da logística interna, precisa saber quando busca o carro. E o optOut checado no começo garante que quem pediu para não receber não receba, em nenhuma rotina.
Como conferir se o telefone do cadastro tem WhatsApp?
Cadastro de oficina é o mais bagunçado que existe: telefone comercial de dez anos atrás, número do filho, dígito faltando. Mandar orçamento para um número morto significa esperar uma aprovação que nunca vem. O POST /user/check recebe uma lista e diz quais números têm conta no WhatsApp.
checar o telefone do cadastro — cURL
curl -X POST https://api.zapon.dev/user/check \
-H "token: SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "Phone": ["5511999999999", "5511888888888"] }'
// resposta
{ "code": 200, "success": true, "data": { "Users": [
{ "Query": "5511999999999", "IsInWhatsapp": true, "JID": "[email protected]" },
{ "Query": "5511888888888", "IsInWhatsapp": false, "JID": "" }
] } }
Rode essa checagem na abertura da OS, com o veículo ainda no balcão. Se o número não tiver WhatsApp, o consultor pede outro na hora — bem mais fácil que descobrir isso à tarde, com o carro no elevador e o orçamento sem resposta. Além do trio principal, a API tem 13 formas de envio: texto, imagem, áudio, vídeo, documento, sticker, localização, contato, enquete, lista, botões, template e edição de mensagem já enviada, mais reação, "digitando", marcar como lido e histórico. Para oficina, os mais úteis fora do trio são imagem, para a foto da peça gasta, e documento, para o PDF do orçamento.
A resposta do cliente: webhook, versão e liberação da OS
Como recebo no meu sistema a aprovação do orçamento?
Cada conexão tem um webhook próprio: você cadastra no painel a URL do seu sistema e escolhe os eventos. A partir daí, toda mensagem que chega no número é entregue como um POST nessa URL, com o conteúdo inteiro no corpo — telefone, identificador, carimbo de tempo, texto e, quando é resposta de botão, o id que você definiu, com a OS e a versão dentro dele.
O ciclo tem três partes que não se confundem: o webhook entrega o evento, a sua regra interpreta e a ação acontece no seu sistema. A API não sabe o que é uma ordem de serviço; sabe que uma mensagem chegou naquele número.
Qual é o formato do evento quando o cliente responde?
O corpo traz o tipo do evento e a mensagem completa. Assim chega quem escreveu a resposta em texto:
webhook — mensagem recebida
{
"type": "Message",
"event": {
"Info": {
"ID": "3EB0F41C8A97D2E6B105",
"Chat": "[email protected]",
"Sender": "[email protected]",
"IsFromMe": false, "IsGroup": false,
"PushName": "Marcos Ribeiro",
"Timestamp": "2026-04-08T15:22:41-03:00"
},
"Message": { "conversation": "pode fazer" }
}
}
// quando ele toca no botão do orçamento, muda só o bloco Message:
"Message": { "buttonsResponseMessage": {
"selectedButtonID": "os1487|v2|aprovar",
"Response": { "SelectedDisplayText": "Aprovar" }
} }
Dois detalhes que economizam horas de depuração: o corpo pode chegar como JSON puro ou como formulário codificado, com o JSON dentro de um campo — aceite os dois. E o que o próprio número envia também gera evento, com IsFromMe igual a true: ignore, ou o consultor respondendo um cliente vai acionar a sua automação.
Como o receptor valida a versão e libera a OS?
O receptor faz quatro coisas em ordem: descarta o que não interessa, confere se a versão do orçamento ainda é a vigente, grava o aceite e age. Se a versão estiver velha, ele não registra nada — avisa e reenvia o orçamento atual.
receptor do webhook — Node/Express
app.post("/whatsapp/eventos", express.json(), async (req, res) => {
res.sendStatus(200); // responda primeiro, processe depois
const ev = req.body?.event ?? req.body, info = ev?.Info ?? {};
if (info.IsFromMe || info.IsGroup) return; // o que a oficina enviou, e grupos, fora
if (await jaProcessado(info.ID)) return; // o mesmo evento pode chegar 2x
const telefone = String(info.Chat || "").split("@")[0];
const botao = ev?.Message?.buttonsResponseMessage?.selectedButtonID ?? "";
const rotulo = ev?.Message?.buttonsResponseMessage?.Response?.SelectedDisplayText ?? "";
const texto = (ev?.Message?.conversation ??
ev?.Message?.extendedTextMessage?.text ?? "").trim();
if (!botao) return filaDoConsultor(telefone, texto); // texto livre é assunto de gente
const [osId, versao, acao] = botao.split("|");
const os = await buscarOS(osId);
if (!os) return filaDoConsultor(telefone, texto);
// orçamento revisado: o botão antigo não vale mais
if (versao !== os.orcamento.versaoVigente) {
await enviarTexto(telefone,
`O orçamento da OS ${os.numero} foi revisado depois dessa mensagem. ` +
`Vou reenviar o valor atual para você conferir antes de aprovar.`);
return reenviarOrcamento(os); // manda a versão vigente com botões
}
await gravarAceite({ // o registro do aceite
osId: os.id, versao, acao,
mensagemId: info.ID, carimbo: info.Timestamp,
texto: rotulo, telefone, pushName: info.PushName
});
if (acao === "aprovar") {
await liberarParaExecucao(os.id); // libera o box e pede a peça
return enviarTexto(telefone,
`Aprovação registrada, OS ${os.numero}. Já pedimos a peça e começamos hoje.`);
}
if (acao === "recusar") {
await marcarRecusado(os.id); // veículo sai do box, vai para o pátio
return enviarTexto(telefone,
`Certo, não vamos executar o serviço. O veículo fica disponível para retirada.`);
}
await filaDoConsultor(telefone, `Quer falar sobre a OS ${os.numero}`);
return enviarTexto(telefone, "Certo. Um consultor te chama em instantes.");
});
E quando o cliente escreve qualquer outra coisa?
Ele vai escrever, e muito: "dá para parcelar em três?", "tem peça original?", "consigo buscar sábado?". Não tente responder isso automaticamente. O que a regra não reconhece vira pendência para o consultor técnico tratar, e a conversa já está no WhatsApp da oficina — ele responde no próprio aplicativo, como sempre fez. O papel da automação é sinalizar que aquela conversa espera resposta, não conduzir a negociação.
O registro do aceite: o que guardar quando o cliente aprova
O que preciso guardar quando um orçamento é aprovado por mensagem?
Cinco campos, todos disponíveis no evento: o identificador da mensagem, o carimbo de tempo, o texto exato que o cliente enviou ou o rótulo do botão que ele tocou, a versão do orçamento a que o aceite se refere e o número de quem enviou. Guardados juntos e amarrados à OS, eles reconstroem a decisão meses depois, com valor e data.
Repare no que faz diferença: não basta salvar "aprovado em 08/04". O registro útil diz o que foi aprovado. Sem a versão do orçamento, você tem um aceite solto que não prova valor nenhum — e é exatamente o valor que costuma ser questionado na retirada. Guarde também o Id da mensagem em que o orçamento saiu, para ter os dois lados da conversa: o que a oficina mandou e o que o cliente respondeu.
Esse registro substitui a ordem de serviço assinada?
Aqui é preciso ser direto: esta página é técnica e não dá orientação jurídica. O que dá para afirmar é o lado técnico — o evento chega com identificador, carimbo de tempo, número de origem e conteúdo, e isso forma um registro consistente do que foi respondido e quando. O que esse registro significa em termos contratuais depende do que o contrato de prestação de serviço da sua oficina prevê, e disso quem cuida é o advogado que atende a empresa. A solidez técnica do registro não substitui esse documento nem dispensa a conversa com quem entende do assunto.
Por quanto tempo guardar essas mensagens?
Pelo menos pelo prazo da garantia do serviço, porque é nesse período que a discussão volta. Quando o cliente retorna dizendo que o barulho não passou, o histórico mostra o que foi aprovado, o que ficou de fora do orçamento e o que ele decidiu não fazer. Guarde no banco do sistema, junto da OS — não conte com o histórico do aparelho, que some quando o celular do balcão é trocado.
Consentimento, horário e uso responsável
Posso mandar promoção de revisão para toda a base de clientes?
Não do mesmo jeito que se avisa sobre uma OS. Falar do veículo que está na oficina é comunicação esperada: o cliente entregou o carro e o telefone justamente para isso. Campanha de troca de óleo, revisão de férias e oferta de pneu são marketing, e marketing exige consentimento registrado, com data, e um descadastro que funcione de verdade.
- Operacional é o que o cliente contratou. Entrada do veículo, orçamento, mudança de prazo, veículo pronto, valor final. Ele espera essas mensagens e fica sem elas se você não mandar.
- Divulgação é outra coisa. A régua de retorno por data ou por quilometragem estimada é útil para a oficina, mas é oferta. Peça o aceite no balcão, registre com data e ofereça a saída em toda mensagem desse tipo.
- Cuidado com o que aparece na tela travada. A notificação mostra o texto antes de qualquer senha. Mande o valor, que é informação necessária, mas não componha a mensagem juntando "veículo pronto" com placa, endereço da oficina e a informação de que o carro está sozinho no pátio até amanhã. Isso é útil demais para quem não deveria estar lendo. A placa, quando não for indispensável, fica de fora: é dado do cliente e o número da OS já identifica o serviço.
- Horário. Oficina abre cedo, mas orçamento enviado às 6h50 não é lido — cai na tela e some antes de o cliente acordar direito. Concentre orçamento e aviso de retirada no horário comercial, quando ele consegue responder e falar com o consultor se quiser. E nunca cobre aprovação de madrugada: cobrança fora de hora vira bloqueio do número.
- Descadastro que funciona. Quem pede para parar precisa parar de receber em todas as rotinas, não só na de campanha. Grave num campo do cadastro e faça toda rotina consultá-lo antes de enviar. O pedido chega em qualquer palavra, então alguém precisa olhar a fila de exceções todo dia.
Sobre bloqueio de número, sem promessa mágica. Mensagem não solicitada aumenta o risco: quando muita gente denuncia ou bloqueia um número, o WhatsApp age. Esse risco existe em qualquer API — inclusive na oficial da Meta — e não pode ser eliminado, só reduzido com boas práticas: falar com quem deixou o carro na sua oficina, manter volume e ritmo compatíveis com o tamanho do pátio, responder quem responde e tirar da lista quem pediu para sair. Disparo de campanha para uma base fria de placas antigas é o caminho mais rápido para perder o número que está pintado na fachada — e ele não volta. Quem promete que o número nunca será bloqueado não está sendo honesto.
Preço, conexão e o que esperar do painel
Quanto custa para uma oficina com um número?
R$ 27 por mês por número conectado, sem cobrança por mensagem: o valor não muda se a oficina mandar 30 ou 3.000 mensagens no mês. O limite não está na fatura, está no ritmo: cada número conectado envia até 300 mensagens por dia, teto que existe para o WhatsApp não confundir o aviso de OS pronta com disparo em massa e banir o número da oficina. O teste é de 14 dias sem cartão e a contagem só começa na primeira conexão — dá para criar a conta, escrever a integração com o sistema de OS e só depois conectar o número.
Essa previsibilidade é o que torna o fluxo viável para oficina pequena. São quatro ou cinco mensagens por OS, e com cobrança por mensagem o custo cresceria junto com o movimento até alguém decidir cortar o aviso de retirada — justamente o que segura o telefone quieto. Com duas unidades, é uma conexão por unidade, cada uma com o seu token, e o seu sistema escolhe de qual número a mensagem sai trocando o header. Vale o mesmo raciocínio para separar o número do balcão do número do consultor técnico, se a oficina trabalhar assim.
Como sei que a conexão continua de pé?
O painel mostra o estado de cada conexão e atualiza a cada 10 segundos enquanto a página está aberta. Para não depender de alguém olhar a tela, assine os eventos de conexão no seu webhook: Disconnected avisa a queda e LoggedOut avisa que o número precisa ler o QR Code de novo. E quando uma chamada de envio falhar, registre numa lista visível e faça alguém olhar essa lista todo dia. Orçamento que não saiu precisa virar tarefa do consultor, não silêncio — porque do lado de cá parece enviado, e do lado do cliente parece que a oficina sumiu.
Perguntas frequentes
A aprovação pelo WhatsApp vale como autorização do serviço?
Tecnicamente, o aceite chega com identificador da mensagem, carimbo de tempo, número de origem e o texto exato, e isso forma um registro consistente do que o cliente respondeu e quando. O peso contratual disso depende do que o contrato de prestação de serviço da sua oficina prevê, e essa avaliação é do advogado que atende a empresa. Esta página é técnica e não dá orientação jurídica.
Dá para mandar o orçamento em PDF em vez de texto?
Dá: o envio de documento é uma das 13 formas de envio da API. O melhor resultado, porém, vem da combinação: o resumo em texto na própria mensagem, com peça, mão de obra, total e prazo, e o PDF como anexo para quem quiser o detalhe. Muita gente não abre anexo pelo celular, e um orçamento que não é aberto não é aprovado.
O cliente não responde ao orçamento. Qual régua usar?
Uma lembrança no fim do mesmo dia e outra na manhã seguinte, e depois disso o assunto vira ligação do consultor técnico. Insistir por mensagem passa de cobrança a incômodo rápido. Se em 48 horas não houver resposta, trate como decisão pendente de verdade: tire o veículo do box, avise que ele está no pátio aguardando autorização e libere o elevador para a próxima OS.
Como avisar que a peça atrasou sem parecer desculpa?
Com data nova e motivo em uma linha, mandado assim que a informação existe. O que soa a desculpa é o aviso que chega no dia da entrega prometida, não o motivo em si. Diga o que aconteceu, diga a nova data e não prometa uma data que dependa de confirmação do fornecedor — é melhor dar um prazo maior e entregar antes do que remarcar duas vezes.
O carro está pronto e o cliente não busca. O que mandar?
Depois do aviso de retirada, uma lembrança no dia seguinte com o horário de funcionamento resolve a maioria dos casos. Se a oficina cobra estadia depois de um prazo, isso precisa estar dito antes, no orçamento, e ser repetido na mensagem de veículo pronto. Cobrança de pátio que aparece só na hora de pagar vira discussão no balcão, e a mensagem existe justamente para evitar isso.
Tenho duas unidades e mais de um consultor. Como organizar?
Uma conexão por unidade, cada uma com o seu token e o seu webhook, para que o cliente sempre responda ao número da unidade onde o carro está. Os consultores compartilham esse número: a automação manda os avisos e a distribuição por consultor acontece no seu sistema, que sabe de quem é cada OS e coloca a pendência na fila certa.
Quanto custa, qual é o teto diário de mensagens e dá para testar?
R$ 27 por mês por número conectado, sem cobrança por mensagem, com teto de 300 mensagens por dia em cada número conectado — proteção do número, não pacote de venda. O teste é de 14 dias sem cartão e só começa a contar quando você conecta o primeiro número, então dá para criar a conta, integrar com o sistema de OS com calma e conectar o número só no dia do primeiro teste real.