# Asistente de configuración

> plazbot whatsapp setup: conecta tu número y prueba enviar y recibir tu primer mensaje.

Fuente: https://developers.plazbot.com/whatsapp/setup/

## plazbot whatsapp setup

Un asistente de 4 pasos para dejar WhatsApp funcionando y comprobarlo con tu propio celular. Necesita una terminal interactiva; los textos del asistente están en inglés.

```bash
plazbot whatsapp setup [opciones]
```

### Parámetros

| Parámetro | Flag | Requerido | Descripción |
|-----------|------|-----------|-------------|
| Sin navegador | `--no-browser` | No | No abre el navegador; solo imprime los links |

### Ejemplos

```bash
# Configurar WhatsApp paso a paso
plazbot whatsapp setup

# Imprimir los links en lugar de abrir el navegador
plazbot whatsapp setup --no-browser
```

## Paso 1 · Tu cuenta

Usa la sesión activa. Si no tienes sesión, inicia el [login por navegador](https://developers.plazbot.com/whatsapp/login) sin salir del asistente.

```text
[1/4] Your account
✓ Mi Empresa (LA) · tu@empresa.com
```

Sin sesión verás `No active session. Let's sign in from the browser.` y se abre el login.

## Paso 2 · Tu número de WhatsApp

Si ya tienes números conectados, eliges uno. Si está inactivo, el asistente lo activa. También puedes conectar uno nuevo:

```text
[2/4] Your WhatsApp number
? Which number do you want to use?
❯ Soporte (+51 912 345 678)
──────────────
Connect a new number
```

Al conectar uno nuevo eliges el tipo (`How do you want to connect WhatsApp?`):

- **WhatsApp API**: número nuevo o dedicado, ideal para enviar a escala.
- **WhatsApp Business**: tu app actual del celular en coexistencia. Se vincula escaneando un QR.

Se abre el registro de Meta en tu navegador (inicias sesión con Facebook, eliges la cuenta de WhatsApp Business y verificas el número). El asistente espera hasta 10 minutos y avisa cuando detecta el número:

```text
✔ Number detected: Soporte (+51 912 345 678)
✔ Number active
```

Si no se detecta ningún número a tiempo, el asistente imprime `Run plazbot whatsapp setup again when you finish the Meta sign-up.` y termina con código 1. Es el mismo flujo de [`plazbot whatsapp connect`](https://developers.plazbot.com/whatsapp/cli/connect).

> **Info:** Los números conectados por QR (no oficial) no aparecen en este asistente: WhatsApp for Developers usa solo la API oficial de Meta.

## Paso 3 · Prueba de ida y vuelta

1. Escribe el celular desde el que vas a escribir, con código de país.
2. Desde ese celular envía **"hello"** al número conectado. El asistente muestra un atajo `wa.me` que abre WhatsApp con el mensaje escrito.
3. Cuando llega tu mensaje, el asistente pregunta si responde desde la API.

```text
[3/4] Round-trip test
? Which phone will you write from? (international format, e.g. +51912345678) +51987654321

From that phone, send "hello" on WhatsApp to +51912345678
Shortcut: https://wa.me/51912345678?text=hello
Your message creates the contact and opens the 24h window in which WhatsApp allows free-form replies.

✔ Message received: "hello"
? Reply to you from the API? Yes
✔ Message sent. Check your WhatsApp.
```

En tu celular llega una respuesta que empieza con "It works!" y termina con "This message was sent by your code through the Plazbot API."

Si tu mensaje no llega en 5 minutos, verás `Your message did not arrive within 5 minutes.`: revisa que el número esté activo y vuelve a ejecutar el asistente.

> **Tip:** Escribir primero es obligatorio: crea el contacto y abre la ventana de 24 horas en la que WhatsApp permite responder con texto libre. Ver [Conceptos clave](https://developers.plazbot.com/whatsapp/conceptos).

> **Importante:** Si el número tiene un agente IA asignado, el agente también responderá a tu "hello". Para una prueba limpia usa un número sin agente.

## Paso 4 · Webhook (opcional)

Escribe la URL `https://` que recibirá los mensajes entrantes del número, o presiona Enter para omitirlo:

```text
[4/4] Webhook (optional)
? Webhook URL to receive incoming messages (Enter to skip): https://tu-app.com/api/whatsapp
✔ Webhook registered: https://tu-app.com/api/whatsapp
```

Si lo omites, el asistente te recuerda el comando para hacerlo después: `plazbot whatsapp register-webhook -p +51912345678 -u <url>`.

Para probar sin servidor propio puedes usar una URL de [webhook.site](https://webhook.site). El formato del mensaje está en [Recibir mensajes](https://developers.plazbot.com/whatsapp/recibir-mensajes).

## Al final: código para tu app

El asistente imprime el snippet del SDK con tu workspace, tu zona y tu celular:

```ts send.ts
import { Plazbot } from "plazbot"

const bot = new Plazbot({
apiKey:      process.env.PLAZBOT_KEY!,
workspaceId: "wok_...",
zone:        "LA",
})

await bot.message.onWhatsappMessage({
to:      "51912345678",
message: "Hello from my app",
})
```

Para tu servidor crea una API key en el panel, **Configuración → Developer**, y guárdala en `PLAZBOT_KEY`.

> **Nota:** Sin terminal interactiva el asistente falla con `The WhatsApp setup wizard needs an interactive terminal.`; en ese caso usa los comandos individuales: `plazbot whatsapp connect`, `send-message` y `register-webhook`. Si cancelas con Ctrl+C imprime `Cancelled.`.

Si algo falla, revisa [Solución de problemas](https://developers.plazbot.com/whatsapp/solucion-de-problemas).
