Automatizar mensajes de WhatsApp usando PHP

1 de abril de 2025

Lleva la comunicación con tus clientes al siguiente nivel enviando mensajes automatizados de WhatsApp con PHP y la API de Wassenger. Ya sean recordatorios, ofertas personalizadas o actualizaciones de promociones, llega a tu audiencia en el momento adecuado, cada vez.

En esta guía, te mostraremos cómo conectar PHP con Wassenger para optimizar tus mensajes, mejorar el engagement y aumentar las ventas. Es una configuración simple con grandes resultados, perfecta para empresas que buscan automatizar y crecer.

🫣 ¿No quieres usar programación? ¡No hay problema! Explora nuestra nueva función de Campañas de WhatsApp sin código. ¡Importa tus contactos, define un mensaje, establece una fecha de envío y relájate! 🥳 🥳

🤩 🤖 Wassenger es una plataforma de comunicación completa y una solución de API para WhatsApp. Explora más de 100 casos de uso de la API y automatiza cualquier cosa en WhatsApp registrándote para una prueba gratuita y comenzando en minutos!

Requisitos

  • Tener un número de WhatsApp ya vinculado a la plataforma y en línea.
  • Número de teléfono del destinatario con prefijo internacional en formato E164. Ejemplo: +12345678900. Valida el formato del número de teléfono aquí.

Endpoint de la API

Usaremos el siguiente endpoint de la API para enviar mensajes a un chat:

Preparar la solicitud

URL objetivo de la API usando el método POST

https://api.wassenger.com/v1/messages

Encabezados HTTPS requeridos > Obtén tu clave API aquí

Content-Type: application/json
Token: $API_TOKEN

Usa el cuerpo en formato JSON

{
  "phone": "+1234567890",
  "message": "Hello world, this is a sample message"
}

🖥️ ¿Buscas un ejemplo de código? Ve al probador de la API en vivo y obtén ejemplos de código listos para usar en más de 15 lenguajes de programación, incluidos Python, JavaScript, PHP, C#, Java, Ruby, Go, Powershell, cURL y más.

🤩 🤖 Wassenger es una solución completa de API para WhatsApp. Regístrate para una prueba gratuita de 7 días y comienza en minutos!

Enviar mensajes automatizados con PHP (Guzzle)

  • 🔑 Configuración: La clave API, el número de teléfono y el mensaje se almacenan en variables.
  • 🛠️ Cliente y solicitud: Se instancian un http\Client y un http\Client\Request.
  • 📝 Cuerpo: El cuerpo del mensaje se crea como un objeto JSON y se añade al cuerpo de la solicitud.
  • 🔒 Encabezados: Se agregan encabezados para Content-Type y Token a la solicitud.
  • 📤 Envío de la solicitud: La solicitud se encola y se envía. Se verifica la respuesta para ver si fue exitosa y se imprimen mensajes según el estado de la respuesta.
// This code example requires to have installed Guzzle package, a flexible and elegant HTTP client for PHP.
// Install it first following these instructions:
// https://docs.guzzlephp.org/en/stable/overview.html#installation
<?php
$client = new \GuzzleHttp\Client();
$response = $client->request('POST', 'https://api.wassenger.com/v1/messages', [
  'body' =>
    '{"phone":"+12345678909", "message":"Hello world, this is a sample message"}',
  'headers' => [
    'Content-Type' => 'application/json',
    'Token' => 'API TOKEN GOES HERE',
  ],
]);
echo $response->getBody();

Enviar mensajes automatizados con PHP (http2)

  • 🔑 Configuración: La clave API, el número de teléfono y el mensaje se almacenan en variables.
  • 🛠️ Cliente y solicitud: Se instancian un http\Client y un http\Client\Request.
  • 📝 Cuerpo: El cuerpo del mensaje se crea como un objeto JSON y se añade al cuerpo de la solicitud.
  • 🔒 Encabezados: Se agregan encabezados para Content-Type y Token a la solicitud.
  • 📤 Envío de la solicitud: La solicitud se encola y se envía. Se verifica la respuesta para ver si fue exitosa y se imprimen mensajes según el estado de la respuesta.
// This code example requires to have installed pecl_http package, a simple and elegant HTTP client for PHP.
// Install it by running: pecl install pecl_http
// More information: https://mdref.m6w6.name/http
<?php
$client = new http\Client();
$request = new http\Client\Request();
$body = new http\Message\Body();
$body->append(
  json_encode([
    'phone' => '+12345678909',
    'message' => 'Hello world, this is a sample message',
  ])
);
$request->setRequestUrl('https://api.wassenger.com/v1/messages');
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
  'Content-Type' => 'application/json',
  'Token' => 'API TOKEN GOES HERE',
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();

