{"id":290,"date":"2026-10-25T13:05:40","date_gmt":"2026-10-25T13:05:40","guid":{"rendered":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/"},"modified":"2026-10-25T13:05:44","modified_gmt":"2026-10-25T13:05:44","slug":"whatsapp-flows","status":"publish","type":"post","link":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/","title":{"rendered":"WhatsApp Flows: formul\u00e1rios dentro da conversa"},"content":{"rendered":"\n<p><em>Atualizado em 25\/10\/2026<\/em><\/p>\n\n\n\n<p>WhatsApp Flows s\u00e3o formul\u00e1rios de uma ou v\u00e1rias telas que abrem dentro da conversa do WhatsApp, com campos de texto, listas de op\u00e7\u00e3o, datas e bot\u00f5es, sem mandar o cliente para um site. A empresa define as telas em um arquivo chamado Flow JSON, envia o Flow por mensagem interativa ou template, e recebe as respostas no mesmo webhook de mensagens. N\u00e3o h\u00e1 pre\u00e7o pr\u00f3prio para Flows: a mensagem que carrega o Flow \u00e9 cobrada pela regra da categoria dela.<\/p>\n\n\n\n<p>Este guia explica para que servem, como montar um Flow simples, quando voc\u00ea precisa de um endpoint, como enviar e receber a resposta e quais limites observar.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Para que servem os Flows<\/h2>\n\n\n\n<p>A <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\" target=\"_blank\" rel=\"noreferrer noopener\">p\u00e1gina de Flows da Meta<\/a> cita gera\u00e7\u00e3o de leads, recomenda\u00e7\u00e3o de produtos e qualquer intera\u00e7\u00e3o em que uma estrutura fixa seja mais confort\u00e1vel para o cliente do que uma troca de mensagens livre. Os guias oficiais trazem exemplos como pr\u00e9-aprova\u00e7\u00e3o de empr\u00e9stimo, cota\u00e7\u00e3o de seguro, coleta de interesse de compra e oferta personalizada.<\/p>\n\n\n\n<p>Casos pr\u00e1ticos em que um Flow costuma render mais que perguntas soltas no chat:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Cadastro e qualifica\u00e7\u00e3o de lead:<\/strong> nome, e-mail, faixa de or\u00e7amento e interesse em uma s\u00f3 tela.<\/li>\n\n\n<li><strong>Agendamento:<\/strong> escolher servi\u00e7o, data e hor\u00e1rio. O assunto aparece em <a href=\"https:\/\/vectalk.com.br\/blog\/agendamento-automatico-ia-whatsapp\/\">agendamento autom\u00e1tico no WhatsApp<\/a>.<\/li>\n\n\n<li><strong>Pesquisa de satisfa\u00e7\u00e3o e NPS:<\/strong> nota e coment\u00e1rio sem o cliente precisar digitar n\u00fameros. Veja <a href=\"https:\/\/vectalk.com.br\/blog\/pos-venda-nps-whatsapp\/\">p\u00f3s-venda e NPS pelo WhatsApp<\/a>.<\/li>\n\n\n<li><strong>Suporte:<\/strong> formul\u00e1rio de abertura de chamado com categoria e descri\u00e7\u00e3o.<\/li>\n\n<\/ul>\n\n\n\n<p>As categorias que um Flow pode receber na cria\u00e7\u00e3o s\u00e3o <code>SIGN_UP<\/code>, <code>SIGN_IN<\/code>, <code>APPOINTMENT_BOOKING<\/code>, <code>LEAD_GENERATION<\/code>, <code>CONTACT_US<\/code>, <code>CUSTOMER_SUPPORT<\/code>, <code>SURVEY<\/code> e <code>OTHER<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Requisitos<\/h2>\n\n\n\n<p>Pelo <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/gettingstarted\" target=\"_blank\" rel=\"noreferrer noopener\">guia de primeiros passos<\/a>, voc\u00ea precisa da Cloud API configurada (app, conta do WhatsApp Business e n\u00famero) e, para enviar Flows aos clientes, de <strong>empresa verificada<\/strong> e <strong>boa qualidade de mensagens<\/strong>. Os Flows podem ser criados de dois jeitos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Flow Builder:<\/strong> no WhatsApp Manager, em <strong>Ferramentas da conta \u2192 Flows<\/strong>. O editor mostra uma pr\u00e9via do Flow enquanto voc\u00ea edita.<\/li>\n\n\n<li><strong>Flows API:<\/strong> endpoints da Graph API para criar, enviar o JSON, publicar e descontinuar.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Anatomia do Flow JSON<\/h2>\n\n\n\n<p>O Flow JSON tem duas propriedades obrigat\u00f3rias: <code>version<\/code> (vers\u00e3o do formato) e <code>screens<\/code> (as telas). Cada tela tem um <code>id<\/code> \u00fanico, um <code>layout<\/code> com componentes e, na \u00faltima, <code>terminal: true<\/code> e um componente <code>Footer<\/code>. A tabela de <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/changelogs\" target=\"_blank\" rel=\"noreferrer noopener\">vers\u00f5es suportadas<\/a> marca a 7.3 como recomendada para publicar.<\/p>\n\n\n\n<p>Um Flow de captura de lead, com uma tela s\u00f3:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-json\">{\n  \"version\": \"7.3\",\n  \"screens\": [\n    {\n      \"id\": \"LEAD\",\n      \"title\": \"Fale com a gente\",\n      \"terminal\": true,\n      \"success\": true,\n      \"data\": {},\n      \"layout\": {\n        \"type\": \"SingleColumnLayout\",\n        \"children\": [\n          { \"type\": \"TextHeading\", \"text\": \"Conte um pouco sobre voc\u00ea\" },\n          { \"type\": \"TextInput\", \"name\": \"nome\", \"label\": \"Nome\", \"input-type\": \"text\", \"required\": true },\n          { \"type\": \"TextInput\", \"name\": \"email\", \"label\": \"E-mail\", \"input-type\": \"email\", \"required\": true },\n          {\n            \"type\": \"Dropdown\",\n            \"name\": \"interesse\",\n            \"label\": \"Interesse\",\n            \"required\": true,\n            \"data-source\": [\n              { \"id\": \"planos\", \"title\": \"Conhecer os planos\" },\n              { \"id\": \"suporte\", \"title\": \"Suporte t\u00e9cnico\" },\n              { \"id\": \"parceria\", \"title\": \"Parceria\" }\n            ]\n          },\n          {\n            \"type\": \"Footer\",\n            \"label\": \"Enviar\",\n            \"on-click-action\": {\n              \"name\": \"complete\",\n              \"payload\": {\n                \"nome\": \"${form.nome}\",\n                \"email\": \"${form.email}\",\n                \"interesse\": \"${form.interesse}\"\n              }\n            }\n          }\n        ]\n      }\n    }\n  ]\n}<\/code><\/pre>\n\n\n\n<p>Os pontos que mais confundem:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>${form.campo}<\/code> l\u00ea o que o cliente digitou na tela; <code>${data.campo}<\/code> l\u00ea dados que voc\u00ea passou para a tela.<\/li>\n\n\n<li>A a\u00e7\u00e3o <code>complete<\/code> encerra o Flow e manda o <code>payload<\/code> para o seu webhook. A Meta recomenda incluir s\u00f3 o que o usu\u00e1rio preencheu e manter o payload pequeno, sem imagens em base64.<\/li>\n\n\n<li><code>navigate<\/code> leva para outra tela sem chamar servidor. <code>data_exchange<\/code> chama o seu endpoint.<\/li>\n\n\n<li>Alguns limites de componente: o <code>TextInput<\/code> aceita at\u00e9 80 caracteres por padr\u00e3o; o <code>Dropdown<\/code> aceita at\u00e9 200 op\u00e7\u00f5es sem imagem, com t\u00edtulo de at\u00e9 30 caracteres.<\/li>\n\n\n<li>Campos marcados em <code>sensitive<\/code> (a partir da vers\u00e3o 5.1) ficam ocultos no resumo que o cliente v\u00ea depois de enviar.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Com ou sem endpoint<\/h2>\n\n\n\n<p>Um Flow <strong>sem endpoint<\/strong> \u00e9 est\u00e1tico: as telas, op\u00e7\u00f5es e a navega\u00e7\u00e3o est\u00e3o todas no JSON. Serve para a maioria dos formul\u00e1rios.<\/p>\n\n\n\n<p>Um Flow <strong>com endpoint<\/strong> consulta o seu servidor durante o preenchimento: por exemplo, para mostrar hor\u00e1rios livres da agenda ou validar um CPF antes de seguir. Pela <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/implementingyourflowendpoint\" target=\"_blank\" rel=\"noreferrer noopener\">documenta\u00e7\u00e3o de endpoint<\/a>, a configura\u00e7\u00e3o tem quatro partes:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Gerar um par de chaves RSA e enviar a chave p\u00fablica para a Meta, que a assina.<\/li>\n\n\n<li>Publicar um endpoint HTTPS com certificado v\u00e1lido que aceite POST.<\/li>\n\n\n<li>Implementar a criptografia: cada requisi\u00e7\u00e3o chega com <code>encrypted_flow_data<\/code>, <code>encrypted_aes_key<\/code> e <code>initial_vector<\/code>. A chave AES vem cifrada com RSA-OAEP (SHA-256), os dados v\u00eam em AES-GCM, e a resposta precisa ser cifrada com a mesma chave AES e o vetor de inicializa\u00e7\u00e3o com todos os bits invertidos.<\/li>\n\n\n<li>Ligar o endpoint ao Flow, com <code>data_api_version<\/code> no JSON e a URL do endpoint.<\/li>\n\n<\/ol>\n\n\n\n<p>O endpoint recebe requisi\u00e7\u00f5es quando o Flow abre com <code>data_exchange<\/code>, quando uma tela \u00e9 enviada com <code>data_exchange<\/code>, quando o cliente volta com <code>refresh_on_back<\/code>, e tamb\u00e9m verifica\u00e7\u00f5es de sa\u00fade peri\u00f3dicas (<code>\"action\": \"ping\"<\/code>), que devem ser respondidas com <code>{\"data\": {\"status\": \"active\"}}<\/code>. Se n\u00e3o conseguir decifrar uma requisi\u00e7\u00e3o, o endpoint deve responder HTTP <code>421<\/code>.<\/p>\n\n\n\n<p>A pr\u00f3pria Meta recomenda evitar o endpoint quando ele n\u00e3o \u00e9 necess\u00e1rio, porque cada chamada adiciona lat\u00eancia. Para testar o endpoint na sua m\u00e1quina, a t\u00e9cnica de t\u00fanel de <a href=\"https:\/\/vectalk.com.br\/blog\/testar-webhook-whatsapp-localmente\/\">testar webhook localmente<\/a> tamb\u00e9m funciona aqui. A Meta mant\u00e9m exemplos em Node.js no reposit\u00f3rio <a href=\"https:\/\/github.com\/WhatsApp\/WhatsApp-Flows-Tools\" target=\"_blank\" rel=\"noreferrer noopener\">WhatsApp-Flows-Tools<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ciclo de vida: rascunho, publicado e problemas de sa\u00fade<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Estado<\/th><th>O que significa<\/th><\/tr><\/thead><tbody><tr><td>Draft (rascunho)<\/td><td>Em edi\u00e7\u00e3o. S\u00f3 pode ser enviado para teste e mostra um aviso no topo. Pode ser exclu\u00eddo<\/td><\/tr><tr><td>Published (publicado)<\/td><td>Pode ser enviado a clientes. N\u00e3o pode ser exclu\u00eddo, s\u00f3 descontinuado<\/td><\/tr><tr><td>Deprecated (descontinuado)<\/td><td>N\u00e3o pode mais ser enviado. Respostas de mensagens antigas ainda podem chegar<\/td><\/tr><tr><td>Throttled (limitado)<\/td><td>Definido pela Meta quando o endpoint ou a navega\u00e7\u00e3o est\u00e3o com problemas. Envio limitado a 10 mensagens por hora<\/td><\/tr><tr><td>Blocked (bloqueado)<\/td><td>Sa\u00fade piorou depois do Throttled. N\u00e3o pode ser enviado nem aberto<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Editar o JSON de um Flow publicado o devolve para rascunho; as mensagens j\u00e1 enviadas continuam com a vers\u00e3o anterior. A Meta mant\u00e9m as \u00faltimas 5 vers\u00f5es. Para mudan\u00e7as grandes, a recomenda\u00e7\u00e3o \u00e9 clonar o Flow. Os erros <code>132068<\/code> (Flow bloqueado) e <code>132069<\/code> (Flow limitado) aparecem quando voc\u00ea tenta enviar nesses estados; veja <a href=\"https:\/\/vectalk.com.br\/blog\/erros-api-whatsapp\/\">erros da API do WhatsApp<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Como enviar um Flow<\/h2>\n\n\n\n<p>H\u00e1 dois caminhos, descritos em <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/sendingaflow\" target=\"_blank\" rel=\"noreferrer noopener\">Sending a Flow<\/a>.<\/p>\n\n\n\n<p><strong>Dentro da janela de atendimento<\/strong>, como mensagem interativa do tipo <code>flow<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-json\">{\n  \"messaging_product\": \"whatsapp\",\n  \"to\": \"5584999999999\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"flow\",\n    \"body\": { \"text\": \"Leva menos de 1 minuto.\" },\n    \"action\": {\n      \"name\": \"flow\",\n      \"parameters\": {\n        \"flow_message_version\": \"3\",\n        \"flow_id\": \"FLOW_ID\",\n        \"flow_cta\": \"Preencher\",\n        \"flow_token\": \"lead-8f2c1a\",\n        \"flow_action\": \"navigate\",\n        \"flow_action_payload\": { \"screen\": \"LEAD\" }\n      }\n    }\n  }\n}<\/code><\/pre>\n\n\n\n<p>O <code>flow_cta<\/code> \u00e9 o texto do bot\u00e3o (a Meta recomenda at\u00e9 30 caracteres, sem emoji). O <code>flow_token<\/code> \u00e9 um identificador que voc\u00ea gera; ele volta na resposta e \u00e9 a forma de saber de qual envio ela veio, porque a resposta n\u00e3o traz o ID do Flow. Use valores imprevis\u00edveis, como um ID de sess\u00e3o.<\/p>\n\n\n\n<p><strong>Fora da janela<\/strong>, como template com bot\u00e3o do tipo <code>FLOW<\/code>. Na cria\u00e7\u00e3o do template, o bot\u00e3o aponta para o Flow por <code>flow_id<\/code>, <code>flow_name<\/code> ou o pr\u00f3prio <code>flow_json<\/code>, e o texto do bot\u00e3o tem no m\u00e1ximo 25 caracteres. No envio, o componente <code>button<\/code> com <code>sub_type: \"flow\"<\/code> pode levar um <code>flow_token<\/code> e dados para a primeira tela. A categoria do template segue as regras normais, explicadas em <a href=\"https:\/\/vectalk.com.br\/blog\/templates-whatsapp-api\/\">templates da API do WhatsApp<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Recebendo a resposta no webhook<\/h2>\n\n\n\n<p>Quando o cliente toca no bot\u00e3o final, a resposta chega no webhook de mensagens como <code>interactive<\/code> do tipo <code>nfm_reply<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"language-json\">{\n  \"from\": \"5584999999999\",\n  \"id\": \"wamid.HBgL...\",\n  \"type\": \"interactive\",\n  \"interactive\": {\n    \"type\": \"nfm_reply\",\n    \"nfm_reply\": {\n      \"name\": \"flow\",\n      \"body\": \"Sent\",\n      \"response_json\": \"{\\\"flow_token\\\": \\\"lead-8f2c1a\\\", \\\"nome\\\": \\\"Maria\\\", \\\"email\\\": \\\"maria@exemplo.com\\\", \\\"interesse\\\": \\\"planos\\\"}\"\n    }\n  }\n}<\/code><\/pre>\n\n\n\n<p>O <code>response_json<\/code> \u00e9 uma string: fa\u00e7a o parse antes de gravar. A estrutura do webhook \u00e9 a mesma das outras mensagens, explicada em <a href=\"https:\/\/vectalk.com.br\/blog\/webhook-whatsapp-api\/\">webhooks da API do WhatsApp<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Quanto custa<\/h2>\n\n\n\n<p>A tabela de <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/pricing\" target=\"_blank\" rel=\"noreferrer noopener\">pre\u00e7os da Meta<\/a> n\u00e3o tem linha para Flows. O custo depende de como o Flow foi enviado:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Template com bot\u00e3o de Flow:<\/strong> paga a categoria do template (marketing, utilidade ou autentica\u00e7\u00e3o), por mensagem entregue.<\/li>\n\n\n<li><strong>Mensagem interativa na janela de atendimento:<\/strong> \u00e9 mensagem de servi\u00e7o. Cada n\u00famero tem 1.000 mensagens de servi\u00e7o entregues gr\u00e1tis por m\u00eas; a partir da 1.001\u00aa, h\u00e1 cobran\u00e7a por mensagem.<\/li>\n\n\n<li><strong>A resposta do cliente<\/strong> (<code>nfm_reply<\/code>) n\u00e3o \u00e9 cobrada: a Meta n\u00e3o cobra mensagens do usu\u00e1rio para a empresa.<\/li>\n\n<\/ul>\n\n\n\n<p>Os valores em reais est\u00e3o em <a href=\"https:\/\/vectalk.com.br\/blog\/api-whatsapp-preco-brasil\/\">quanto custa a API do WhatsApp no Brasil<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Como isso funciona na Vectalk<\/h2>\n\n\n\n<p>A Vectalk exp\u00f5e a gest\u00e3o de Flows na pr\u00f3pria API, com token de inst\u00e2ncia: <code>GET \/api\/flows<\/code> para listar, <code>POST \/api\/flows<\/code> para criar (com nome, categorias e, opcionalmente, <code>clone_flow_id<\/code>), <code>POST \/api\/flows\/{flowId}\/assets<\/code> para enviar o <code>flow.json<\/code>, <code>POST \/api\/flows\/{flowId}\/publish<\/code> para publicar e <code>POST \/api\/flows\/{flowId}\/deprecate<\/code> para descontinuar. Os detalhes est\u00e3o em <a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/flows\/create\">Criar Flow<\/a> e <a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/flows\/assets\">Assets do Flow<\/a>.<\/p>\n\n\n\n<p>O envio usa o mesmo <code>POST \/api\/messages<\/code> com o payload <code>interactive<\/code> do tipo <code>flow<\/code> mostrado acima, conforme a <a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/messages\/send\">vis\u00e3o geral de mensagens<\/a>, e a resposta <code>nfm_reply<\/code> chega nos webhooks registrados, no formato da Meta. Crie sua conta em <a href=\"https:\/\/apps.vectalk.com.br\/register\">apps.vectalk.com.br\/register<\/a>. Para o panorama da plataforma, veja o guia da <a href=\"https:\/\/vectalk.com.br\/blog\/api-oficial-do-whatsapp\/\">API oficial do WhatsApp<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Perguntas frequentes<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">WhatsApp Flows \u00e9 pago?<\/h3>\n\n\n\n<p>N\u00e3o h\u00e1 cobran\u00e7a espec\u00edfica por Flow. Voc\u00ea paga a mensagem que leva o Flow, conforme a categoria: template pela categoria dele, mensagem interativa na janela como mensagem de servi\u00e7o. A resposta do cliente n\u00e3o \u00e9 cobrada.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Preciso de servidor para usar Flows?<\/h3>\n\n\n\n<p>N\u00e3o. Flows sem endpoint funcionam s\u00f3 com o Flow JSON, e a resposta chega no webhook que voc\u00ea j\u00e1 usa. O endpoint s\u00f3 \u00e9 necess\u00e1rio quando as telas dependem de dados do seu sistema durante o preenchimento.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Posso enviar um Flow para quem n\u00e3o falou comigo nas \u00faltimas 24 horas?<\/h3>\n\n\n\n<p>Sim, por template com bot\u00e3o de Flow aprovado. Mensagens interativas do tipo <code>flow<\/code> s\u00f3 podem ser enviadas dentro da janela de atendimento.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Como sei de qual Flow veio a resposta?<\/h3>\n\n\n\n<p>A resposta n\u00e3o traz o ID do Flow. Use o <code>flow_token<\/code>, que voc\u00ea define no envio e volta no <code>response_json<\/code>, ou inclua um campo identificador no payload do <code>complete<\/code>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Flows funcionam no WhatsApp Web?<\/h3>\n\n\n\n<p>Segundo o changelog da Meta, o suporte a Flows no WhatsApp Web come\u00e7ou a ser liberado a partir do in\u00edcio de dezembro de 2025, sem a\u00e7\u00e3o necess\u00e1ria da empresa.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><strong>Fontes oficiais consultadas em 25\/10\/2026:<\/strong> <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\" target=\"_blank\" rel=\"noreferrer noopener\">WhatsApp Flows<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/gettingstarted\" target=\"_blank\" rel=\"noreferrer noopener\">Get started with WhatsApp Flows<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/flowjson\" target=\"_blank\" rel=\"noreferrer noopener\">Flow JSON<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/components\" target=\"_blank\" rel=\"noreferrer noopener\">Components<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/implementingyourflowendpoint\" target=\"_blank\" rel=\"noreferrer noopener\">Implement endpoints for Flows<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/lifecycle\" target=\"_blank\" rel=\"noreferrer noopener\">Lifecycle of a Flow<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/sendingaflow\" target=\"_blank\" rel=\"noreferrer noopener\">Send a Flow message<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/guides\/flowswebhooks\" target=\"_blank\" rel=\"noreferrer noopener\">Flows webhooks<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/flows\/changelogs\" target=\"_blank\" rel=\"noreferrer noopener\">Changelog de Flows<\/a>, <a href=\"https:\/\/developers.facebook.com\/documentation\/business-messaging\/whatsapp\/pricing\" target=\"_blank\" rel=\"noreferrer noopener\">Pre\u00e7os da plataforma<\/a>, <a href=\"https:\/\/docs.vectalk.com.br\/api-reference\/flows\/create\">Flows na documenta\u00e7\u00e3o da Vectalk<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Como criar formul\u00e1rios de v\u00e1rias telas dentro do WhatsApp com Flows: Flow JSON, envio, endpoint, ciclo de vida, resposta no webhook e custo.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[8],"tags":[],"class_list":["post-290","post","type-post","status-publish","format-standard","hentry","category-uncategorized-pt"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>WhatsApp Flows: formul\u00e1rios na conversa (guia) | Vectalk<\/title>\n<meta name=\"description\" content=\"WhatsApp Flows: o que s\u00e3o, casos de uso, Flow JSON, endpoint com criptografia, como enviar por template ou mensagem interativa e quanto custa.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"WhatsApp Flows: formul\u00e1rios na conversa (guia) | Vectalk\" \/>\n<meta property=\"og:description\" content=\"WhatsApp Flows: o que s\u00e3o, casos de uso, Flow JSON, endpoint com criptografia, como enviar por template ou mensagem interativa e quanto custa.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog Vectalk\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-25T13:05:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-25T13:05:44+00:00\" \/>\n<meta name=\"author\" content=\"wanderleyfcunha\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"wanderleyfcunha\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/\"},\"author\":{\"name\":\"wanderleyfcunha\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\"},\"headline\":\"WhatsApp Flows: formul\u00e1rios dentro da conversa\",\"datePublished\":\"2026-10-25T13:05:40+00:00\",\"dateModified\":\"2026-10-25T13:05:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/\"},\"wordCount\":1588,\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/\",\"url\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/\",\"name\":\"WhatsApp Flows: formul\u00e1rios na conversa (guia) | Vectalk\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#website\"},\"datePublished\":\"2026-10-25T13:05:40+00:00\",\"dateModified\":\"2026-10-25T13:05:44+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\"},\"description\":\"WhatsApp Flows: o que s\u00e3o, casos de uso, Flow JSON, endpoint com criptografia, como enviar por template ou mensagem interativa e quanto custa.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/whatsapp-flows\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WhatsApp Flows: formul\u00e1rios dentro da conversa\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/\",\"name\":\"Blog Vectalk\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vectalk.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/ff36ecd9d8257856f227f8e5d639db2b\",\"name\":\"wanderleyfcunha\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g\",\"caption\":\"wanderleyfcunha\"},\"sameAs\":[\"https:\\\/\\\/vectalk.com.br\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"WhatsApp Flows: formul\u00e1rios na conversa (guia) | Vectalk","description":"WhatsApp Flows: o que s\u00e3o, casos de uso, Flow JSON, endpoint com criptografia, como enviar por template ou mensagem interativa e quanto custa.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/","og_locale":"en_US","og_type":"article","og_title":"WhatsApp Flows: formul\u00e1rios na conversa (guia) | Vectalk","og_description":"WhatsApp Flows: o que s\u00e3o, casos de uso, Flow JSON, endpoint com criptografia, como enviar por template ou mensagem interativa e quanto custa.","og_url":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/","og_site_name":"Blog Vectalk","article_published_time":"2026-10-25T13:05:40+00:00","article_modified_time":"2026-10-25T13:05:44+00:00","author":"wanderleyfcunha","twitter_card":"summary_large_image","twitter_misc":{"Written by":"wanderleyfcunha","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/#article","isPartOf":{"@id":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/"},"author":{"name":"wanderleyfcunha","@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b"},"headline":"WhatsApp Flows: formul\u00e1rios dentro da conversa","datePublished":"2026-10-25T13:05:40+00:00","dateModified":"2026-10-25T13:05:44+00:00","mainEntityOfPage":{"@id":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/"},"wordCount":1588,"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/","url":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/","name":"WhatsApp Flows: formul\u00e1rios na conversa (guia) | Vectalk","isPartOf":{"@id":"https:\/\/vectalk.com.br\/blog\/#website"},"datePublished":"2026-10-25T13:05:40+00:00","dateModified":"2026-10-25T13:05:44+00:00","author":{"@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b"},"description":"WhatsApp Flows: o que s\u00e3o, casos de uso, Flow JSON, endpoint com criptografia, como enviar por template ou mensagem interativa e quanto custa.","breadcrumb":{"@id":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vectalk.com.br\/blog\/whatsapp-flows\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vectalk.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"WhatsApp Flows: formul\u00e1rios dentro da conversa"}]},{"@type":"WebSite","@id":"https:\/\/vectalk.com.br\/blog\/#website","url":"https:\/\/vectalk.com.br\/blog\/","name":"Blog Vectalk","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vectalk.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/vectalk.com.br\/blog\/#\/schema\/person\/ff36ecd9d8257856f227f8e5d639db2b","name":"wanderleyfcunha","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/21c37077f1731eb558973f27a7b647d55f72fde5200a843ac5f5345b247ea725?s=96&d=mm&r=g","caption":"wanderleyfcunha"},"sameAs":["https:\/\/vectalk.com.br\/blog"]}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/290","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/comments?post=290"}],"version-history":[{"count":1,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/290\/revisions"}],"predecessor-version":[{"id":293,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/posts\/290\/revisions\/293"}],"wp:attachment":[{"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/media?parent=290"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/categories?post=290"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vectalk.com.br\/blog\/wp-json\/wp\/v2\/tags?post=290"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}