Mensajes Entrantes inbound_message
Estos eventos notifican cuando un usuario envía un mensaje a tu número de WhatsApp Business. Tu servidor recibirá una solicitud POST por cada mensaje recibido. Usa el campo event para identificar el tipo de mensaje y procesarlo en consecuencia.Texto
Mensaje de texto plano enviado por el usuario. El contenido está en el campo message.Campos del payload.
| Campo | Tipo | Descripción |
|---|---|---|
| event | string | Valor fijo: inbound_message.text |
| messageId | string | ID único del mensaje |
| fromWhatsAppNumberId | string | ID del número de WhatsApp Business receptor |
| fromWhatsAppNumber | string | Número del usuario remitente (E.164) |
| toWhatsAppNumber | string | Tu número de WhatsApp Business (E.164) |
| receivedAt | string (ISO 8601) | Fecha y hora de recepción |
| message | string | Contenido del mensaje de texto |
Payload de ejemplo.
{
"event": "inbound_message.text",
"messageId": "wamid.HBjLMTY1NTU1MDExM18xX-GGLmVBQkZGRjg0QzQ4NkFENEUwRAA=",
"fromWhatsAppNumberId": "109876543210987",
"fromWhatsAppNumber": "+573001234567",
"toWhatsAppNumber": "+15550987654",
"receivedAt": "2024-10-21T18:30:00Z",
"message": "Hola, me gustaría más información."
}
Audio
Mensaje de audio enviado por el usuario. Usa el mediaId para descargar el archivo desde la API de Meta.Campos del payload.
| Campo | Tipo | Descripción |
|---|---|---|
| event | string | Valor fijo: inbound_message.audio |
| messageId | string | ID único del mensaje |
| fromWhatsAppNumberId | string | ID del número de WhatsApp Business receptor |
| fromWhatsAppNumber | string | Número del usuario remitente (E.164) |
| toWhatsAppNumber | string | Tu número de WhatsApp Business (E.164) |
| receivedAt | string (ISO 8601) | Fecha y hora de recepción |
| mediaId | string | ID del archivo en los servidores de Meta |
| mimeType | string | Tipo MIME del archivo (ej. audio/ogg; codecs=opus) |
| sha256 | string | Hash SHA-256 del archivo para verificar integridad |
Payload de ejemplo.
{
"event": "inbound_message.audio",
"messageId": "wamid.HBjLMTY1NTU1MDExM18xX-GGLmVBQkZGRjg0QzQ4NkFENEUwRAA=",
"fromWhatsAppNumberId": "109876543210987",
"fromWhatsAppNumber": "+573001234567",
"toWhatsAppNumber": "+15550987654",
"receivedAt": "2024-10-21T18:30:00Z",
"mediaId": "1234567890123456",
"mimeType": "audio/ogg; codecs=opus",
"sha256": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"
}
Documento
Archivo de documento enviado por el usuario (PDF, Word, Excel, etc.). Incluye nombre de archivo y opcionalmente un caption.Campos del payload.
| Campo | Tipo | Descripción |
|---|---|---|
| event | string | Valor fijo: inbound_message.document |
| messageId | string | ID único del mensaje |
| fromWhatsAppNumberId | string | ID del número de WhatsApp Business receptor |
| fromWhatsAppNumber | string | Número del usuario remitente (E.164) |
| toWhatsAppNumber | string | Tu número de WhatsApp Business (E.164) |
| receivedAt | string (ISO 8601) | Fecha y hora de recepción |
| mediaId | string | ID del archivo en los servidores de Meta |
| mimeType | string | Tipo MIME del archivo (ej. application/pdf) |
| sha256 | string | Hash SHA-256 del archivo |
| fileName | string | Nombre original del archivo |
| caption | string | Texto adjunto al documento (opcional) |
Payload de ejemplo.
{
"event": "inbound_message.document",
"messageId": "wamid.HBjLMTY1NTU1MDExM18xX-GGLmVBQkZGRjg0QzQ4NkFENEUwRAA=",
"fromWhatsAppNumberId": "109876543210987",
"fromWhatsAppNumber": "+573001234567",
"toWhatsAppNumber": "+15550987654",
"receivedAt": "2024-10-21T18:30:00Z",
"mediaId": "1234567890123456",
"mimeType": "application/pdf",
"sha256": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
"fileName": "contrato_2024.pdf",
"caption": "Adjunto el contrato firmado."
}
Imagen
Imagen enviada por el usuario. Puede incluir un caption descriptivo.Campos del payload.
| Campo | Tipo | Descripción |
|---|---|---|
| event | string | Valor fijo: inbound_message.image |
| messageId | string | ID único del mensaje |
| fromWhatsAppNumberId | string | ID del número de WhatsApp Business receptor |
| fromWhatsAppNumber | string | Número del usuario remitente (E.164) |
| toWhatsAppNumber | string | Tu número de WhatsApp Business (E.164) |
| receivedAt | string (ISO 8601) | Fecha y hora de recepción |
| mediaId | string | ID del archivo en los servidores de Meta |
| mimeType | string | Tipo MIME de la imagen (ej. image/jpeg) |
| sha256 | string | Hash SHA-256 del archivo |
| caption | string | Texto adjunto a la imagen (opcional) |
Payload de ejemplo.
{
"event": "inbound_message.image",
"messageId": "wamid.HBjLMTY1NTU1MDExM18xX-GGLmVBQkZGRjg0QzQ4NkFENEUwRAA=",
"fromWhatsAppNumberId": "109876543210987",
"fromWhatsAppNumber": "+573001234567",
"toWhatsAppNumber": "+15550987654",
"receivedAt": "2024-10-21T18:30:00Z",
"mediaId": "1234567890123456",
"mimeType": "image/jpeg",
"sha256": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
"caption": "Aquí mi comprobante de pago."
}
Sticker
Sticker enviado por el usuario. Los stickers de WhatsApp usan el formato WebP y no incluyen caption.Campos del payload.
| Campo | Tipo | Descripción |
|---|---|---|
| event | string | Valor fijo: inbound_message.sticker |
| messageId | string | ID único del mensaje |
| fromWhatsAppNumberId | string | ID del número de WhatsApp Business receptor |
| fromWhatsAppNumber | string | Número del usuario remitente (E.164) |
| toWhatsAppNumber | string | Tu número de WhatsApp Business (E.164) |
| receivedAt | string (ISO 8601) | Fecha y hora de recepción |
| mediaId | string | ID del sticker en los servidores de Meta |
| mimeType | string | Siempre image/webp |
| sha256 | string | Hash SHA-256 del archivo |
Payload de ejemplo.
{
"event": "inbound_message.sticker",
"messageId": "wamid.HBjLMTY1NTU1MDExM18xX-GGLmVBQkZGRjg0QzQ4NkFENEUwRAA=",
"fromWhatsAppNumberId": "109876543210987",
"fromWhatsAppNumber": "+573001234567",
"toWhatsAppNumber": "+15550987654",
"receivedAt": "2024-10-21T18:30:00Z",
"mediaId": "1234567890123456",
"mimeType": "image/webp",
"sha256": "a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"
}
Botón
Se dispara cuando el usuario presiona un botón de respuesta rápida de una plantilla. El campo payload contiene el identificador definido en la plantilla.Campos del payload.
| Campo | Tipo | Descripción |
|---|---|---|
| event | string | Valor fijo: inbound_message.button |
| messageId | string | ID único del mensaje |
| fromWhatsAppNumberId | string | ID del número de WhatsApp Business receptor |
| fromWhatsAppNumber | string | Número del usuario remitente (E.164) |
| toWhatsAppNumber | string | Tu número de WhatsApp Business (E.164) |
| receivedAt | string (ISO 8601) | Fecha y hora de recepción |
| text | string | Texto visible del botón que fue presionado |
| payload | string | Identificador definido en la plantilla para ese botón |
Payload de ejemplo.
{
"event": "inbound_message.button",
"messageId": "wamid.HBjLMTY1NTU1MDExM18xX-GGLmVBQkZGRjg0QzQ4NkFENEUwRAA=",
"fromWhatsAppNumberId": "109876543210987",
"fromWhatsAppNumber": "+573001234567",
"toWhatsAppNumber": "+15550987654",
"receivedAt": "2024-10-21T18:30:00Z",
"text": "Sí, confirmar",
"payload": "CONFIRM_ORDER_123"
}
Interactivo
Se dispara cuando el usuario selecciona una opción en un mensaje interactivo. El campo type indica si fue una lista (list_reply) o un botón interactivo (button_reply).Campos del payload.
| Campo | Tipo | Descripción |
|---|---|---|
| event | string | Valor fijo: inbound_message.interactive |
| messageId | string | ID único del mensaje |
| fromWhatsAppNumberId | string | ID del número de WhatsApp Business receptor |
| fromWhatsAppNumber | string | Número del usuario remitente (E.164) |
| toWhatsAppNumber | string | Tu número de WhatsApp Business (E.164) |
| receivedAt | string (ISO 8601) | Fecha y hora de recepción |
| type | string | Tipo de interacción: list_reply o button_reply |
| itemId | string | ID del ítem seleccionado por el usuario |
| title | string | Título del ítem seleccionado |
| description | string | Descripción del ítem (disponible en list_reply) |
Payload de ejemplo.
{
"event": "inbound_message.interactive",
"messageId": "wamid.HBjLMTY1NTU1MDExM18xX-GGLmVBQkZGRjg0QzQ4NkFENEUwRAA=",
"fromWhatsAppNumberId": "109876543210987",
"fromWhatsAppNumber": "+573001234567",
"toWhatsAppNumber": "+15550987654",
"receivedAt": "2024-10-21T18:30:00Z",
"type": "list_reply",
"itemId": "item_1",
"title": "Soporte técnico",
"description": "Problemas con la plataforma"
}
Si requiere asistencia o tiene un problema, envienos un mensaje para poder ayudarlo
soporte@onurix.com