202) e que falhou depois, com status FAILED. Se a chamada foi recusada na hora (4xx/5xx), veja Erros.
O erro diz de quem é o problema: template, conta, destinatário ou provedor. Descubra isso primeiro.
Onde ver o motivo
Cada mensagem guarda o motivo da falha.FAILED, o campo reason traz o motivo traduzido. O webhook message.status_updated traz o mesmo motivo em data.errorDetails. No painel, Logs mostra o mesmo, com filtro por status.
O formato do motivo depende do provedor do número:
- Números no provedor atual (Meta via Gupshup): texto corrido com o que aconteceu e o que fazer, sem código. Ex.: “O nome de exibição do seu número ainda não foi aprovado pela Meta. … Peça a aprovação do nome de exibição…”
- Números legados (Twilio): JSON em string com
code(ararahq-...),whatHappenedehowToAct.
Códigos ararahq
Todo motivo de falha reconhecido tem um códigoararahq-*. Onde ele aparece depende do provedor do número:
- Recusa na hora por falha do provedor: em
error.code, comerror.details.diagnostic. - Números legados (Twilio): em
reasone emdata.errorDetails.codedo webhook. - Números no provedor atual:
reasonedata.errorDetailstrazem só o texto, sem código. Não dependa do código nesse caso. Vejamessage.status_updated.
As seções abaixo detalham os casos mais comuns.
Erros de template
São a maior parte das falhas. Quase sempre o problema está no template, não no envio.Falha na validação do template: 401 UNAUTHORIZED
O que é: a Arara não conseguiu se autenticar para validar seu template no provedor. Apesar do texto falar em “estrutura e links”, 401 é credencial, não conteúdo. Não adianta mexer no texto do template.
O que fazer: não é ação sua. Abra um chamado: é a conta do número que precisa ser reconectada do nosso lado. Se você acabou de trocar o número ou refazer o embedded signup, mencione isso no chamado.
Template rejeitado, pausado ou inexistente
Aparece como “O template usado não existe ou não está aprovado nesta conta WhatsApp” (ararahq-template-not-found). Se o template já estava pausado antes do envio, a API recusa na hora com 422 TEMPLATE_PAUSED.
O que é: a Meta reprovou ou pausou um template que já estava aprovado. Pausa acontece quando muita gente bloqueia ou denuncia mensagens daquele template.
O que fazer:
- Veja o status em Templates. Pausado aparece como
PAUSED. - Template pausado volta sozinho depois de um período, mas volta a pausar se o conteúdo continuar gerando bloqueio.
- A correção real é o conteúdo: mensagem que a pessoa não esperava receber gera bloqueio. Revise a lista e o texto antes de resubmeter.
Falha na validação das variáveis: Content Variables inválido
Também aparece como “As variáveis enviadas não batem com a estrutura do template aprovado” (ararahq-template-mismatch). Quando a Arara detecta a diferença antes de enviar, a API responde 422 TEMPLATE_VARIABLES_MISMATCH com details.expected e details.received.
O que é: a quantidade ou o formato das variáveis que você mandou não corresponde ao template aprovado. Template com {{1}} e {{2}} exige exatamente dois valores, na ordem.
O que fazer: compare templateVariables com o corpo aprovado em Templates. Erros comuns: mandar um valor a mais, pular posição, mandar null ou string vazia.
Falha na validação do template: 413 PAYLOAD_TOO_LARGE
O que é: o conteúdo passou do tamanho aceito, normalmente uma variável muito longa, ou mídia grande demais no cabeçalho.
O que fazer: encurte o valor da variável. Para mídia, use link em vez de anexo pesado.
Janela de 24h fechada
A API recusa na hora com422 CONVERSATION_WINDOW_CLOSED. Se a janela fechou entre o aceite e o envio, a falha chega como “Passaram-se mais de 24h desde a última mensagem do cliente” (ararahq-reengagement).
O que é: você tentou mandar texto livre, botões ou lista para quem não falou com você nas últimas 24h.
O que fazer: fora da janela, só template aprovado passa. Informe templateName. Veja Janela de 24h.
Por que a Meta reprova um template
Reprovação por formato costuma vir comoINVALID_FORMAT, e quase sempre é variável fora de posição. As regras duras:
Categoria errada também reprova: promoção enviada como
UTILITY é reclassificada ou recusada. Veja Templates.
Erros de conta e número
Aqui nada que você mude no envio resolve. É o estado da conta na Meta.A conta WhatsApp (WABA) da sua empresa está bloqueada ou restrita
Código ararahq-account-locked (erro Meta 131031).
O que é: a Meta bloqueou a conta inteira. Nenhum envio sai enquanto durar.
O que fazer: o aviso e o motivo chegam no Business Manager da sua empresa. É lá que se abre a contestação. A Arara não consegue destravar por você, mas o chamado ajuda a interpretar o motivo e montar o recurso.
Bloqueio preventivo de Spam pela Meta
Código interno ararahq-meta-block.
O que é: o conteúdo foi classificado como marketing excessivo, ou houve denúncia de usuários.
O que fazer: pare o envio para aquela lista. Continuar enviando enquanto o bloqueio está ativo piora a nota de qualidade e aproxima a restrição definitiva.
O nome de exibição do seu número ainda não foi aprovado
Código ararahq-display-name (erro Meta 131037).
O que é: sem nome aprovado, a Meta bloqueia envio de template.
O que fazer: peça a aprovação do nome no Business Manager. Enquanto isso, conversa dentro da janela de 24h continua funcionando.
Erros do destinatário
Não são erro seu nem nosso. Não adianta reenviar.
Número que falha repetidamente passa a ser recusado antes do envio com
403 NUMBER_BLOCKED.
Reenviar para esses contatos não melhora a entrega e piora sua nota de qualidade. O certo é limpar a lista.
Erros de provedor
Erro de entrega no provedor (Upstream Error)
Códigos ararahq-63041 e similares.
O que é: a Arara enviou, o provedor aceitou, mas a confirmação não voltou. Um dos motivos que aparece é low balance do lado do provedor.
O que fazer: normalmente resolve sozinho e a mensagem é reconciliada. Se um lote inteiro ficar assim, abra chamado. É sinal de incidente, não de conteúdo.
Mensagem parada em SENT_TO_PROVIDER
Na API e no webhook esse estado aparece como SENT / sent; o nome técnico só aparece no histórico do painel.
O que é: aceita pelo provedor e sem status final. Não é falha: é ausência de confirmação.
O que fazer: aguarde a reconciliação. Se persistir por horas em volume, abra chamado citando o período.
Limite de envio e qualidade do número
Duas coisas diferentes que costumam ser confundidas:- Qualidade é a saúde do número (verde, amarelo, vermelho). Cai quando gente bloqueia ou denuncia.
- Tier é quantas conversas você pode iniciar por dia.
Para subir de tier é preciso volume consistente com qualidade alta. Envio agressivo derruba a qualidade e trava a subida. Veja Números.
Como o retry funciona
Falha de rede e erro temporário do provedor entram em retry automático com backoff. Erro de template, de variável e de conta não entram: repetir daria o mesmo resultado e pioraria a qualidade do número. Se a mensagem estáFAILED, ela não será reenviada sozinha. Corrija a causa e envie de novo.
Ainda travado?
Abra um chamado em Suporte, dentro do painel. O assistente responde na hora com base nesta documentação; o que ele não resolver vai para a fila do time com o prazo do seu plano. Ajuda muito no chamado: oid da mensagem (ara_msg_...), o nome do template, o texto de reason e o horário aproximado.