Integración de Millenium con Ágora: cargos a habitación

Configura la integración de Millenium con Ágora: cargo del ticket a la habitación desde el TPV, con concepto por centro de venta o por familia.

Actualizado el 10 min de lectura Ficha de la integración

La integración de Millenium con Ágora permite cargar a la habitación el importe de un ticket desde el propio TPV: el camarero busca la habitación, ve el titular y las fechas de la estancia y, al cargar, Connect Manager manda el cargo a Millenium y cierra el ticket en Ágora como albarán. El concepto que ve el hotel puede llevar el detalle de productos o un texto único con el TPV o el centro de venta.

Este manual es para el técnico de FOS o del distribuidor que configura la integración en un local. La visión general de los PMS con Ágora está en Hotel Hub: cómo funciona.

Qué hace la integración#

  • Añade a Ágora un botón (acción personalizada) que abre la ventana de cargo dentro del TPV.
  • Busca la habitación en Millenium y enseña el número, el titular y las fechas de entrada y salida.
  • Carga a la habitación el total del ticket con IVA y, si el centro de venta del ticket está asociado, con su código de concepto del PMS.
  • Escribe en el concepto los productos con sus unidades e importes o, con «Concepto único», el nombre del TPV (o del centro de venta) y la serie y número del albarán.
  • Con «Agrupar productos por familia», divide el ticket en un cargo por familia, cada uno con su código de concepto.
  • Al cargar, avisa si Millenium responde que la habitación está libre.
  • Cierra el ticket en Ágora como albarán a nombre del cliente configurado, con el titular y la habitación en el nombre fiscal.
  • Guarda cada cargo en Connect Manager con lo enviado y la respuesta de Millenium.

Qué no hace#

  • No busca por nombre del huésped ni por tarjeta: solo por número de habitación.
  • No anula en Millenium el cargo de un albarán anulado en Ágora: hay que anularlo a mano en el PMS.
  • No envía facturas, propinas ni el desglose de IVA.
  • No sincroniza reservas ni disponibilidad.
  • No comprueba crédito ni fechas: carga a la habitación que devuelva Millenium.

Requisitos#

  • API de Ágora accesible desde Connect Manager. Con Millenium, Connect Manager lee el ticket y crea el albarán llamando desde sus servidores a la URL de API del local. Sin esa conexión no se puede cargar. Abre el puerto a las IP de Connect Manager o publícalo con Zero Connect.
  • Ágora con Herramientas → Acciones personalizadas.
  • Acceso a la API de Millenium desde Internet: URL, usuario, contraseña, id. de cadena e id. de hotel.
  • Quién hace qué. FOS da de alta el local y la integración con los datos de acceso que facilita Millenium. El distribuidor revisa la configuración de cargos, asocia centros de venta y familias y configura el botón en Ágora. El cliente valida con una prueba real.

Datos que necesitamos#

DatoQuién lo facilita / dónde se sacaEjemplo o formatoObligatorio
URL de la API de MilleniumMilleniumhttps://pms.ejemplo.com:8443/ (acabada en barra)Sí
Usuario y contraseñaMilleniumusuario-demoSí
Id. de la cadena e Id. del hotelMillenium1 y 1Sí
Código de concepto (id_pms) por centro de ventaHotel o MilleniumBARRecomendado
Código de concepto por familiaHotel o MilleniumBEBCon «Agrupar productos por familia»
Cliente genérico de ÁgoraÁgora del localCargos a habitaciónSí
URL de API y API key de ÁgoraDistribuidorhttp://servidor-demo:8984/Sí
Correos para avisosCliente o distribuidoravisos@hotel-demo.comOpcional

Configuración paso a paso#

1. En Millenium#

  1. Pide a Millenium el acceso de integración: URL de la API, usuario, contraseña, id. de cadena e id. de hotel.
  2. Pide al hotel los códigos de concepto de Millenium que quiere para cada centro de venta y, si se van a agrupar, para cada familia.

