Pular para o conteúdo principal

❓ Preguntas Frecuentes (FAQ)

Encuentra respuestas rápidas a las dudas más comunes sobre botones de WhatsApp en Stevo.


🔘 Preguntas Generales

¿Los botones funcionan en todos los dispositivos?

, los botones son nativos de WhatsApp y funcionan en:

  • Android (versión 2.21.0 o superior)
  • iOS (versión 2.21.0 o superior)
  • WhatsApp Web
  • WhatsApp Business

¿Los botones funcionan en grupos?

No, actualmente los botones interactivos funcionan solo en chats privados (1 a 1). Esta es una limitación de WhatsApp, no de Stevo.

Alternativa para grupos:

  • Envía el mensaje con botones en privado a cada miembro
  • Usa mensajes de texto con opciones numeradas en grupos

¿Puedo usar emojis en los botones?

, puedes usar emojis en:

  • Títulos
  • Descripciones
  • Texto de botones
  • Opciones de lista

Ejemplo:

#bt|🍕 Menú|Elige tu favorito|¡Buen provecho!|🍕 Pizza*pizza/🍔 Burger*burger/🌮 Taco*taco

¿Cuántas veces puede un usuario hacer clic en un botón?

Los botones son de un solo uso por mensaje. Una vez que el usuario hace clic:

  • El botón queda "desactivado" visualmente
  • El usuario no puede cambiar su elección
  • Necesitarías enviar un nuevo mensaje con botones si quieres otra interacción

¿Puedo editar un mensaje con botones después de enviarlo?

No, los mensajes con botones no pueden ser editados después del envío. Si necesitas cambiar algo, debes:

  1. Eliminar el mensaje (si aún es posible)
  2. Enviar un nuevo mensaje corregido

🔧 Solución de Problemas

El botón no aparece / El mensaje se envía como texto plano

Causas comunes:

  1. Error de sintaxis en el comando

    ❌ Incorrecto: #bt|Titulo|Desc|Pie|Opcion1*id1|Opcion2*id2
    ✅ Correcto: #bt|Titulo|Desc|Pie|Opcion1*id1/Opcion2*id2

    Nota: Usa / para separar opciones, no |

  2. Espacios o caracteres especiales

    • No uses saltos de línea en el comando
    • Evita caracteres especiales como: < > { } [ ]
  3. API no configurada correctamente

    • Verifica que estés usando la API correcta
    • Confirma tu token de acceso
  4. Límites excedidos

    • Reply buttons: máximo 3 opciones
    • List buttons: máximo 10 opciones

El usuario no recibe los botones

Verifica:

  1. Versión de WhatsApp del usuario

    • Debe ser 2.21.0 o superior
    • Pídele actualizar la app
  2. Tipo de chat

    • ¿Es un grupo? Los botones no funcionan en grupos
    • ¿Es un broadcast? Funcionará solo si el contacto te tiene agendado
  3. Dispositivo compatible

    • Algunos dispositivos muy antiguos pueden tener problemas
    • Prueba en WhatsApp Web

Los botones aparecen pero no responden al clic

Posibles causas:

  1. Problema temporal de WhatsApp

    • Espera unos minutos
    • Reinicia WhatsApp
    • Verifica la conexión a internet
  2. Caché del dispositivo

    • Limpia el caché de WhatsApp
    • Reinicia el teléfono
  3. Webhook no configurado

    • Si usas automatizaciones, verifica tu webhook
    • Confirma que tu servidor esté recibiendo las respuestas

El botón PIX no abre el banco

Soluciones:

  1. Verifica la clave PIX

    • ¿Está activa en tu banco?
    • ¿El formato es correcto? (solo números para teléfono/CPF)
  2. App bancaria no instalada

    • El usuario necesita tener un app de banco con PIX
    • Ofrece alternativas (QR code, código PIX)
  3. Dispositivo iOS

    • Algunos bancos en iOS requieren configuración adicional
    • Prueba con otro método de pago

El botón de llamada no funciona

Verifica:

  1. Formato del número

    ❌ Incorrecto: +55 (27) 98112-0473
    ✅ Correcto: 5527981120473
    • Sin espacios, paréntesis o guiones
    • Incluir código de país
  2. Permisos del teléfono

    • El usuario debe tener permisos de llamada habilitados
    • Verifica que no esté en modo avión

El botón URL no redirige

