Glovo On-Demand (en la web, Glovo Local) es el servicio de Glovo para usar sus repartidores en los pedidos a domicilio del propio restaurante. Con esta integración de Connect Manager, al asignar en Ágora el repartidor de Glovo a un pedido se pide el envío a Glovo, Ágora recibe al momento si Glovo lo acepta o por qué no, y el reparto se sigue en el panel de Connect Manager App. Este manual es para el técnico que la configura en un local.
Qué hace la integración#
- Pide un repartidor a Glovo cuando en Ágora se asigna a un pedido a domicilio el usuario-repartidor que tiene las URLs de Connect Manager.
- Antes de crear el envío, pregunta a Glovo si puede hacerlo. Si no puede, Ágora recibe el motivo: fuera de horario, dirección de entrega o de recogida fuera de zona, direcciones en ciudades distintas, ciudad cerrada o bloqueada por alta demanda, u hora de recogida no válida.
- Envía a Glovo la entrega (dirección, notas, cliente y teléfono, contenido e importe) y la recogida (dirección del local y hora). Si la hora de recogida que manda Ágora ya ha pasado, la pide para dentro de un minuto.
- Cancela el envío en Glovo cuando Ágora cancela el reparto o cuando se pulsa Cancelar petición en el panel, mientras Glovo lo permita.
- Al guardar la integración, da de alta en Glovo los avisos de cambio de estado y de posición del repartidor. No hay que pegar ninguna URL en Glovo.
- Muestra en Recogidas de pedidos (app.connectmanager.es) cada envío con su estado, el repartidor y su teléfono, su posición en el mapa, la hora estimada de entrega y el historial de estados. La lista se actualiza sola.
Qué no hace#
- No muestra el estado del reparto en el TPV ni en Histórico Riders del hub: se sigue en Recogidas de pedidos.
- No pide el repartidor al crear el pedido, solo al asignar el usuario-repartidor. La vía automática es exclusiva de Catcher.
- No consulta el precio del envío, no deja elegir repartidor y solo funciona en España (las direcciones van siempre con el país «Spain»).
- No gestiona cobros: no envía forma de pago ni importe a cobrar. El total viaja solo como valor declarado del paquete.
- No evita duplicados. Si Ágora vuelve a pedir el reparto de un pedido que ya lo tenía (por ejemplo, al asignar otra vez el repartidor), se pide otro envío a Glovo y el anterior no se cancela.
- No envía el campo Detalles de la dirección: en la recogida, Glovo recibe «Nombre del local: » y el nombre del local en Connect Manager.
- No pregunta a Glovo por el estado a petición: el panel solo cambia cuando llegan los avisos de Glovo.
- Cancelar desde el panel anula el repartidor, no el pedido: en Ágora el pedido sigue igual.
[!WARNING] En el hub (hub.connectmanager.es, sección Ecosistema Conectado del local) aparece un proveedor «Glovo (On Demand)» con campos como «ID de Tienda» y «Aceptar automáticamente». No está conectado a nada: guardar ahí una configuración no pide ningún repartidor. Glovo On-Demand se configura en app.connectmanager.es, como se explica abajo.
Requisitos#
- Ágora 7.1.0 o posterior: la integración con plataformas de reparto aparece en la guía del integrador de Ágora desde esa versión.
- Un usuario de Ágora configurado como repartidor que represente a Glovo (por ejemplo, «GLOVO»).
- Contrato de Glovo On-Demand para el local, con credenciales de API: Client id y Client secret. Las da Glovo.
- Conectividad: Ágora tiene que poder salir a internet por HTTPS hacia app.connectmanager.es. Todas las llamadas las inicia Ágora y la integración no consulta la API de Ágora, así que no hace falta Zero Connect ni abrir puertos.
- El local dado de alta en Connect Manager App (app.connectmanager.es).
- Quién hace qué: FOS da de alta el local y la integración (el botón Añadir solo lo ven los administradores); el distribuidor configura el usuario-repartidor en Ágora y hace la prueba; el cliente contrata con Glovo y facilita credenciales y dirección de recogida.
Datos que necesitamos#
| Dato | Quién lo facilita / dónde se saca | Ejemplo o formato | Obligatorio |
|---|---|---|---|
| Client id. | Glovo, al dar de alta el servicio On-Demand | glovo-client-12345 | Sí |
| Client secret | Glovo, junto al Client id | Cadena secreta: trátala como una contraseña | Sí |
| Dirección de recogida: calle, número, código postal y ciudad | Cliente: la puerta por la que sale el pedido | Calle Mayor · 5 · 28013 · Madrid | Sí, los cuatro. Si falta uno, no se envía ni la dirección ni la hora de recogida |
| Latitud y longitud de la recogida | Se rellenan solas al buscar la dirección en el mapa de la configuración | 40.4168000 / -3.7038000 | Muy recomendable |
| URL del entorno de pruebas de Glovo | Glovo, si da credenciales de pruebas | URL https que indique Glovo | No |
| Usuario-repartidor en Ágora | Cliente o distribuidor | GLOVO | Sí |
Configuración paso a paso#
En Glovo#
- El cliente contrata Glovo On-Demand para el local y pide a Glovo las credenciales de API (Client id y Client secret).
- Confirma con Glovo que la dirección del local está dentro de su zona de servicio y en qué horario opera. Si no lo está, todas las peticiones volverán rechazadas en la validación.
En Connect Manager App (lo hace FOS)#
- Entra en
https://app.connectmanager.esy ve a Administración → Locales. Abre el local, revisa sus datos y pulsa Guardar si has cambiado algo. - En el panel Integraciones de la derecha, pulsa Integraciones de reparto.
- Pulsa Añadir.
- Proveedor: elige Glovo On Demand. Después de guardar ya no se puede cambiar.
- URL Api: al crear la integración se guarda siempre
https://api.glovoapp.com/(producción), escribas lo que escribas. Para usar un entorno de pruebas de Glovo, cámbiala después editando la integración: vale para la autenticación y para los envíos. - Client id. y Client secret: los que ha dado Glovo.
- Bloque Dirección de recogida: escribe la dirección del local en Buscar. El mapa la localiza, pone la marca y rellena Nombre de la calle, Nº de la calle, Código postal, Ciudad, Latitud y Longitud. Revisa cada campo y corrígelo a mano si hace falta.
- Detalles de la dirección se guarda pero no viaja a Glovo; lo que recibe es el nombre del local en Connect Manager, así que comprueba que el repartidor lo pueda reconocer.
- Pulsa Guardar. Sale el aviso «Se ha guardado la integración de reparto». Unos segundos después, Connect Manager da de alta en Glovo los avisos de estado y de posición.
- La pantalla pasa a modo edición y muestra la URL de petición de recogida y la URL de cancel. de recogida, cada una con su botón de copiar (aviso «Enlace copiado al portapapeles»).
Las dos URLs llevan el número del local en Connect Manager App y tienen esta forma (aquí, con el local de ejemplo 123):
https://app.connectmanager.es/api/venues/123/deliveries/glovo-on-demand/request-pickup
https://app.connectmanager.es/api/venues/123/deliveries/glovo-on-demand/cancel-pickup
[!TIP] Si la pantalla muestra las URLs sin dominio (empiezan por
/api/venues/), añade delantehttps://app.connectmanager.esantes de pegarlas en Ágora.
En Ágora (distribuidor)#
- Crea o elige un usuario configurado como repartidor que represente a Glovo, por ejemplo «GLOVO». Es el que el personal asignará a los pedidos que tenga que llevar Glovo.
- En la ficha de ese usuario, en sus ajustes de Integración Reparto, pega la URL de petición de recogida como URL de solicitud de reparto y la URL de cancel. de recogida como URL de cancelación. Son dos campos distintos: no las cruces.
- Explica al personal que, para pedir un Glovo, basta con asignar ese repartidor al pedido a domicilio, y que si Glovo no puede hacer el envío Ágora recibe el motivo.
Cómo funciona#
Pedir el repartidor#
Al asignar el repartidor «GLOVO», Ágora envía a la URL de petición el pedido: número, dirección de entrega con coordenadas, hora de recogida, nombre y teléfono del cliente, notas, importe y líneas. Connect Manager guarda la petición (una por número de pedido y local) y pide a Glovo un token con el Client id y el Client secret, que reutiliza hasta unos minutos antes de que caduque. Después pregunta a Glovo si el envío es posible con esas direcciones y esa hora. Si Glovo dice que no, guarda el código del motivo como estado y responde a Ágora «rechazado» con el motivo en español. Si dice que sí, crea el envío: Glovo devuelve su número de seguimiento (en el panel, Id. Externo) y el estado inicial, y Ágora recibe «aceptado».
Cada llamada a Glovo se intenta hasta tres veces, con medio segundo entre intentos, si falla. Si sigue fallando, Ágora recibe «rechazado» con el error y nada se reintenta más tarde: hay que volver a asignar el repartidor.
sequenceDiagram
participant TPV as TPV Ágora
participant CM as Connect Manager App
participant G as Glovo
TPV->>CM: request-pickup con el pedido
CM->>G: token con Client id y Client secret
CM->>G: validación de direcciones y hora
alt Glovo no puede
G-->>CM: código del motivo
CM-->>TPV: rejected con el motivo
else Glovo puede
CM->>G: crear envío
G-->>CM: número de seguimiento y estado
CM-->>TPV: accepted
end
Así se traduce el pedido de Ágora al envío de Glovo:
| Dato de Ágora o de la configuración | Qué recibe Glovo |
|---|---|
| Calle, código postal y población de entrega | Dirección de entrega en texto: «calle, CP, población, Spain» |
| Latitud y longitud de entrega | Coordenadas de entrega, solo si Ágora las manda |
| Notas del pedido | Detalles de la dirección de entrega |
| Nombre y teléfono del cliente | Contacto del envío |
| Importe del pedido | Valor del paquete (tipo de contenido: comida) |
| Líneas del pedido | Descripción: «Producto: cantidad; Producto: cantidad» |
| Número de pedido | Referencia del paquete y código de recogida |
| Hora de recogida | Hora de recogida en UTC; si ya ha pasado, ahora más un minuto |
| Calle, número, CP y ciudad de la configuración | Dirección de recogida, solo si están los cuatro |
| Latitud y longitud de la configuración | Coordenadas de recogida |
| Nombre del local en Connect Manager | Detalles de la recogida: «Nombre del local: …» |
Avisos de Glovo y seguimiento#
Al guardar la integración, Connect Manager da de alta en Glovo dos avisos que apuntan a Connect Manager: cambio de estado y posición del repartidor, con hasta cinco reintentos por parte de Glovo. Cuando llega un aviso, Connect Manager comprueba la clave que Glovo devuelve en la cabecera (si no coincide, lo rechaza con «El token proporcionado no es válido.»), busca el envío por su número de seguimiento y guarda estado, repartidor y posición. Después consulta a Glovo el detalle completo del envío para actualizar el estado, la hora estimada de entrega y si todavía se puede cancelar. El panel se refresca al momento.
Si el alta de los avisos falla, FOS recibe un aviso interno («Crear webhook (Error)») y el estado de los envíos de ese local no cambiará en el panel. Volver a pulsar Guardar en la integración reintenta el alta.
sequenceDiagram
participant G as Glovo
participant CM as Connect Manager App
participant P as Panel Recogidas
G->>CM: aviso de estado o de posición
CM->>G: consulta el detalle del envío
G-->>CM: estado, entrega estimada y si es cancelable
CM-->>P: actualiza la petición al momento
Cancelar#
Cuando en Ágora se cancela el reparto de un pedido que aún no se ha recogido, Ágora llama a la URL de cancelación con el número de pedido. Connect Manager busca la petición de ese local y, si Glovo todavía la marca como cancelable, pide a Glovo que la anule, vuelve a leer el estado y responde «aceptado». Si Glovo ya no lo permite, responde «Ocurrió un error: El pedido P-123 no se puede cancelar.»; si el pedido nunca se pidió por esta integración, «Ocurrió un error: El pedido P-123 no está dado de alta en el sistema.». El botón Cancelar petición del panel hace la misma llamada y solo aparece mientras el envío es cancelable; si va bien, avisa con «Se ha enviado la cancelación del pedido al proveedor.».
Estados que verás en el panel#
En Recogidas de pedidos (con sus vistas Peticiones en curso e Historial de pedidos) cada envío lleva el estado de Glovo: Creado, Agendado, Activado, Aceptado (repartidor asignado), En proceso de recogida, Recogido, En proceso de entrega, Entregado, Cancelado, Devuelto, En proceso de devolución y Rechazado. Las peticiones que Glovo no validó se quedan en Peticiones en curso con el motivo como estado: Error en la hora de recogida, Fuera de las zonas de trabajo (que en realidad significa fuera de horario), Dirección de recogida fuera de la zona de trabajo, Dirección de entrega fuera de la zona de trabajo, Las direcciones no están en la misma ciudad, Ciudad bloqueada o Ciudad cerrada.
Cada fila tiene Ver detalle (mapa, datos de recogida, de entrega y del repartidor, e historial de estados) y, si se puede, Cancelar petición. El menú lo ven los administradores y los usuarios de cliente o distribuidor cuyos locales tienen una integración de reparto.
Comprobar que funciona#
- En la integración guardada se ven la URL de petición de recogida y la URL de cancel. de recogida, y en Ágora están pegadas en el usuario «GLOVO», cada una en su campo.
- Pregunta a FOS si ha llegado algún aviso «Crear webhook (Error)» de ese local. Si ha llegado, vuelve a guardar la integración antes de seguir.
- Crea en Ágora un pedido a domicilio real, con una dirección cercana dentro de la zona de Glovo y en su horario, con nombre y teléfono del cliente.
- Asigna el repartidor «GLOVO». Ágora debe aceptar la asignación; si la rechaza, el motivo te dice qué falla (tabla de abajo).
- En app.connectmanager.es, abre Recogidas de pedidos → Peticiones en curso: el pedido aparece con su Nº de pedido de Agora, su Id. Externo de Glovo y su estado.
- Espera a que Glovo asigne repartidor: el estado debe avanzar solo y en Ver detalle deben aparecer el repartidor, su posición y la entrega estimada. Si el estado no se mueve, los avisos no están dados de alta.
- Prueba la cancelación con un pedido que todavía no se haya recogido, desde Ágora o con Cancelar petición: el estado pasa a Cancelado. Es un repartidor real, así que hazlo enseguida.
Errores frecuentes y solución#
| Síntoma | Causa | Solución |
|---|---|---|
| Ágora rechaza con «Ocurrió una Exception: Fuera de horas de trabajo» | Glovo no opera en esa ciudad a esa hora | Pedir dentro del horario de Glovo o llevarlo con un repartidor propio |
| «Ocurrió una Exception: Dirección de entrega fuera del área de trabajo» | El cliente está fuera de la zona de Glovo, o la dirección del pedido está mal escrita | Revisar la dirección del cliente en Ágora; si es correcta, no se puede repartir con Glovo |
| «Ocurrió una Exception: Dirección de recogida fuera del área de trabajo» | La dirección o las coordenadas de recogida de la configuración están mal, o el local está fuera de zona | Revisar calle, número, CP, ciudad, latitud y longitud de la integración |
| «Ocurrió una Exception: Las direcciones no están en la misma ciudad» | Glovo solo reparte dentro de la misma ciudad | Revisar la población del pedido; si es otra ciudad, no se puede repartir con Glovo |
| «Ocurrió una Exception: Los pedidos están bloqueados en esta ciudad debido a la alta demanda. Por favor, prueba en 5 minutos» o «Ocurrió una Exception: El servicio en esta ciudad está actualmente cerrado» | Glovo ha bloqueado la ciudad por saturación o no da servicio en ese momento | Volver a asignar el repartidor pasados unos minutos o repartir por otra vía |
| «Ocurrió una Exception: Hora de recogida no válida» | Glovo no acepta la hora de recogida pedida | Revisar la hora de entrega del pedido en Ágora y volver a asignar |
| «Ocurrió una Exception: Error no especificado» | Glovo devolvió un código de validación que Connect Manager no traduce | Mirar el estado de la petición en el panel: guarda el código tal cual lo mandó Glovo |
| «Ocurrió una Exception: » seguido de otro texto de Glovo | Glovo no acepta algún dato del envío (dirección, teléfono, hora) | Corregir el dato en el pedido de Ágora o en la configuración y volver a asignar |
| «Ocurrió una Exception: Undefined property: stdClass::$status» | Glovo validó el envío pero rechazó crearlo, y Connect Manager no consigue mostrar su motivo | Volver a asignar el repartidor; si se repite, pedir a FOS que revise el registro de esa petición |
| «Ocurrió una Exception: HTTP request returned status code 401…» | Client id o Client secret erróneos, o URL Api: de otro entorno distinto al de las credenciales | Revisar las credenciales con Glovo y la URL Api; corregir y guardar |
| Ágora da error al asignar y no aparece nada en el panel | URL mal copiada: número de local de otro local, o local sin integración Glovo On Demand | Volver a copiar las URLs desde la integración de ese local |
| «Ocurrió un error: El pedido P-123 no se puede cancelar.» | Glovo ya no permite cancelar ese envío | Resolverlo directamente con Glovo |
| «Ocurrió un error: El pedido P-123 no está dado de alta en el sistema.» | Ese pedido no se pidió por esta integración o la URL de cancelación es de otro local | Comprobar la URL de cancelación del usuario «GLOVO» |
| El estado se queda en el inicial y no aparece el repartidor | Los avisos de Glovo no se dieron de alta (FOS recibe «Crear webhook (Error)») | Volver a guardar la integración; si Glovo responde que ya existen, avisar a FOS |
| Glovo no tiene la dirección ni la hora de recogida del local | Falta alguno de los cuatro campos de la dirección de recogida: entonces no se envían ni la dirección ni la hora | Rellenar calle, número, CP y ciudad y guardar |
| Dos envíos de Glovo para el mismo pedido | Se asignó el repartidor dos veces y Connect Manager pidió dos envíos | Cancelar el sobrante con Glovo; no reasignar un pedido que ya tiene envío |
Preguntas frecuentes#
¿Cómo conecto Glovo On-Demand (Glovo Local) con Ágora?#
FOS da de alta la integración en app.connectmanager.es, en las integraciones de reparto del local, con el Client id, el Client secret y la dirección de recogida. Después se pegan la URL de petición y la de cancelación en un usuario-repartidor de Ágora, y basta con asignar ese repartidor al pedido.
¿Glovo On-Demand es lo mismo que recibir pedidos de Glovo en Ágora?#
No. Recibir en Ágora los pedidos que entran por la app de Glovo es la integración de Glovo como plataforma de pedidos (manual de Glovo). Glovo On-Demand sirve para pedir un repartidor de Glovo para tus propios pedidos a domicilio.
¿Se pide el repartidor de Glovo automáticamente al crear el pedido?#
No. Solo cuando se asigna en Ágora el usuario-repartidor de Glovo. La petición automática al crear el pedido solo existe para Catcher.
¿Dónde veo por dónde va el repartidor de Glovo?#
En app.connectmanager.es, en Recogidas de pedidos: posición en el mapa, entrega estimada y datos del repartidor. No se ve en el TPV ni en Histórico Riders del hub.
¿Puedo cancelar un Glovo que ya he pedido?#
Sí, desde Ágora o con Cancelar petición en el panel, mientras Glovo lo marque como cancelable. Cancelar el repartidor no anula el pedido en Ágora.
¿Funciona fuera de España?#
No. Las direcciones se envían siempre con el país «Spain».
Referencias#
- Ficha de Glovo On-Demand en el catálogo de integraciones
- Plataformas de reparto: cómo se pide el rider desde Ágora
- Integración de reparto con Catcher
- Integración de Shipday con Ágora
- Integración de pedidos de Glovo
- Guía del Integrador de Ágora, capítulo «Integración con Plataformas de Reparto». La documentación de la API On-Demand la facilita Glovo con el alta del servicio.