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.
CampoTipoDescripción
eventstringValor fijo: inbound_message.text
messageIdstringID único del mensaje
fromWhatsAppNumberIdstringID del número de WhatsApp Business receptor
fromWhatsAppNumberstringNúmero del usuario remitente (E.164)
toWhatsAppNumberstringTu número de WhatsApp Business (E.164)
receivedAtstring (ISO 8601)Fecha y hora de recepción
messagestringContenido 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.
CampoTipoDescripción
eventstringValor fijo: inbound_message.audio
messageIdstringID único del mensaje
fromWhatsAppNumberIdstringID del número de WhatsApp Business receptor
fromWhatsAppNumberstringNúmero del usuario remitente (E.164)
toWhatsAppNumberstringTu número de WhatsApp Business (E.164)
receivedAtstring (ISO 8601)Fecha y hora de recepción
mediaIdstringID del archivo en los servidores de Meta
mimeTypestringTipo MIME del archivo (ej. audio/ogg; codecs=opus)
sha256stringHash 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.
CampoTipoDescripción
eventstringValor fijo: inbound_message.document
messageIdstringID único del mensaje
fromWhatsAppNumberIdstringID del número de WhatsApp Business receptor
fromWhatsAppNumberstringNúmero del usuario remitente (E.164)
toWhatsAppNumberstringTu número de WhatsApp Business (E.164)
receivedAtstring (ISO 8601)Fecha y hora de recepción
mediaIdstringID del archivo en los servidores de Meta
mimeTypestringTipo MIME del archivo (ej. application/pdf)
sha256stringHash SHA-256 del archivo
fileNamestringNombre original del archivo
captionstringTexto 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.
CampoTipoDescripción
eventstringValor fijo: inbound_message.image
messageIdstringID único del mensaje
fromWhatsAppNumberIdstringID del número de WhatsApp Business receptor
fromWhatsAppNumberstringNúmero del usuario remitente (E.164)
toWhatsAppNumberstringTu número de WhatsApp Business (E.164)
receivedAtstring (ISO 8601)Fecha y hora de recepción
mediaIdstringID del archivo en los servidores de Meta
mimeTypestringTipo MIME de la imagen (ej. image/jpeg)
sha256stringHash SHA-256 del archivo
captionstringTexto 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.
CampoTipoDescripción
eventstringValor fijo: inbound_message.sticker
messageIdstringID único del mensaje
fromWhatsAppNumberIdstringID del número de WhatsApp Business receptor
fromWhatsAppNumberstringNúmero del usuario remitente (E.164)
toWhatsAppNumberstringTu número de WhatsApp Business (E.164)
receivedAtstring (ISO 8601)Fecha y hora de recepción
mediaIdstringID del sticker en los servidores de Meta
mimeTypestringSiempre image/webp
sha256stringHash 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.
CampoTipoDescripción
eventstringValor fijo: inbound_message.button
messageIdstringID único del mensaje
fromWhatsAppNumberIdstringID del número de WhatsApp Business receptor
fromWhatsAppNumberstringNúmero del usuario remitente (E.164)
toWhatsAppNumberstringTu número de WhatsApp Business (E.164)
receivedAtstring (ISO 8601)Fecha y hora de recepción
textstringTexto visible del botón que fue presionado
payloadstringIdentificador 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.
CampoTipoDescripción
eventstringValor fijo: inbound_message.interactive
messageIdstringID único del mensaje
fromWhatsAppNumberIdstringID del número de WhatsApp Business receptor
fromWhatsAppNumberstringNúmero del usuario remitente (E.164)
toWhatsAppNumberstringTu número de WhatsApp Business (E.164)
receivedAtstring (ISO 8601)Fecha y hora de recepción
typestringTipo de interacción: list_reply o button_reply
itemIdstringID del ítem seleccionado por el usuario
titlestringTítulo del ítem seleccionado
descriptionstringDescripció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