<código> é seu código de verificação.”, com aviso de segurança e de validade opcionais. Não aceitam
cabeçalho, mídia, URL nem emoji.
Criar no painel
Em Templates → Novo template, escolha a categoria Autenticação:
Depois de salvar, envie para os canais. A Meta analisa cada idioma em cada WABA.
Enviar pela API
O payload é o mesmo para os três tipos de botão. O código vai no corpo e no botão (sub_type: "url", index: "0"):
<CHANNEL_TOKEN> é o channel_token do canal (veja Canais), não a chave da API de Gerenciamento.
- O código tem no máximo 15 caracteres, sem URL nem emoji.
- A mensagem só chega no aparelho principal do contato; aparelhos vinculados mostram um aviso.
- Se não receber o webhook
delivereddentro do tempo de vida, considere a mensagem descartada.
Um toque e zero toque
Seu app Android precisa fazer o handshake com o WhatsApp antes de você pedir o envio:- Use o SDK de OTP do WhatsApp para Android (
com.whatsapp.otp:whatsapp-otp-android-sdk). O handshake porPendingIntentfoi descontinuado em 15/10/2026. - O app recebe o código pela ação
com.whatsapp.otp.OTP_RETRIEVED(extracode). - O botão cai para Copiar código quando o handshake não aconteceu, passou de 10 minutos (ou da validade do código), o aparelho não é elegível ou o contato usa iOS. O zero toque cai primeiro para um toque.
