Notificador de Entregas usando Whatsapp API
Budget: $250 – $750 USD
Crear
• Middleware / Servicio de Notificación
• Front-end Conductores (Web App)
Integración de Notificaciones Logísticas (WhatsApp API)
Proyecto: Trazabilidad "Última Milla" - Ferretería Santiago Versión: 1.0 Fecha: Octubre 2023
1. Objetivo General
Implementar un sistema de notificaciones automáticas vía WhatsApp Business API para informar a los clientes sobre el estado de sus despachos en dos hitos críticos de la cadena de valor:
1. Pedido en Ruta: Cuando el camión sale a reparto.
2. Pedido Entregado: Confirmación de recepción en obra (POD - Proof of Delivery).
2. Arquitectura de la Solución
La solución requiere la interacción entre tres componentes:
• SGV (Sistema de Gestión de Ventas - Legacy): Fuente de verdad de los datos.
• Middleware / Servicio de Notificación: Lógica que conecta con el BSP (Business Solution Provider) de WhatsApp.
• Front-end Conductores (Web App): Interfaz ligera para confirmar entregas.
________________________________________
3. Requerimientos Funcionales por Módulo
Módulo A: Modificación en SGV (Backend)
Disparador (Trigger) 1: "En Ruta" Se requiere intervenir el proceso de "Generación de Hoja de Ruta" en el SGV.
• Lógica: Al momento que el operador logístico cambie el estado de una Guía de Despacho a "En Ruta" (o la asigne a un camión), el sistema debe ejecutar una llamada (Webhook/POST) al servicio de mensajería.
• Validación de Datos: Antes de enviar, el sistema debe limpiar el campo telefónico del cliente.
o Regla: Eliminar espacios, guiones y asegurar formato E.164 (Ej: +56912345678). Si el número es fijo (comienza con +562...), no se debe disparar el mensaje.
Módulo B: Aplicación Web para Conductores (Driver App)
Desarrollo de una PWA (Progressive Web App) o sitio móvil responsivo de acceso restringido. No se requiere app nativa (Android/iOS).
• Autenticación: Login simple por Patente de Camión o RUT de Chofer.
• Vista Principal (Dashboard): Listado de pedidos pendientes asignados a ese chofer para el día (Obtenidos del SGV).
• Acción de Entrega: Al seleccionar un pedido, el chofer debe ver un formulario minimalista:
1. Confirmación: Botón "¿Entregado con éxito?".
2. Receptor: Campo de texto "Nombre de quien recibe".
3. Observación: Checkbox "Entrega Conforme" o "Con observaciones".
4. Evidencia (Opcional): Botón para capturar foto de la guía firmada (acceso a cámara del navegador).
• Disparador (Trigger) 2: "Entregado": Al guardar este formulario, la Web App debe:
1. Actualizar el estado en el SGV a "Entregado".
2. Disparar la notificación de WhatsApp al cliente.
Módulo C: Integración WhatsApp API
Se debe contratar un proveedor (BSP) como Twilio, Meta Cloud API, Wati o similar.
• Tipo de Mensajes: Se utilizarán Plantillas (Templates) de la categoría Utility.
• Plantilla 1 (Salida):
"Hola {{1}}, tu pedido asociado a la guía {{2}} va en camino a tu obra. Te avisaremos al llegar."
• Plantilla 2 (Entrega):
"Hola, tu pedido fue entregado a {{1}}. Estado: {{2}}. Gracias por preferir a Ferretería Santiago."
________________________________________
4. Especificaciones Técnicas de Intercambio de Datos (JSON)
Para la comunicación entre el SGV/Web App y el servicio de WhatsApp, se sugiere la siguiente estructura de payload (carga de datos):
Endpoint Sugerido: POST /api/v1/whatsapp/send-notification
JSON
{
"event_type": "ORDER_DISPATCHED", // O "ORDER_DELIVERED"
"recipient": {
"phone": "569XXXXXXXX", // Número sanitizado sin el '+'
"name": "Juan Pérez"
},
"data": {
"guide_number": "GD-10293",
"delivery_address": "Av. Principal 123, Obra Norte",
"receiver_name": "Roberto Diaz" // Solo para evento DELIVERED
}
}
5. Requerimientos No Funcionales
1. Latencia: El mensaje debe llegar al cliente en menos de 60 segundos desde que ocurre el evento.
2. Manejo de Errores: Si el número de teléfono es inválido, el sistema debe registrar el error en un log ("Mensaje no enviado") pero no debe detener el proceso operativo del SGV.
3. Interfaz Chofer: Botones grandes (UI Touch-friendly) y alto contraste para visibilidad en terreno bajo el sol.
4. Conectividad: La Web App debe ser capaz de guardar la confirmación localmente si no hay señal y sincronizar cuando recupere conexión (Service Workers), o bien, advertir claramente "Sin conexión".
________________________________________
6. Entregables Esperados del Equipo de Desarrollo
1. URL de acceso a la Web App de choferes.
3. Documentación de API y credenciales del proveedor de WhatsApp.
4. Manual de usuario simple (PDF de 1 plana) para los choferes.
• Middleware / Servicio de Notificación
• Front-end Conductores (Web App)
Integración de Notificaciones Logísticas (WhatsApp API)
Proyecto: Trazabilidad "Última Milla" - Ferretería Santiago Versión: 1.0 Fecha: Octubre 2023
1. Objetivo General
Implementar un sistema de notificaciones automáticas vía WhatsApp Business API para informar a los clientes sobre el estado de sus despachos en dos hitos críticos de la cadena de valor:
1. Pedido en Ruta: Cuando el camión sale a reparto.
2. Pedido Entregado: Confirmación de recepción en obra (POD - Proof of Delivery).
2. Arquitectura de la Solución
La solución requiere la interacción entre tres componentes:
• SGV (Sistema de Gestión de Ventas - Legacy): Fuente de verdad de los datos.
• Middleware / Servicio de Notificación: Lógica que conecta con el BSP (Business Solution Provider) de WhatsApp.
• Front-end Conductores (Web App): Interfaz ligera para confirmar entregas.
________________________________________
3. Requerimientos Funcionales por Módulo
Módulo A: Modificación en SGV (Backend)
Disparador (Trigger) 1: "En Ruta" Se requiere intervenir el proceso de "Generación de Hoja de Ruta" en el SGV.
• Lógica: Al momento que el operador logístico cambie el estado de una Guía de Despacho a "En Ruta" (o la asigne a un camión), el sistema debe ejecutar una llamada (Webhook/POST) al servicio de mensajería.
• Validación de Datos: Antes de enviar, el sistema debe limpiar el campo telefónico del cliente.
o Regla: Eliminar espacios, guiones y asegurar formato E.164 (Ej: +56912345678). Si el número es fijo (comienza con +562...), no se debe disparar el mensaje.
Módulo B: Aplicación Web para Conductores (Driver App)
Desarrollo de una PWA (Progressive Web App) o sitio móvil responsivo de acceso restringido. No se requiere app nativa (Android/iOS).
• Autenticación: Login simple por Patente de Camión o RUT de Chofer.
• Vista Principal (Dashboard): Listado de pedidos pendientes asignados a ese chofer para el día (Obtenidos del SGV).
• Acción de Entrega: Al seleccionar un pedido, el chofer debe ver un formulario minimalista:
1. Confirmación: Botón "¿Entregado con éxito?".
2. Receptor: Campo de texto "Nombre de quien recibe".
3. Observación: Checkbox "Entrega Conforme" o "Con observaciones".
4. Evidencia (Opcional): Botón para capturar foto de la guía firmada (acceso a cámara del navegador).
• Disparador (Trigger) 2: "Entregado": Al guardar este formulario, la Web App debe:
1. Actualizar el estado en el SGV a "Entregado".
2. Disparar la notificación de WhatsApp al cliente.
Módulo C: Integración WhatsApp API
Se debe contratar un proveedor (BSP) como Twilio, Meta Cloud API, Wati o similar.
• Tipo de Mensajes: Se utilizarán Plantillas (Templates) de la categoría Utility.
• Plantilla 1 (Salida):
"Hola {{1}}, tu pedido asociado a la guía {{2}} va en camino a tu obra. Te avisaremos al llegar."
• Plantilla 2 (Entrega):
"Hola, tu pedido fue entregado a {{1}}. Estado: {{2}}. Gracias por preferir a Ferretería Santiago."
________________________________________
4. Especificaciones Técnicas de Intercambio de Datos (JSON)
Para la comunicación entre el SGV/Web App y el servicio de WhatsApp, se sugiere la siguiente estructura de payload (carga de datos):
Endpoint Sugerido: POST /api/v1/whatsapp/send-notification
JSON
{
"event_type": "ORDER_DISPATCHED", // O "ORDER_DELIVERED"
"recipient": {
"phone": "569XXXXXXXX", // Número sanitizado sin el '+'
"name": "Juan Pérez"
},
"data": {
"guide_number": "GD-10293",
"delivery_address": "Av. Principal 123, Obra Norte",
"receiver_name": "Roberto Diaz" // Solo para evento DELIVERED
}
}
5. Requerimientos No Funcionales
1. Latencia: El mensaje debe llegar al cliente en menos de 60 segundos desde que ocurre el evento.
2. Manejo de Errores: Si el número de teléfono es inválido, el sistema debe registrar el error en un log ("Mensaje no enviado") pero no debe detener el proceso operativo del SGV.
3. Interfaz Chofer: Botones grandes (UI Touch-friendly) y alto contraste para visibilidad en terreno bajo el sol.
4. Conectividad: La Web App debe ser capaz de guardar la confirmación localmente si no hay señal y sincronizar cuando recupere conexión (Service Workers), o bien, advertir claramente "Sin conexión".
________________________________________
6. Entregables Esperados del Equipo de Desarrollo
1. URL de acceso a la Web App de choferes.
3. Documentación de API y credenciales del proveedor de WhatsApp.
4. Manual de usuario simple (PDF de 1 plana) para los choferes.