Documentación oficial

Wis.Chat API.
Mensajería WhatsApp a escala.

Gateway seguro sobre WhatsApp Cloud API de Meta. Compatible con el formato oficial, con validación automática de reputación, registro completo de envíos y auditoría transparente. Drop-in replacement: si ya integraste con Meta, integraste con Wis.Chat.

BASE URLhttps://api.wis.chat
VERSIÓNv22.0
FORMATOJSON · UTF-8
STATUS● Operacional

Descripción general

Wis.Chat es la plataforma de mensajería conversacional de NOUXSOFT que actúa como gateway seguro sobre la API oficial de WhatsApp Cloud (Meta). El gateway valida la reputación del número antes de cada envío, registra todo el tráfico para auditoría y expone una interfaz 100% compatible con el formato JSON de Meta.

Esto significa que si ya tienes código integrado contra Meta Cloud API, sólo cambias la URL base y el token: el resto del payload no se toca.

Características principales

Compatible con Meta

Mismo formato JSON que graph.facebook.com. Migración sin reescribir código.

Ver estructura →
🛡

Reputación protegida

Bloqueo automático si la calidad del número cae. Tu WABA se mantiene saludable.

Ver sistema →
🔔

Webhooks en tiempo real

Recibe mensajes entrantes y cambios de estado al instante. Ejemplos en PHP, Node.js, Python y C#.

Ver webhooks →

Empezar en 3 pasos

  1. Obtén el ID de la línea y el código de seguridad desde el panel en wis.chat/wischat → Líneas → tu número. El ID de la línea es el identificador numérico que aparece junto a tu número certificado y se usa en cada URL de la API.
  2. Desde tu WhatsApp personal, envía cualquier mensaje al número de Wis.Chat (el número que tienes certificado en tu línea). Esto abre la ventana de 24 horas que permite que la API te responda con texto libre.
  3. Haz tu primera llamada al endpoint POST https://api.wis.chat/v22.0/{tid}/messages con un mensaje de tipo text dirigido a tu propio número. Verifica que llegue al WhatsApp y consulta el estado vía GET /v22.0/{tid}/messages/{wamid}.

Regla fundamental — ventana de 24 horas: WhatsApp solo permite enviar mensajes de tipo text, image, document, audio, video o interactive a un número que te haya escrito primero. Esa conversación queda abierta por 24 horas desde el último mensaje del cliente.

Para iniciar una conversación con un número que nunca te escribió, o si pasaron más de 24 horas desde su último mensaje, debes usar una plantilla aprobada por Meta.

Comando de prueba listo para copiar

Reemplaza TU_ID_LINEA por el ID de tu línea, TU_CODIGO_SEGURIDAD por tu token y 593999999999 por tu propio número de WhatsApp (el mismo desde el cual escribiste al número de Wis.Chat en el paso 2):

curl -X POST "https://api.wis.chat/v22.0/TU_ID_LINEA/messages" \
  -H "Authorization: Bearer TU_CODIGO_SEGURIDAD" \
  -H "Content-Type: application/json" \
  -d '{
    "messaging_product": "whatsapp",
    "to": "593999999999",
    "type": "text",
    "text": {
      "body": "Hola 👋 estoy probando WhatsApp con la API de Wis.Chat"
    }
  }'

Sobre el campo to: es el número del destinatario en formato internacional E.164 sin el signo +. Ejemplos: 593999999999 (Ecuador), 521555123456 (México), 14155551234 (Estados Unidos). El número debe tener WhatsApp activo.

Si recibes el error outside_24h_window es porque el número destino no te ha escrito en las últimas 24 horas. Pídele al cliente que envíe cualquier mensaje al número de Wis.Chat, o usa el ejemplo con plantilla que aparece más abajo.

Alternativa: prueba rápida con plantilla hello_world

Si no quieres depender de la ventana de 24 horas, puedes probar la API con la plantilla hello_world que viene pre-aprobada por defecto en toda cuenta de WhatsApp Business. Esta plantilla se sincroniza automáticamente al panel y no requiere aprobación previa: es ideal para confirmar conectividad y autenticación incluso si el destinatario nunca te ha escrito.

{
  "messaging_product": "whatsapp",
  "to": "593999999999",
  "type": "template",
  "template": {
    "name": "hello_world",
    "language": { "code": "en_US" }
  }
}

Sobre hello_world: el mensaje llega en inglés con un texto fijo ("Hello World!") que no se puede modificar — es solo para verificación técnica. Para producción crea tus propias plantillas en español desde Meta Business Manager; aparecerán automáticamente en tu panel de Wis.Chat. Más detalles en Plantilla (HSM).

Arquitectura

Wis.Chat se interpone entre tu aplicación y Meta. Antes de reenviar el envío, valida que el número tenga reputación suficiente. Después del envío, almacena el resultado y registra el log.

   ┌──────────────┐   1) POST envío      ┌──────────────────────┐
   │  Tu sistema  │ ─────────────────►   │  api.wis.chat        │
   │  (CRM/ERP)   │  /v22.0/{tid}/msgs   │  · valida tid+token  │
   └──────────────┘                      │  · checa reputación  │
            ▲   ▲                        │  · reenvía a Meta    │
            │   │                        └──────────┬───────────┘
            │   │  4) Respuesta JSON                │ 2) Forward
            │   │     { wamid }                     ▼
            │   │                        ┌──────────────────────┐
            │   │                        │  graph.facebook.com  │
            │   │                        │   (Meta Cloud API)   │
            │   │                        └──────────┬───────────┘
            │   │                                   │
            │   │       3) Estados (sent /         │
            │   │          delivered / read)       │
            │   └──────────────────────────────────┘
            │
            │   5) GET estado por wamid o por número
            │      /v22.0/{tid}/messages/{wamid}
            │      /v22.0/{tid}/messages?phone=...
            └──────────────────────────► api.wis.chat

¿Qué tipo de mensaje vas a enviar?

📋 Plantillas (HSM)

Para iniciar conversación, OTPs, recordatorios, marketing y notificaciones masivas. Requieren aprobación de Meta.

Documentación →

💬 Texto libre

Sólo dentro de la ventana de 24h tras un mensaje del cliente. Soporta formato WhatsApp.

Documentación →

📎 Multimedia

Imagen, video, audio, documento, ubicación. Por URL pública o por media_id.

Documentación →

🎛 Interactivos

Botones de respuesta rápida (máx 3) y listas desplegables (máx 10 opciones).

Documentación →