🤩 🤖 Wassenger es una solución completa de API para WhatsApp. Regístrate para una prueba gratuita de 7 días y comienza en minutos!

Enviar mensajes automatizados con PHP (curl)

  • 📲 Variables dinámicas: La clave API, el número de teléfono y el mensaje se almacenan en variables.
  • ⚙️ Configuración de cURL: Se usa curl_setopt_array para configurar las opciones de cURL, incluida la URL, los encabezados, el método de la solicitud y el cuerpo de la solicitud.
  • 💻 Codificación JSON: La carga útil se crea usando json_encode para incorporar variables dinámicas.
  • ⚠️ Ejecución y manejo de errores: curl_exec ejecuta la solicitud y cualquier error se captura con curl_error. Luego se imprime la respuesta o el error.
<?php
$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => 'https://api.wassenger.com/v1/messages',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS => json_encode([
    'phone' => '+12345678909',
    'message' => 'Hello world, this is a sample message',
  ]),
  CURLOPT_HTTPHEADER => [
    'Content-Type: application/json',
    'Token: API TOKEN GOES HERE',
  ],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
  echo 'cURL Error #:' . $err;
} else {
  echo $response;
}

🤩 🤖 Wassenger es una solución completa de API para WhatsApp. Regístrate para una prueba gratuita de 7 días y comienza en minutos!

Pruebas en vivo de la API

Puedes probar la API en vivo y jugar con ella directamente desde tu navegador.

Una vez que termines de probar, obtén el ejemplo de código autogenerado en tu lenguaje de programación preferido y estarás listo para empezar.

Prueba nuestro probador de API en vivo ahora

🤩 🤖 Wassenger es una plataforma de comunicación completa y una solución de API para WhatsApp. Explora más de 100 casos de uso de la API y automatiza cualquier cosa en WhatsApp registrándote para una prueba gratuita y comenzando en minutos!

Preguntas frecuentes

¿Puedo usar Wassenger para enviar mensajes de marketing?

Como sabrás, WhatsApp tiene políticas estrictas sobre el envío de mensajes de marketing no solicitados, contenido ilícito o spam.

Enviar mensajes de marketing o cualquier mensaje no solicitado a los usuarios no está permitido y pondría tu número de WhatsApp en alto riesgo de ser bloqueado.

La comunicación vía WhatsApp no es adecuada para todos los casos de negocio, por lo que recomendamos diseñar una estrategia de comunicación legítima y aprobada por el usuario para evitar problemas.

Por favor lee nuestras directrices con las mejores prácticas de comunicación y cómo evitar ser bloqueado.

¿Cómo enviar mensajes a múltiples números de teléfono 📲

Debes enviar numerosas solicitudes a la API, una por cada número de teléfono destino.

Por ejemplo, para enviar un mensaje a 10 números de teléfono, deberías enviar 10 solicitudes HTTPS independientes a la API.

No existe la opción de enviar múltiples mensajes en una sola solicitud a la API.

¿Cómo validar si un número de teléfono puede recibir mensajes de WhatsApp 📳

Puedes validar si un número de teléfono dado está vinculado a una cuenta de WhatsApp y puede recibir mensajes.

La API proporciona un endpoint que puede validar si un número de teléfono dado existe en WhatsApp o no.

El único requisito es tener al menos un número de WhatsApp conectado a la plataforma en tu cuenta actual.

Para más detalles, consulta la documentación del endpoint de la API aquí.

Antes de comprobar si un número de teléfono existe en WhatsApp, también puedes validar y normalizar el formato de una lista de números de teléfono usando el endpoint validador de números. Este endpoint solo valida el correcto formato E164, pero no verifica si el número de teléfono existe efectivamente en WhatsApp.

Nota: El número de validaciones de comprobación en WhatsApp está limitado por mes según tu plan de suscripción. Consulta la tabla de precios para más detalles sobre los límites.

¿Buscas más respuestas? Consulta las FAQs extendidas.

Recursos útiles adicionales

Documentación de la API 🖥️

Para más detalles sobre el endpoint de la API, consulta la documentación donde encontrarás todos los detalles sobre los parámetros de la solicitud aceptados, posibles respuestas de éxito o error y ejemplos de código listos para usar en múltiples lenguajes de programación:

https://app.wassenger.com/docs/#tag/Messages/operation/createMessage

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free