2. En Connect Manager: el local (lo hace FOS)#

  1. En Administración → Locales, abre el local y rellena Cliente, Nombre, URL de API, API key, Dirección, Ciudad y Zona horaria.
  2. Pulsa el icono de prueba del campo URL de API (sale con la URL y la API key rellenas): debe salir «Conexión con éxito». Con Millenium es imprescindible.
  3. Guardar → Integraciones de hoteles → Añadir → proveedor Millenium.

3. En Connect Manager: Conf. general#

  1. Pausar el envío de cargos al PMS después de y Pausar el envío de cargos al PMS: solo los ve FOS. Con la integración pausada, el botón del TPV abre el aviso «Integración pausada».
  2. URL Api: la de Millenium, acabada en /. Connect Manager le añade BookingEngine justo detrás, sin barra.
  3. Usuario y Password: los de Millenium.
  4. Id. de la cadena e Id. del hotel: los de Millenium.
  5. Email de receptor de notificaciones: escribe cada dirección y pulsa Intro. Solo reciben los errores técnicos de los cargos por familia que salen en segundo plano.

4. En Connect Manager: Conf. de cargos#

  • Agrupar productos por familia: manda un cargo por cada familia del ticket, con el código de concepto de esa familia (pestaña Familias). Las familias sin asociar van juntas con el código del centro de venta. Desmarcado: un único cargo por ticket.
  • Concepto único: el concepto deja de listar productos y pasa a ser el nombre del TPV más la serie y número del albarán, por ejemplo «Barra - A/000123». Con esta opción el albarán se crea en Ágora antes de mandar el cargo, para poder poner su número.
  • Usar centro de coste como concepto (solo con Concepto único): usa el nombre del centro de venta en lugar del nombre del TPV.
  • Cliente: el cliente genérico de Ágora para los albaranes. Su nombre fiscal se sustituye por el del titular y la habitación, por ejemplo «Huésped Demo (Nº hab.: 101)».

5. En Connect Manager: asociaciones#

Guarda la integración para que se habiliten las pestañas.

  • Centros de venta: por cada Centro de venta de Ágora, en External id. el código de concepto de Millenium y en Nombre externo una descripción. Si un centro no está asociado, sus cargos van sin código de concepto.
  • Familias (solo con Agrupar productos por familia): por cada Familia, el Id. del servicio (código de concepto) y un Nombre externo.

6. En Ágora#

  1. Copia del bloque Enlaces la URL botón acción personalizada. Si empieza por /venues/, antepón https://app.connectmanager.es.
  2. En Herramientas → Acciones personalizadas pulsa Nuevo: Texto «Cargo habitación», Tipo «Url/Aplicación», Acción la URL copiada (sin tocar los marcadores entre llaves) y marca Mostrar Urls en un diálogo de Ágora.
  3. Coloca la acción en Herramientas → Configuración de botones y da su permiso a los perfiles que vayan a cargar.

Cómo funciona#

El botón abre la ventana «Consulta de datos» con el ticket abierto. El camarero escribe el número de habitación; Connect Manager pregunta a Millenium y enseña el titular y las fechas. Al pulsar Cargar, Connect Manager lee el ticket de Ágora, manda el cargo a Millenium y, si Millenium lo acepta, crea el albarán en Ágora. La ventana responde «Se generó el siguiente cargo» con el número del cargo en Connect Manager.

sequenceDiagram
    participant TPV as TPV Ágora
    participant CM as Connect Manager
    participant PMS as Millenium
    TPV->>CM: Abre la ventana con el ticket
    TPV->>CM: Busca la habitación
    CM->>PMS: Consulta la habitación
    PMS-->>CM: Titular y fechas
    CM-->>TPV: Datos de la reserva
    TPV->>CM: Cargar
    CM->>TPV: Lee el ticket por la API de Ágora
    CM->>PMS: Cargo con importe, concepto y código
    PMS-->>CM: Aceptado o código de error
    CM->>TPV: Crea el albarán por la API de Ágora
    CM-->>TPV: Se generó el siguiente cargo

Qué se envía: la cadena y el hotel, el número de habitación, el importe con IVA (descuentos ya repartidos), el código de concepto si lo hay y el texto del concepto. Con «Concepto único» el orden cambia: primero se crea el albarán y después se manda el cargo.

