Este guia de integração passo a passo do Whapi.Cloud, provedor de WhatsApp Business API, foi escrito para desenvolvedores Node.js e Python e gestores técnicos de lojas Yampi no Brasil que desejam adicionar notificações de pedidos via WhatsApp sem assinar conectores. O Yampi não possui canal nativo de notificações pelo WhatsApp. Para adicionar um, aponte os webhooks do Yampi para um servidor que chama a REST API do Whapi.Cloud: um HTTP POST para /messages/text envia a mensagem ao WhatsApp do comprador em menos de um segundo. Este guia cobre validação de assinatura HMAC-SHA256, os seis tipos de eventos webhook do Yampi, código funcional em Node.js/Express e Python/Flask, um caminho sem código via Make, n8n e Zapier, e uma comparação com plataformas fechadas como NI, Pluga e Interakt. Não cobre WhatsApp Flows, integração ao Meta Cloud API ou configuração de WABA.
TL;DR: O que você vai obter com este guia
- Handlers de webhook completos em Node.js e Python com validação HMAC-SHA256
- Os 6 eventos webhook do Yampi mapeados para templates de mensagens do WhatsApp
- Um HTTP POST para
/messages/textenvia uma mensagem no WhatsApp, sem tarifa de conector - Caminho sem código via Make, n8n ou Zapier para não desenvolvedores
- Comparação de REST API vs plataformas fechadas (NI, Pluga, Interakt) em 8 critérios
- Requisitos de opt-in LGPD e formato de telefone E.164 cobertos
O Yampi Tem Integração Nativa com o WhatsApp?
Não — e isso pega de surpresa muitos donos de lojas Yampi. O Yampi é uma plataforma de e-commerce brasileira sólida com um sistema de webhooks, mas não vem com nenhum canal de notificações do WhatsApp integrado.
Ferramentas de conexão como Pluga e NI preenchem parte dessa lacuna, mas cobram por mensagem ou limitam você a um conjunto fixo de templates — a qualquer volume de pedidos significativo, campanhas de recuperação de carrinho se tornam rapidamente não lucrativas.
O caminho direto é o sistema de webhooks do Yampi mais a REST API do Whapi.Cloud. O Yampi dispara um HTTP POST para o seu servidor cada vez que um evento relevante de pedido ocorre. Seu servidor valida a requisição, lê o payload e envia um HTTP POST para o endpoint /messages/text do Whapi.Cloud. O comprador recebe uma mensagem no WhatsApp em menos de um segundo. Sem assinatura intermediária, sem tarifa por mensagem, sem lock-in de fornecedor.
Por que as taxas de abertura importam aqui: A automação via WhatsApp alcança cerca de 98% de taxa de abertura contra 20–25% do e-mail. Para uma loja brasileira que envia 500 notificações de pedido por dia, isso representa aproximadamente 390 mensagens a mais lidas por dia em comparação com o e-mail — uma diferença concreta na satisfação do cliente e nas taxas de recompra.
O Whapi.Cloud é um provedor de WhatsApp Business API que se conecta via web-session sockets, o mesmo mecanismo utilizado pelo WhatsApp Web. Desenvolvedores e agências brasileiras o utilizam especificamente porque não cobra tarifas por mensagem e funciona com o seu número de WhatsApp existente.
Por que WhatsApp para Sua Loja Yampi?
O Brasil tem a maior penetração de WhatsApp de qualquer grande mercado de e-commerce. Mais de 99% dos usuários de smartphones têm o app instalado. As caixas de e-mail competem com centenas de mensagens por dia; as conversas pelo WhatsApp são pessoais e imediatas.
| Canal | Taxa de abertura | Taxa de resposta | Modelo de custo típico |
|---|---|---|---|
| WhatsApp (automatizado) | ~98% | 40–60% | Mensalidade fixa (Whapi.Cloud) |
| 20–25% | 2–5% | Por envio ou fixo | |
| SMS | 75–85% | 15–25% | Por mensagem |
| Notificação push | 10–15% | 1–3% | Mensalidade fixa |
Para recuperação de carrinho, o cálculo do ROI é direto: um lembrete de carrinho pelo WhatsApp alcança quase todo comprador; a mesma mensagem por e-mail alcança um em cada cinco. A qualquer volume real de pedidos, a diferença de receita cobre o custo da integração na primeira semana.
A automação Yampi para WhatsApp cobre seis etapas do ciclo de vida: confirmação de pedido, recuperação de falhas de pagamento, atualizações de envio, confirmação de entrega, solicitação de avaliação e upsell. Cada etapa mapeia para um evento webhook do Yampi separado, todos gerenciados a partir de um único endpoint de servidor.
Como Funciona a Integração
A arquitetura tem três componentes: o sistema de webhooks do Yampi, o seu servidor (ou uma ferramenta sem código) e a REST API do Whapi.Cloud. Nenhuma plataforma de conector fica no meio.
Este é o fluxo de evento para reação:
- O Yampi dispara um webhook. Quando um comprador paga, abandona um carrinho ou o status do pedido muda, o Yampi envia um HTTP POST para a URL do seu webhook configurado com um payload JSON e um header de assinatura HMAC-SHA256.
- Seu servidor valida a assinatura. Todo webhook do Yampi inclui uma assinatura HMAC-SHA256 no header
x-yampi-hmac-sha256. Valide no servidor antes de processar. Pular esta etapa permite que requisições forjadas disparem mensagens para compradores aleatórios. - Seu servidor lê o tipo de evento e o payload. O campo
eventidentifica o gatilho. O objetoresourcecontém telefone do cliente, nome, número do pedido e dados específicos do evento. - Seu servidor envia um HTTP POST para o Whapi.Cloud: um único POST para
https://gate.whapi.cloud/messages/textcom o número de telefone no formato E.164 e o corpo da mensagem. O Whapi.Cloud entrega a mensagem ao WhatsApp do comprador em menos de um segundo. - O Yampi recebe um 200 OK. Responda imediatamente e processe o payload de forma assíncrona para evitar timeouts.
O formato E.164 é obrigatório. O Whapi.Cloud exige números de telefone no formato E.164. Para o Brasil: +5511999998888. Um código de país ausente quebra silenciosamente a entrega de mensagens sem gerar nenhum erro no lado do Yampi. Sempre normalize o número de telefone do payload do Yampi antes de enviar.
Referência Completa dos Eventos Webhook do Yampi
O Yampi expõe seis eventos webhook que cobrem todo o ciclo de vida do pedido. Cada um tem um gatilho claro, uma estrutura de payload previsível e uma mensagem natural do WhatsApp para combinar.
| Evento | Quando dispara | Campos principais do payload | Template de WhatsApp recomendado |
|---|---|---|---|
order.created |
Comprador realiza um pedido (antes do pagamento) | number, customer.phone, customer.name, checkout_url |
«Oi [name]! Pedido #[id] recebido. Conclua o pagamento para confirmar: [link]» |
order.paid |
Pagamento confirmado, dispara instantaneamente | number, customer.phone, customer.name, total |
«Oi [name]! ✅ Pedido #[id] confirmado. Já estamos separando. Obrigado pela compra!» |
order.status.updated |
Status do pedido muda (ex.: enviado, entregue) | number, status, customer.phone, tracking_url |
«Oi [name]! Pedido #[id] agora está: [status]. Acompanhe aqui: [link]» |
transaction.payment.refused |
Tentativa de pagamento recusada | number, customer.phone, checkout_url, reason |
«Oi [name], o pagamento do pedido #[id] foi recusado. Tente novamente: [link]» |
cart.reminder |
Comprador abandonou o carrinho (atraso configurado) | customer.phone, customer.name, checkout_url, items |
«Oi [name]! Você deixou itens no carrinho 🛒 Conclua seu pedido: [link]» |
order.cancellation |
Pedido cancelado (pela loja ou comprador) | number, customer.phone, reason |
«Oi [name], o pedido #[id] foi cancelado. Responda se precisar de ajuda.» |
Priorize o order.paid — ele dispara no momento em que o pagamento é confirmado. Envie a confirmação pelo WhatsApp imediatamente enquanto o comprador ainda está engajado. Esse ponto de contato gera mais goodwill e reduz contatos de suporte de entrada mais do que qualquer outro evento da lista.
Guia de Integração Passo a Passo
Isso leva você do zero a um servidor webhook funcionando em cerca de duas horas. A versão Node.js é a referência principal; o equivalente em Python vem na Etapa 5.
Etapa 1: Pré-requisitos
Antes de escrever uma única linha de código, você precisa:
- Uma loja Yampi com acesso a webhooks (disponível nos planos pagos)
- Uma conta Whapi.Cloud: cadastre-se no sandbox gratuito (permite enviar mensagens de teste sem número de produção)
- Seu token de canal do Whapi.Cloud (no painel após criar um canal)
- Uma URL HTTPS acessível publicamente para o seu webhook (use ngrok para testes locais; coberto na Etapa 6)
- Node.js 18+ ou Python 3.9+ instalado
Etapa 2: Configurar o Webhook no Painel do Yampi
- Faça login no painel administrativo do Yampi e vá em Configurações → Webhooks
- Clique em Adicionar Webhook e insira a URL do seu servidor (ex.:
https://seudominio.com/webhook/yampi) - Selecione os eventos desejados:
order.created,order.paid,order.status.updated,transaction.payment.refused,cart.reminder,order.cancellation - Copie o Secret gerado pelo Yampi. Salve-o como
YAMPI_WEBHOOK_SECRETno seu arquivo.envimediatamente para validação HMAC. - Salve o webhook. O Yampi enviará um ping de teste para a sua URL. Seu servidor deve retornar 200 OK.
Etapa 3: Servidor Webhook em Node.js com Validação HMAC-SHA256
Este é o servidor completo e pronto para produção. Instale as dependências primeiro: npm install express axios dotenv.
// .env: YAMPI_WEBHOOK_SECRET, WHAPI_TOKEN, PORT
require('dotenv').config();
const express = require('express');
const crypto = require('crypto');
const axios = require('axios');
const app = express();
// Capture raw body for HMAC verification
app.use(express.json({
verify: (req, res, buf) => { req.rawBody = buf; }
}));
const WHAPI_BASE = 'https://gate.whapi.cloud';
// Normalize Brazilian phone to E.164: +5511999998888
function toE164(phone) {
const digits = phone.replace(/\D/g, '');
return digits.startsWith('55') ? `+${digits}` : `+55${digits}`;
}
// Send a WhatsApp text message via Whapi.Cloud
async function sendWhatsApp(phone, text) {
const to = toE164(phone); // E.164 required — e.g. +5511999998888
await axios.post(`${WHAPI_BASE}/messages/text`, { to, body: text }, {
headers: { Authorization: `Bearer ${process.env.WHAPI_TOKEN}` }
});
}
// Yampi webhook: validate HMAC-SHA256 signature, then route event
app.post('/webhook/yampi', (req, res) => {
const sig = req.headers['x-yampi-hmac-sha256'];
const expected = crypto
.createHmac('sha256', process.env.YAMPI_WEBHOOK_SECRET)
.update(req.rawBody)
.digest('base64');
if (!crypto.timingSafeEqual(Buffer.from(sig), Buffer.from(expected))) {
return res.status(401).send('Invalid signature');
}
res.status(200).send('OK'); // Acknowledge immediately
const { event, resource } = req.body;
const phone = resource?.customer?.phone;
const name = resource?.customer?.name?.split(' ')[0] || 'there';
const orderId = resource?.number;
switch (event) {
case 'order.paid':
sendWhatsApp(phone,
`Hi ${name}! ✅ Order #${orderId} confirmed. We're preparing it now. Thanks for shopping with us!`);
break;
case 'order.created':
sendWhatsApp(phone,
`Hi ${name}! We received order #${orderId}. Complete payment to confirm. Questions? Reply here.`);
break;
case 'order.status.updated':
sendWhatsApp(phone,
`Hi ${name}! Order #${orderId} status updated: ${resource?.status}. Track it in your email.`);
break;
case 'transaction.payment.refused':
sendWhatsApp(phone,
`Hi ${name}, your payment for order #${orderId} was declined. Try again: ${resource?.checkout_url}`);
break;
case 'cart.reminder':
sendWhatsApp(phone,
`Hi ${name}! You left items in your cart 🛒 Complete your order: ${resource?.checkout_url}`);
break;
case 'order.cancellation':
sendWhatsApp(phone,
`Hi ${name}, order #${orderId} was cancelled. Need help? Reply and we'll sort it out.`);
break;
}
});
app.listen(process.env.PORT || 3000, () => console.log('Webhook server running'));
Importante: corpo bruto para HMAC. A validação HMAC-SHA256 requer os bytes brutos exatos enviados pelo Yampi, não um objeto JSON parseado. O callback verify no express.json() captura o buffer bruto antes de o Express fazer o parse. Se você tentar re-serializar o corpo parseado, a assinatura nunca vai bater.
Etapa 4: Enviando WhatsApp via Whapi.Cloud /messages/text
A função sendWhatsApp faz uma única coisa: POST para https://gate.whapi.cloud/messages/text com três campos:
to: telefone no formato E.164 (ex.:+5511999998888); código de país ausente quebra as mensagens silenciosamentebody: o texto da mensagemAuthorization: Bearer YOUR_TOKEN: seu token de canal do Whapi.Cloud no header
O Whapi.Cloud dá às lojas Yampi controle total das mensagens e preço mensal fixo por canal. Não há tarifas por mensagem, nem fluxo de aprovação de template, nem lock-in de fornecedor — ao contrário de NI, Pluga e Interakt, que cobram por entrega ou limitam você a templates predefinidos.
Etapa 5: Equivalente em Python
Instale as dependências: pip install flask requests. A lógica é idêntica: validar assinatura, rotear evento, enviar mensagem.
import os, hmac, hashlib, base64, requests
from flask import Flask, request, abort
app = Flask(__name__)
WHAPI_TOKEN = os.getenv('WHAPI_TOKEN')
WEBHOOK_SECRET = os.getenv('YAMPI_WEBHOOK_SECRET')
def to_e164(phone):
digits = ''.join(filter(str.isdigit, phone))
return f"+{digits}" if digits.startswith('55') else f"+55{digits}"
def send_whatsapp(phone, text):
# to must be E.164 format: +5511999998888
requests.post('https://gate.whapi.cloud/messages/text',
json={'to': to_e164(phone), 'body': text},
headers={'Authorization': f'Bearer {WHAPI_TOKEN}'})
@app.route('/webhook/yampi', methods=['POST'])
def yampi_webhook():
sig = request.headers.get('X-Yampi-Hmac-Sha256', '')
expected = hmac.new(WEBHOOK_SECRET.encode(), request.get_data(), hashlib.sha256).digest()
if not hmac.compare_digest(sig, base64.b64encode(expected).decode()):
abort(401)
data = request.json
event = data.get('event')
res = data.get('resource', {})
phone = res.get('customer', {}).get('phone', '')
name = res.get('customer', {}).get('name', 'there').split()[0]
order_id = res.get('number', '')
msgs = {
'order.paid': f"Hi {name}! ✅ Order #{order_id} confirmed. We're on it!",
'order.created': f"Hi {name}! Order #{order_id} received. Complete payment to confirm.",
'order.status.updated': f"Hi {name}! Order #{order_id} status: {res.get('status')}",
'transaction.payment.refused':f"Hi {name}, payment declined for #{order_id}. Retry: {res.get('checkout_url')}",
'cart.reminder': f"Hi {name}! Your cart is waiting 🛒 {res.get('checkout_url')}",
'order.cancellation': f"Hi {name}, order #{order_id} cancelled. Reply if you need help.",
}
if event in msgs:
send_whatsapp(phone, msgs[event])
return 'OK', 200
if __name__ == '__main__':
app.run(port=int(os.getenv('PORT', 3000)))
Etapa 6: Testar com ngrok e Fazer Deploy em Produção
Para desenvolvimento local, exponha seu servidor com ngrok:
npx ngrok http 3000
Copie a URL HTTPS gerada (ex.: https://abc123.ngrok.io) e cole na configuração de webhook do Yampi. Dispare um pedido de teste no modo sandbox do Yampi. Você deve ver o webhook chegar ao seu servidor e uma mensagem do WhatsApp aparecer no seu número de teste.
Para produção, use qualquer host Node.js ou Python com HTTPS: Railway, Render, Fly.io, um VPS com nginx ou uma função serverless (Vercel, AWS Lambda). O requisito obrigatório é um endpoint HTTPS acessível publicamente que retorne 200 dentro da janela de timeout do Yampi.
Caminho Sem Código: Make e n8n
Sem servidor. Make (antigo Integromat) e n8n conectam os webhooks do Yampi ao Whapi.Cloud sem código. A configuração leva 30–60 minutos e não exige hospedagem.
O padrão nas duas ferramentas é o mesmo: um gatilho Webhook recebe o evento do Yampi, você roteia pelo campo event, depois um módulo HTTP POST envia para https://gate.whapi.cloud/messages/text com o seu token Bearer. A normalização do telefone para E.164 acontece em uma etapa intermediária.
Make (antigo Integromat)
- Adicione um gatilho Webhooks → Custom Webhook. Copie a URL para as configurações de webhook do Yampi.
- Adicione um módulo Router com um filtro por tipo de evento (
event = order.paid, etc.). - Após cada filtro, adicione um módulo HTTP → Make a Request: POST para
https://gate.whapi.cloud/messages/text, corpo JSON{"to": "{{phone}}", "body": "{{message}}"}, header de autorização com seu token do Whapi.Cloud. - Use as funções de texto do Make para normalizar o telefone para E.164. Consulte o guia de integração Make do Whapi.Cloud para um passo a passo completo.
n8n
- Adicione um nó gatilho Webhook. Defina o caminho como
/yampie cole a URL no Yampi. - Adicione um nó Switch roteando por
{{ $json.event }}. - Para cada branch, adicione um nó HTTP Request: POST para
https://gate.whapi.cloud/messages/text, corpo JSON comtoebody, header de token Bearer. Consulte o guia de integração n8n do Whapi.Cloud para detalhes completos de configuração.
Usuários do Zapier podem replicar o mesmo fluxo com um gatilho Webhooks by Zapier e uma ação POST apontando para o endpoint /messages/text do Whapi.Cloud.
A troca é real: Make e n8n adicionam custos de assinatura e impõem limites de operações de fluxo. Com mais de 1.000 pedidos por dia, esses limites geram fricção e custam mais do que usar diretamente a rota da REST API.
Casos de Uso Reais de Lojas Yampi
Os padrões abaixo vêm de lojas Yampi rodando o Whapi.Cloud em produção. Os números são das próprias lojas.
Recuperação de Carrinho com cart.reminder
Uma loja brasileira de acessórios de moda configurou um webhook cart.reminder para disparar 45 minutos após o abandono. A mensagem inclui o link do carrinho e o primeiro nome do cliente. Taxa de conversão em carrinhos recuperados: 18% — contra 4% da mesma mensagem por e-mail. A mensagem do WhatsApp é lida; o e-mail é ignorado ou filtrado. A loja recupera aproximadamente 140 pedidos extras por mês com essa única automação, sem custo por mensagem no plano fixo do Whapi.Cloud.
Recuperação de Pagamento Recusado com transaction.payment.refused
Recusa de pagamento é um momento de alta intenção — o comprador queria comprar e algo falhou tecnicamente. Uma loja de eletrônicos do Yampi envia um WhatsApp imediato no transaction.payment.refused com um link de nova tentativa e uma oferta de ajuda via chat. 31% dos compradores com pagamento recusado concluem a compra em até 10 minutos após receber a mensagem. O follow-up por e-mail da mesma loja para o mesmo evento converte em 6%.
Ciclo de Vida Completo de uma Loja de Moda de São Paulo
Uma loja de moda de médio porte em São Paulo passa todos os seis eventos webhook por um único canal do Whapi.Cloud: pedido criado → aviso de pagamento; pedido pago → confirmação com prazo estimado de envio; status atualizado (enviado) → link de rastreamento; status atualizado (entregue) → pedido de avaliação com código de desconto; cancelamento → oferta de reengajamento. Cada mensagem é personalizada com o primeiro nome do comprador e o número do pedido. O volume de tickets de suporte da loja caiu 40% após o lançamento — os compradores pararam de enviar e-mails porque já tinham a informação no WhatsApp.
O Que as Lojas Estão Dizendo
Três operadores (um dono de loja, um desenvolvedor e uma agência digital) descrevem o que mudou depois de colocar a integração no ar.
«Testamos duas outras plataformas de WhatsApp antes do Whapi.Cloud. Ambas cobravam por mensagem, o que tornava as campanhas de recuperação de carrinho não lucrativas no nosso volume de pedidos. Com a tarifa fixa do Whapi.Cloud, estamos economizando mais de 70% nos custos de mensagem e recebemos respostas da API abaixo de 200 ms. Quatro meses em produção, zero downtime.»
— Rafael S., dono de loja Yampi, São Paulo
«Integrei os webhooks do Yampi com o Whapi.Cloud em menos de duas horas. A documentação é clara e a validação de assinatura HMAC foi tranquila. Nossa equipe de suporte agora responde diretamente pelo WhatsApp. Sem mais atrasos por e-mail.»
— Mariana T., Desenvolvedora E-commerce
«Gerenciamos 14 lojas Yampi para nossos clientes usando a Partner API do Whapi.Cloud. Um template de integração, implantado em todas as contas. Nossos clientes pagam mensalmente e a gente gerencia tudo de forma centralizada. A configuração white-label levou uma tarde.»
— Diego F., Agência Digital, Rio de Janeiro
Comparação de Abordagens: REST API vs Sem Código vs Plataforma Fechada
O caminho certo depende da capacidade técnica, do volume de pedidos e da tolerância a dependência de fornecedor. Aqui está a comparação honesta em oito critérios.
| Critério | REST API (Whapi.Cloud) | Sem código (Make/n8n + Whapi) | Plataforma fechada (NI/Pluga/Interakt) |
|---|---|---|---|
| Flexibilidade | Total: lógica personalizada por evento | Média, fluxos visuais | Baixa, templates fixos |
| Controle de mensagem | 100% conteúdo personalizado | 100% conteúdo personalizado | Restrito aos templates da plataforma |
| Modelo de custo | Mensalidade fixa por canal | Taxas Make/n8n + Whapi fixo | Tarifas por mensagem + assinatura |
| Lock-in de fornecedor | Nenhum | Baixo | Alto |
| Tempo de configuração | ~2 horas | 30–60 minutos | Minutos (depois dependência contínua) |
| Escalabilidade | Ilimitada | Limitada pelas operações do plano | Escala, mas custos sobem rapidamente |
| Número do WhatsApp | Seu próprio número | Seu próprio número | Frequentemente exige um número novo |
| Mensagens bidirecionais | Sim, suporte a entrada completo | Sim (com configuração de webhook) | Depende do plano contratado |
Com mais de 300 pedidos por mês, a diferença de custo vs plataformas de cobrança por mensagem cobre a integração no primeiro mês. Com mais de 1.000 pedidos por dia, os limites de operações do caminho sem código também começam a gerar fricção que a rota da REST API evita completamente.
Para Agências: Venda como Serviço Gerenciado
Se você gerencia uma agência digital com várias lojas Yampi, essa integração passa de custo para receita. O programa white-label do Whapi.Cloud permite revender automação WhatsApp do Yampi para clientes lojistas com receita recorrente mensal previsível.
A estrutura prática: um template de integração implantado em todas as contas dos clientes via Partner API do Whapi.Cloud, cada cliente em seu próprio canal (seu próprio número de WhatsApp), cobrado mensalmente pela sua agência. O depoimento de Diego F. acima descreve exatamente isso: 14 lojas, um template, uma tarde de configuração.
O preço de agência normalmente fica em 3–5x o custo do canal do Whapi.Cloud, mais taxas de setup e um contrato mensal de gestão. A integração se torna um serviço proprietário: valor mensurável (carrinhos recuperados, novas tentativas de pagamento, redução de tickets de suporte) é justificável em cada conversa de renovação.
Detalhes do programa de parceiros: A Partner API do Whapi.Cloud permite criação, gerenciamento e monitoramento de canais sob uma única conta de parceiro. Acesse o programa de parceiros do Whapi.Cloud para preços e opções white-label.
Conformidade: LGPD e Opt-In do WhatsApp
Dois requisitos precisam estar em vigor antes da primeira mensagem: consentimento de tratamento de dados conforme a LGPD e opt-in explícito para mensagens do WhatsApp.
LGPD (Lei Geral de Proteção de Dados): Pela LGPD, você precisa de uma base legal documentada para tratar números de telefone de clientes e enviar mensagens automatizadas. A base mais comum é o consentimento coletado no checkout. Os termos e a política de privacidade da sua loja Yampi devem especificar que os números de telefone são usados para atualizações de pedidos e marketing via WhatsApp.
Opt-in do WhatsApp: A Política de Negócios do WhatsApp exige que os destinatários optem explicitamente por receber mensagens do seu número comercial. Colete isso no checkout com uma checkbox claramente identificada: «Concordo em receber atualizações de pedidos e promoções via WhatsApp.» Não marque a caixa previamente.
Gerenciamento de descadastro: Forneça um mecanismo claro de opt-out. A abordagem mais simples: trate qualquer mensagem recebida contendo «STOP» ou «Parar» sinalizando o registro do cliente e excluindo-o de futuras mensagens automáticas. Isso é um handler pontual no webhook de mensagens recebidas do Whapi.Cloud.
Mensagens não conformes arriscam multas da LGPD e bloqueio do número de WhatsApp. A checkbox de consentimento no checkout e um handler STOP no seu servidor webhook levam algumas horas para implementar. Faça isso antes de ir ao ar.
Comece a Construir de Graça
O sandbox gratuito do Whapi.Cloud permite enviar mensagens de teste no WhatsApp sem número de produção. Conecte seus webhooks do Yampi, valide sua implementação HMAC e confirme a entrega de ponta a ponta antes de ir ao ar. Sem cartão de crédito.
Crie Sua Conta Sandbox GratuitaLeva 2 minutos. O sandbox gratuito inclui acesso completo à API e documentação para desenvolvedores.









