BR
WhatsApp click-to-chat

API de link do WhatsApp: wa.me e api.whatsapp.com explicados

Um link do WhatsApp é uma URL, não uma API. Veja os formatos exatos, o parâmetro text, um gerador gratuito e onde o link para.

Como funciona

API de link do WhatsApp: como os links wa.me e api.whatsapp.com funcionam de verdade

Os dois abrem uma conversa e, depois, uma pessoa assume.

  1. 1Alguém abre a URL
  2. 2O WhatsApp abre a conversa
  3. 3Uma pessoa toca em enviar
Definição

O que é uma API de link do WhatsApp?

Não existe uma API de link do WhatsApp. https://wa.me/<numero> e https://api.whatsapp.com/send?phone=<numero> são URLs de click-to-chat. As APIs começam onde o link para.

Um link do WhatsApp
Configuração
Nenhuma
No clique
Abre uma conversa e preenche o texto
Quem age
Uma pessoa toca em enviar
Uma API do WhatsApp
Configuração
Conexão da conta e uma chave de API
Na chamada
Envia, recebe e lista mensagens
Quem age
O seu software, em nome da conta conectada
Formato

Qual é o formato exato do link wa.me?

O formato documentado é https://wa.me/<numero>, com o número de telefone completo no formato internacional.

Anatomia da URL
https://wa.me/1XXXXXXXXXX
Host. Sempre o mesmo.
Número. Código do país primeiro, só dígitos.
Usehttps://wa.me/1XXXXXXXXXX
Não usehttps://wa.me/+001-(XXX)XXXXXXX
Remova antes de montar+0 inicialEspaçosHífensParênteses

Fonte: Central de Ajuda do WhatsApp, "Como usar a conversa por clique"

Comparação

Qual é a diferença entre wa.me e api.whatsapp.com/send?

Os dois abrem a mesma conversa. Só muda o lugar do número.

wa.meDocumentado
https://wa.me/1XXXXXXXXXX?text=Hi

Número no caminho da URL. Documentado pelo WhatsApp.

api.whatsapp.com/sendAinda muito usado
https://api.whatsapp.com/send?phone=1XXXXXXXXXX&text=Hi

Número no parâmetro phone. Não aparece na página de ajuda atual que encontramos.

Uma lacuna na documentação, não uma descontinuação. Crie os novos links com wa.me.

O parâmetro text

Como adicionar uma mensagem preenchida a um link do WhatsApp?

Acrescente ?text= e a mensagem codificada para URL: https://wa.me/<numero>?text=<textocodificado>. O texto continua editável.

Caracteres a codificar
Espaço%20
Quebra de linha%0A
&%26
#%23
+%2B

Emojis e o resto: encodeURIComponent().

Sem número? https://wa.me/?text=... abre a seleção de contatos.

build-link.js
const number = "1XXXXXXXXXX";
const text = "Hi! I have a question.";
const link = `https://wa.me/${number}` +
  `?text=${encodeURIComponent(text)}`;
https://wa.me/1XXXXXXXXXX?text=Hi!%20I%20have%20a%20question.
Ferramenta gratuita

Gere o seu link do WhatsApp

Digite um número e uma mensagem e copie o que precisar.

Só dígitos, com o código do país primeiro.
Opcional e sempre editável.

Roda no seu navegador. Nenhum número é enviado a um servidor.

Link wa.me
https://wa.me/15550123456?text=Ol%C3%A1!%20Tenho%20uma%20d%C3%BAvida%20sobre%20o%20seu%20produto.
Equivalente api.whatsapp.com
https://api.whatsapp.com/send?phone=15550123456&text=Ol%C3%A1!%20Tenho%20uma%20d%C3%BAvida%20sobre%20o%20seu%20produto.
Parâmetro text codificado
Ol%C3%A1!%20Tenho%20uma%20d%C3%BAvida%20sobre%20o%20seu%20produto.
Snippet HTML
<a href="https://wa.me/15550123456?text=Ol%C3%A1!%20Tenho%20uma%20d%C3%BAvida%20sobre%20o%20seu%20produto." target="_blank" rel="noopener" aria-label="Chat on WhatsApp with 15550123456">Chat on WhatsApp</a>
Botão "Conversar no WhatsApp"
<a href="https://wa.me/15550123456?text=Ol%C3%A1!%20Tenho%20uma%20d%C3%BAvida%20sobre%20o%20seu%20produto." target="_blank" rel="noopener"><img src="whatsapp-icon.svg" alt=""> Chat on WhatsApp</a>

Um link abre uma conversa. Ele não envia nada, e o seu produto nunca vê a resposta.

Resposta curta

Um link do WhatsApp envia a mensagem?

Não. Nada é entregue até que a pessoa com o celular na mão toque em enviar.

Conversa aberta
Texto preenchido
Entregue só depois de um toque em enviar
Onde o link para

O que um link do WhatsApp não consegue fazer?

Um link de click-to-chat não guarda estado: o seu app nunca sabe o que aconteceu depois.

O que o link faz
  • Link clicado
  • Conversa aberta
  • Mensagem preenchida
  • Envio manual
O link para aqui
O que exige uma API
  • Resposta recebida
  • Histórico da conversa
  • Evento de webhook
  • Atribuição por usuário