Cargos por familia: el primer cargo sale en el momento y el resto, un segundo después, en segundo plano. Si uno de esos falla queda registrado con error (no se ve en el panel) y el TPV ya ha dado el cargo por hecho: revisa en Millenium que estén todos.

Si Millenium no responde o rechaza el cargo: sin «Concepto único», el albarán no llega a crearse y el ticket sigue abierto en Ágora, así que se puede repetir. Si Millenium aceptó el cargo y lo que falló fue el albarán, al repetir no se vuelve a cargar: solo se crea el albarán. Con «Concepto único», el albarán ya existe y hay que hacer el cargo a mano o anular el albarán.

Comprobar que funciona#

  1. La prueba de conexión del local da «Conexión con éxito».
  2. En Ágora, abre un ticket, pulsa el botón y busca una habitación ocupada: salen número, cliente y fechas «Desde» y «Hasta».
  3. Pulsa Cargar: sale «Se generó el siguiente cargo: …» y la ventana se cierra.
  4. En Ágora, el ticket es ahora un albarán a nombre del titular con la habitación.
  5. En Millenium, la habitación tiene el cargo con el importe, el concepto y el código esperados.
  6. En Operaciones hoteleras → Cargos aparece el cargo con lo enviado y la respuesta.

Errores frecuentes y solución#

SíntomaCausaSolución
«No se ha encontrado reserva para el número de habitación»Millenium no tiene estancia en esa habitaciónCompruébalo en Millenium y el número tecleado.
«Ocurrió un error: HTTP request returned status code 401…»Usuario o contraseña de MilleniumCorrígelos.
«Ocurrió un error: cURL error …» o «…status code 404…» al buscarURL Api mal escrita o sin la barra finalPon la URL base de Millenium acabada en /.
«Ocurrió un error: No se pudo enviar a Millenium: la habitación está libre.»Millenium devuelve que no hay nadie alojadoComprueba la habitación en Millenium.
«Ocurrió un error: No se pudo enviar a Millenium.»Millenium rechazó el cargo por otro motivoMira «Pedido externo (response)» en Operaciones hoteleras → Cargos.
«Ocurrió un error: AgoraApiHelper getReceiptFromAgora…» o «No existe ningún ticket en Ágora con el identificador: …»Connect Manager no puede leer el ticket en ÁgoraRevisa la conexión con la API de Ágora y que el ticket siga abierto y tenga líneas.
«Ocurrió un error: AgoraApiHelper sendDeliveryNoteToAgora…»Ágora no creó el albaránRevisa el Cliente configurado y la conexión con Ágora.
«El parámetro room_id es obligatorio…»Se pulsó Cargar sin buscar la habitaciónBusca primero la habitación.
«Integración pausada»FOS ha pausado la integraciónContacta con soporte.

Preguntas frecuentes#

¿Cómo conecto Millenium con Ágora?#

Con Connect Manager: FOS crea la integración con los datos de acceso de Millenium, se asocian los centros de venta y, en Ágora, se añade una acción personalizada con la URL de cargo.

¿Por qué la API de Ágora tiene que ser accesible desde fuera?#

Porque con Millenium es Connect Manager quien lee el ticket y crea el albarán en Ágora desde sus servidores.

¿Se anula el cargo en Millenium si anulo el albarán en Ágora?#

No. La anulación hay que hacerla también en Millenium.

¿Qué concepto ve el hotel en la habitación?#

Por defecto, la lista de productos con unidades e importes. Con «Concepto único», el nombre del TPV o del centro de venta y el número del albarán.

¿Qué significa «la habitación está libre»?#

Que Millenium no tiene a nadie alojado en esa habitación y no acepta el cargo.

Referencias#

¿Te ha servido este manual? ¡Gracias! Nos ayuda a mejorarlo. No hemos podido guardar tu respuesta. Inténtalo de nuevo.
¿Te has atascado?

910 91 92 11 · Lunes a jueves de 9 a 18 h · viernes de 9 a 15 h

Escríbenos