Problemas comunes:

  1. URL sin protocolo

    ❌ Incorrecto: www.google.com
    ✅ Correcto: https://www.google.com
  2. URL inválida o caída

    • Verifica que el sitio esté online
    • Prueba la URL en el navegador primero
  3. Firewall o restricciones

    • Algunos países/redes bloquean ciertos sitios
    • Verifica si la URL es accesible

📊 Mejores Prácticas

Validación antes de enviar

Siempre valida tus comandos:

// Ejemplo de validación básica
function validarComando(comando) {
// Verificar que comience con #
if (!comando.startsWith('#')) return false;

// Verificar separadores correctos
if (comando.includes('|') && comando.includes('/')) {
// Para reply y list buttons
return true;
}

return true;
}

Testing

Antes de usar en producción:

  1. ✅ Prueba en un chat de prueba
  2. ✅ Verifica en diferentes dispositivos
  3. ✅ Confirma que el webhook funciona
  4. ✅ Prueba todos los caminos posibles
  5. ✅ Verifica las respuestas del sistema

Manejo de errores

Siempre ten un plan B:

Mensaje con botón: [Enviado]

Después de 2 minutos sin respuesta:
"¿Tuviste problemas con los botones?
Puedes responder con:
1 - Opción A
2 - Opción B
3 - Opción C"

🆘 Casos Especiales

Usuario con WhatsApp desactualizado

Detección:

// Si el webhook no recibe la respuesta del botón
// y recibes un mensaje de texto en su lugar
if (mensaje.tipo === 'texto' && ultimoEnvio === 'botón') {
// Usuario probablemente tiene versión antigua
enviarMensajeSimple("Parece que tu WhatsApp necesita actualización...");
}

Solución:

  • Envía instrucciones de actualización
  • Ofrece alternativa con menú de texto

Límite de rate (muchos mensajes)

Si envías muchos botones seguidos, WhatsApp puede:

  • Retardar las entregas
  • Marcar como spam
  • Bloquear temporalmente

Prevención:

  • No envíes más de 1 mensaje por segundo
  • Usa delays entre mensajes masivos
  • Implementa queue system

Botones en conversaciones activas

Si hay múltiples mensajes con botones:

  • Cada botón es independiente
  • El usuario puede hacer clic en cualquiera
  • Tu sistema debe manejar respuestas "fuera de orden"

Tip: Invalida botones antiguos después de cierto tiempo


🔍 Debugging

Ver el comando exacto que se envía

// Log antes de enviar
console.log('Comando:', comando);
console.log('Longitud:', comando.length);
console.log('Caracteres especiales:', /[^\x00-\x7F]/.test(comando));

Verificar respuesta del webhook

// Ejemplo de log de webhook
app.post('/webhook', (req, res) => {
console.log('Webhook recibido:', JSON.stringify(req.body, null, 2));

if (req.body.type === 'button_reply') {
console.log('Botón clicado:', req.body.button_id);
}

res.sendStatus(200);
});

📞 Soporte

Aún tienes problemas?

  1. Revisa la documentación oficial:

  2. Comunidad:

    • Grupo de WhatsApp de usuarios Stevo
    • Canal de Telegram
  3. Soporte directo:


💡 Tips Pro

Performance

  • ⚡ Cachea comandos comunes (no regeneres cada vez)
  • ⚡ Usa templates para comandos repetitivos
  • ⚡ Pre-valida antes de enviar a la API

Monitoreo

  • 📊 Registra qué botones tienen más clicks
  • 📊 Mide tiempo de respuesta de usuarios
  • 📊 Identifica botones que causan confusión

UX

  • 🎨 Mantén consistencia en el estilo
  • 🎨 Usa emojis para mejorar legibilidad
  • 🎨 Textos cortos y claros
  • 🎨 Siempre ofrece "salida" (cancelar, volver)

🔄 Actualizaciones

Esta documentación se actualiza regularmente. Última actualización: Febrero 2026

Novedades recientes:

  • ✅ Soporte mejorado para emojis
  • ✅ Mejor detección de errores
  • ✅ Nuevos ejemplos de uso

✅ Checklist de Implementación

Antes de poner en producción:

  • Comandos validados y testeados
  • Webhook configurado y funcionando
  • Plan B para errores implementado
  • Rate limiting configurado
  • Monitoreo activo
  • Documentación interna creada
  • Equipo capacitado
  • Pruebas con usuarios reales realizadas

¿Encontraste un error en la documentación o tienes una sugerencia? ¡Contáctanos! 💬