Introducción
WhatsApp API Manager es un paquete completo para Laravel que te permite integrar fácilmente la API de WhatsApp Business Cloud en tu aplicación.
¿Qué es WhatsApp API Manager?
Es una solución integral que simplifica la integración de WhatsApp Business API en aplicaciones Laravel, proporcionando:
- 📨 Gestión completa de mensajes - Envío y recepción de todo tipo de mensajes
- 📋 Sistema de plantillas - Trabaja con plantillas aprobadas de WhatsApp
- 📡 Eventos en tiempo real - Integración con Laravel Echo y WebSockets
- 🗃️ Base de datos incluida - Modelos Eloquent y migraciones listas para usar
- 🎨 Totalmente personalizable - Extiende y personaliza según tus necesidades
Características Principales
💬 Tipos de Mensajes Soportados
- Texto - Mensajes de texto simples con formato
- Multimedia - Imágenes, videos, audios, documentos y stickers
- Ubicación - Comparte ubicaciones geográficas
- Contactos - Envía información de contactos
- Interactivos - Botones, listas y mensajes con respuesta rápida
- Plantillas - Mensajes pre-aprobados con variables
🔧 Funcionalidades
Envío de Mensajes
// Mensaje de texto simple
use ScriptDevelop\WhatsappManager\Facades\Whatsapp;
use ScriptDevelop\WhatsappManager\Models\WhatsappBusinessAccount;
$account = WhatsappBusinessAccount::first(); // Obtener cuenta de whatsapp business
$phone = $account->phoneNumbers->first(); // Obtener Numero de whatsapp
$message = Whatsapp::message()->sendTextMessage(
$phone->phone_number_id, // ID del número de teléfono
'57', // Código de país
'3237121901', // Número de teléfono
'Hola, este es un mensaje de prueba.' // Contenido del mensaje
);
Recepción de Mensajes
use ScriptDevelop\WhatsappManager\Events\TextMessageReceived;
Event::listen(TextMessageReceived::class, function ($event) {
logger()->info("Nuevo mensaje: {$event->message->body}");
});
Gestión de Plantillas
Crear plantilla
// Crear plantilla con variable
use ScriptDevelop\WhatsappManager\Facades\Whatsapp;
use ScriptDevelop\WhatsappManager\Models\WhatsappBusinessAccount;
// Obtener la cuenta empresarial
$account = WhatsappBusinessAccount::first();
// Crear una plantilla transaccional
$template = Whatsapp::template()
->createUtilityTemplate($account)
->setName('order_confirmation')
->setLanguage('en_US')
->addHeader('TEXT', 'Order Confirmation')
->addBody('Your order {{1}} has been confirmed.', ['12345'])
->addFooter('Thank you for shopping with us!')
->addButton('QUICK_REPLY', 'Track Order')
->addButton('QUICK_REPLY', 'Contact Support')
->save();
Enviar plantilla
// Enviar plantilla con variable
use ScriptDevelop\WhatsappManager\Facades\Whatsapp;
use ScriptDevelop\WhatsappManager\Models\WhatsappBusinessAccount;
$account = WhatsappBusinessAccount::first(); // Obtener cuenta de whatsapp business
$phone = $account->phoneNumbers->first(); // Obtener Numero de whatsapp
// Enviar plantilla 1: plantilla sin botones o sin necesidad de proporcionar parámetros para botones
$message = Whatsapp::template()
->sendTemplateMessage($phone)
->to('57', '3137555908')
->usingTemplate('order_confirmation')
->addBody(['12345'])
->send();
Arquitectura
El paquete sigue las mejores prácticas de Laravel y utiliza:
- Service Pattern - Para lógica de negocio
- Repository Pattern - Para acceso a datos
- Event-Driven - Para manejo de webhooks
- Facades - Para API simple y elegante
- Eloquent ORM - Para modelos de datos
Casos de Uso
E-commerce
- Notificaciones de órdenes
- Confirmaciones de pago
- Actualizaciones de envío
- Soporte al cliente
CRM
- Seguimiento de leads
- Recordatorios de citas
- Campañas de marketing
- Atención personalizada
Servicios
- Recordatorios de citas
- Confirmaciones de reservas
- Notificaciones de estado
- Alertas y avisos
Educación
- Notificaciones a estudiantes
- Recordatorios de clases
- Distribución de contenido
- Comunicación con padres
Requisitos del Sistema
- PHP: 8.2 o superior
- Laravel: 12 o superior
- Extensiones PHP:
- OpenSSL
- PDO
- Mbstring
- cURL
WhatsApp Business API
Este paquete utiliza la API oficial de WhatsApp Business Cloud de Meta. Necesitarás:
- Cuenta de Meta Business - Crear cuenta
- Aplicación de WhatsApp - Crear en Meta for Developers
- Número de teléfono - Número verificado para WhatsApp Business
- Token de acceso - Credenciales de API
💡
📚 Recursos Útiles</p>
Soporte y Comunidad
Obtener Ayuda
Contribuir
Las contribuciones son bienvenidas. Por favor:
- Fork el repositorio
- Crea una rama para tu feature
- Haz commit de tus cambios
- Envía un pull request
Licencia
Este proyecto está licenciado bajo la Licencia MIT.
Próximos Pasos
¿Listo para comenzar? Continúa con:
- Instalación - Instala y configura el paquete
- Configuración de API - Configura tus credenciales
- Inicio Rápido - Tu primer mensaje en 5 minutos
¿Tienes preguntas? Abre un issue en GitHub y con gusto te ayudaremos.