Sem status de entrega ou leitura
Sem anexos
Sem disparo pelo servidor
Falha silenciosa em número sem WhatsApp
Comportamento diferente por dispositivo
Depois do link

Como trazer a resposta de volta para o seu app?

Você precisa de uma API que mantenha uma sessão do WhatsApp. Existem dois caminhos.

Meta Cloud APIEmpresa verificada
  • Exige uma conta do WhatsApp Business verificada
  • Cobrança por mensagem desde 1º de julho de 2025, veja os preços da API do WhatsApp Business
  • Respostas na janela de 24 horas: 1.000 gratuitas por número a cada mês desde 1º de outubro de 2026
Conta conectada, UnipileSem verificação Business
  • Cada usuário final conecta a própria conta do WhatsApp
  • O seu app age em nome do usuário autenticado
  • Lê e envia a partir da inbox real, respostas incluídas
  • A mesma API para LinkedIn, Telegram, Gmail e mais
Com a Unipile
  1. 1Conecte a conta por QR code ou código de pareamento
  2. 2Envie a partir do seu app
  3. 3Receba as respostas por webhook: message_received

Veja a API do WhatsApp da Unipile e como enviar mensagens do WhatsApp via API. Referência: developer.unipile.com/v1.0/docs/whatsapp.

Decisão

Link, Cloud API ou conta conectada: qual você precisa?

Escolha de acordo com quem escreve primeiro.

Um link

Uma pessoa inicia a conversa a partir da sua página.

Autenticação
Nenhuma
Custo
Gratuito
Respostas
Invisíveis para o seu app
Use o gerador acima
Meta Cloud API

Uma empresa verificada envia templates.

Autenticação
Conta Meta Business verificada
Custo
Por mensagem, desde 1º de julho de 2025
Respostas
Sim, via webhook
Guia de integração da WhatsApp Cloud API
Conta conectada

O seu produto atua na inbox de cada usuário.

Autenticação
QR code ou código de pareamento
Custo
Plano Unipile, sem cobrança por mensagem
Respostas
Sim, via webhook
Guia completo da API do WhatsApp
Implementação

Como incorporar um link do WhatsApp em um produto?

Monte o link por usuário nos seus templates. Nunca deixe um número fixo no código de um produto multi-tenant.

Template do link
https://wa.me/{{ user.whatsapp_number }}?text={{ prefilled_text | url_encode }}
Número. Vem do cadastro do usuário.
Texto. Codificado para URL na renderização.
Botão oficial

O selo verde "Conversar no WhatsApp" do próprio WhatsApp, usado como está.

QR code

Qualquer gerador de QR transforma um link wa.me em um código para imprimir.

Onde ele abre
Celular
O app do WhatsApp
Desktop, com app instalado
O app para desktop
Desktop, sem app
WhatsApp Web
Solução de problemas

Por que meu link do WhatsApp não funciona?

Na maioria das vezes: o formato do número ou um texto não codificado.

1 O número não está no formato internacional simples
https://wa.me/+001-(XXX)XXXXXXX
https://wa.me/1XXXXXXXXXX

Solução: só dígitos, com o código do país primeiro.

2 O parâmetro text não foi codificado para URL
?text=Hi there & welcome
?text=Hi%20there%20%26%20welcome

Solução: encodeURIComponent() ou urllib.parse.quote().

3 Nenhuma conta do WhatsApp ativa

A conversa falha sem aviso.

4 Aberto em um navegador interno de app

Use o navegador do sistema.

5 Uma prévia de link reescreveu a URL

A query string se perdeu. Teste a URL bruta.

API de link do WhatsApp - FAQ

Respostas rápidas para desenvolvedores.

Não. wa.me e api.whatsapp.com/send são URLs de click-to-chat: elas abrem uma conversa no WhatsApp, sem autenticação nem código. As APIs do WhatsApp começam onde o link para.

https://wa.me/<numero>, em que <numero> é o número completo no formato internacional, sem zeros iniciais, parênteses, espaços nem hífens. Por exemplo: https://wa.me/1XXXXXXXXXX.

Os dois abrem a mesma conversa. wa.me/<numero> é a forma curta documentada na Central de Ajuda do WhatsApp, com o número no caminho da URL. api.whatsapp.com/send?phone=<numero> é a forma longa, com o número como parâmetro de consulta.

Não. O link abre a conversa e pode preencher o campo de texto. Nada é entregue até que a pessoa com o celular na mão toque em enviar.

Sim. Acrescente ?text= e uma mensagem codificada para URL, por exemplo https://wa.me/1XXXXXXXXXX?text=Hi%2C%20I%20have%20a%20question. O texto continua editável antes do envio. Teste o gerador acima.

Em geral, o número não está no formato internacional simples ou o texto não foi codificado para URL. Confira também se o número usa WhatsApp e evite os navegadores internos de apps.

Não. Um link wa.me ou api.whatsapp.com/send não exige conta Business nem acesso à API. A Cloud API é um produto separado, que exige verificação. Veja o guia completo da API do WhatsApp.

Não com um link: ele não guarda estado. Use a Cloud API da Meta com uma conta Business verificada, ou a Unipile, em que cada usuário final conecta a própria conta por QR code ou código de pareamento e o seu app age em nome do usuário autenticado. Veja como enviar mensagens do WhatsApp via API.

Link ou API? Nossa equipe ajuda você a decidir.

Fale com um especialista