NicoChatNicoChatDocumentaçãoBuscar na documentação…
Entrar

Servicios de reserva

El Servicio de Reservas es un sistema completo de gestión de citas que permite:

2026-08-12

Visión general

El Servicio de Reservas es un sistema completo de gestión de citas que permite:

  • Crear y gestionar servicios de reserva para tu empresa.
  • Programar citas con recordatorios automáticos.
  • Hacer seguimiento del estado de la reserva durante todo el ciclo de vida.
  • Enviar seguimientos automáticos después de las citas.
  • Integrar con los flujos de tu chatbot.

Importante: Los servicios de reserva se comparten entre todos los canales de tu Workspace, con un límite máximo de 20 servicios de reserva.

Características principales

1. Servicios de reserva

  • Define los diferentes tipos de citas (consultas, reuniones, servicios, etc.).
  • Define la duración predeterminada para cada tipo de servicio.
  • Configura identificadores de servicio personalizados (UID del servicio)
  • Activa o desactiva los servicios según sea necesario

2. Recordatorios automatizados

  • Configura hasta 5 secuencias de recordatorios por servicio.
  • Configura el horario del recordatorio (días, horas, minutos antes de la cita).
  • Personaliza los mensajes de recordatorio
  • Activación automática de recordatorios según el horario programado

3. Seguimiento automatizado

  • Configura hasta 5 secuencias de seguimiento por servicio.
  • Envía seguimientos después de citas concluidas o en caso de inasistencia.
  • Configura el cronograma de seguimiento (días, horas, minutos después de la cita).
  • Personaliza los mensajes de seguimiento.

4. Gestión del estado de las reservas

Haz seguimiento de las reservas durante todo su ciclo de vida:

  • Pendiente: Estado inicial de la reserva
  • Confirmado: La reserva fue confirmada.
  • En curso: La reunión/cita ha comenzado.
  • Concluido: Concluido con éxito
  • Cancelado: La reserva fue cancelada.
  • No Show: El contacto no asistió.
  • Inactivo: El servicio ya no está activo

5. Información sobre reservas

  • Horas de inicio y de finalización
  • Duración (en minutos)
  • Detalles de la ubicación
  • Seguimiento del origen
  • Metadatos personalizados
  • Sistema de calificación (0 a 5 estrellas)
  • Motivos de cancelación/reprogramación
  • Registros de auditoría completos

Primeros pasos

Requisitos previos

  • Cuenta de Workspace con el complemento CRM/Listas/Reservas activado
  • Acceso a la gestión del servicio de reservas
  • Conocimiento básico de la zona horaria de tu Workspace.

Pasos de configuración inicial

1
Accede a Servicios de Reserva.
Accede a la configuración de tu Workspace. Selecciona "Servicios de Reserva" en el menú.
2
Crea tu primer servicio de reservas
Haz clic en el botón "+ Servicio de Reservas". Completa la información necesaria. Configura recordatorios y seguimientos. Guarda el servicio.
3
Integrar con el chatbot
Usa el UID del servicio para referenciar el servicio en los flujos de tu canal. Configura los disparadores para eventos de reserva. Configura respuestas automatizadas.

Cómo funciona

Arquitectura del sistema

El sistema de reservas funciona con base en tareas programadas:

1
Creación de reservas: Cuando se crea una reserva, el sistema genera automáticamente los recordatorios y las programaciones de seguimiento según tu configuración.
2
Procesamiento de recordatorios:
Se ejecuta cada minuto. Verifica los recordatorios pendientes en una ventana de 2 horas. Envía los recordatorios y actualiza el estado a "enviado".
3
Eventos de reunión:
Inicio de la reunión: se activa automáticamente cuando se alcanza la hora de inicio. Fin de la reunión: se activa automáticamente cuando se alcanza la hora de finalización.
4
Procesamiento de seguimiento:
Se programa después de la conclusión de la reserva o en caso de inasistencia. Funciona en el mismo horario que los recordatorios. Solo envía para reservas concluidas o con inasistencia.

Configuración de servicios de reserva

Paso 1: Crear un servicio de reservas

Campos requeridos:

  • Nombre: Nombre de visualización de tu servicio (máximo 100 caracteres)
  • UID del servicio: identificador único con caracteres alfanuméricos (máximo 50 caracteres)
    No se puede cambiar después de la creación. Ejemplo: consultation_30min, demo_call, support_session
  • Descripción: Descripción detallada (máximo 1.000 caracteres)
  • Duración predeterminada: Duración en minutos (0-1000)
  • Estado: Activo o Inactivo

Paso 2: Configurar recordatorios

Para cada recordatorio:

1
Número de secuencia: Asignado automáticamente (1-5)
2
Título: Descripción breve (máximo 50 caracteres)
3
Descripción: Mensaje detallado (máximo 500 caracteres)
4
Cronograma: Define cuándo enviar el recordatorio
Días antes de la hora de inicio. Horas antes de la hora de inicio. Minutos antes de la hora de inicio.
5
Estado: Activo o Inactivo

Ejemplo de configuración de recordatorio:

texto
Reminder 1:
- Title: "Appointment Tomorrow"
- Days: 1, Hours: 0, Minutes: 0
- Description: "Your appointment is tomorrow at [TIME]"
Reminder 2:
- Title: "Appointment in 1 Hour"
- Days: 0, Hours: 1, Minutes: 0
- Description: "Your appointment starts in 1 hour"

Paso 3: Configurar seguimientos

Para cada seguimiento:

1
Número de secuencia: Asignado automáticamente (1-5)
2
Título: Descripción breve (máximo 50 caracteres)
3
Descripción: Mensaje detallado (máximo 500 caracteres)
4
Cronograma: Define cuándo enviar el mensaje de seguimiento.
Días después de la hora de finalización. Horas después de la hora de finalización. Minutos después de la hora de finalización.
5
Estado: Activo o Inactivo

Ejemplo de configuración de seguimiento:

texto
Follow-up 1:
- Title: "How was your appointment?"
- Days: 0, Hours: 2, Minutes: 0
- Description: "We'd love to hear about your experience"
Follow-up 2:
- Title: "Follow-up Survey"
- Days: 1, Hours: 0, Minutes: 0
- Description: "Please take a moment to complete our survey"

Gestión de reservas

Crear una reserva

Información necesaria:

  • UID del servicio o ID del servicio de reserva
  • Hora de inicio (en la zona horaria del Workspace)
  • Estado inicial (Pendiente o Confirmado)

Información opcional:

  • Duración personalizada (sustituye la predeterminada)
  • Ubicación (máximo 1.000 caracteres)
  • Origen (máximo 100 caracteres)
  • Metadatos (máximo 5.000 caracteres)
  • Notas (máximo 1.000 caracteres)

Observaciones importantes:

  • La hora de inicio debe estar en el futuro.
  • Los recordatorios se programan automáticamente.

Acciones de reserva

1. Confirmar reserva

  • Cambia el estado de Pendiente a Confirmado.
  • Disponible solo para reservas pendientes.
  • Dispara el evento BOOKING_CONFIRMED

2. Reprogramar reserva

  • Actualiza la hora de inicio, la hora de finalización y la duración.
  • Es posible cambiar el estado a Pendiente o Confirmado.
  • Conserva los recordatorios ya enviados.
  • Reprograma los recordatorios restantes.
  • Es necesario indicar el motivo de la reprogramación (máximo 500 caracteres).

Restricciones:

  • No es posible reprogramar reservas en curso.
  • No es posible reprogramar reservas en estado final (canceladas, concluidas, inasistencia).

3. Cancelar reserva

  • Cambia el estado a Cancelado.
  • Cancela todos los recordatorios y seguimientos pendientes.
  • Es necesario indicar el motivo de la cancelación (máximo 500 caracteres).
  • No es posible cancelar reservas en estado final.

4. Marcar como concluido

  • Cambia el estado a Concluido.
  • Ignora cualquier recordatorio no enviado.
  • Programa mensajes de seguimiento
  • No es posible concluir reservas en estado final.

5. Marcar como No Show

  • Cambia el estado a No Show.
  • Ignora cualquier recordatorio no enviado.
  • Programa mensajes de seguimiento (como en las concluidas)
  • No es posible marcar como inasistencia las reservas en estado final.

6. Actualizar calificación

  • Define la calificación de 0 a 5 estrellas.
  • Se puede actualizar en cualquier momento.
  • Registra el cambio de la calificación.

7. Actualizar detalles de la reserva

  • Modificar la ubicación, el origen o los metadatos
  • No afecta el estado ni el cronograma.

8. Eliminar reserva

  • Elimina permanentemente la reserva.
  • Elimina todos los recordatorios, seguimientos y registros asociados.
  • No se puede deshacer

Recordatorios y seguimientos

Comportamiento del recordatorio

Programación:

  • Se crea cuando se crea la reserva.
  • Calculado como: start_time - (días + horas + minutos)
  • El estado queda "pendiente" si la hora está en el futuro e "ignorado" si ya pasó.

Envío:

  • Los recordatorios se envían cuando se alcanza el horario programado.
  • El estado cambia a "enviado".
  • Registra la hora del envío.
  • Dispara el evento REMINDER_SENDING

Estado:

  • Pendiente: Esperando el envío
  • Enviado: Entregado con éxito
  • Ignorado: No enviado (tiempo transcurrido o reserva cancelada)
  • Cancelado: La reserva fue cancelada.

Reprogramación:

  • Solo se reprograman los recordatorios no enviados.
  • Los recordatorios enviados se conservan.
  • Se calculan los nuevos horarios programados.

Comportamiento del seguimiento

Programación:

  • Se crea solo cuando la reserva se marca como Concluida o No Show.
  • Calculado como: end_time + (días + horas + minutos)
  • El estado queda "pendiente" si la hora está en el futuro e "ignorado" si ya pasó.

Envío:

  • Los seguimientos se envían cuando se alcanza el horario programado.
  • El estado cambia a "enviado".
  • Registra la hora del envío.
  • Dispara el evento FOLLOWUP_SENDING

Importante:

  • No se crean mensajes de seguimiento en el momento de la reserva.
  • Solo se programan después de la conclusión o en caso de inasistencia.
  • Las reservas canceladas no reciben seguimiento.

Ciclo de vida de la reserva

Transiciones de Estado

texto
Created → Pending → Confirmed → In Progress → Completed
                 ↓                          ↓
              Cancelled                  No Show

Flujo de Eventos

  • BOOKING_CREATED: Creación de la reserva inicial
  • BOOKING_CONFIRMED: Reserva confirmada por el contacto o por el sistema.
  • REMINDER_SENDING: Cada recordatorio en cuanto se envía.
  • MEETING_STARTED: Hora de inicio alcanzada
  • MEETING_ENDED: Hora de finalización alcanzada (concluye la reserva automáticamente)
  • BOOKING_COMPLETED: Concluida manual o automáticamente
  • BOOKING_NO_SHOW: Marcada como inasistencia.
  • FOLLOWUP_SENDING: Cada seguimiento en cuanto se envía.
  • UPDATE_RATING: Calificación actualizada
  • BOOKING_RESCHEDULED: Hora de la reserva cambiada
  • BOOKING_CANCELLED: Reserva cancelada

Cambios automáticos de estado

  • Pendiente/Confirmado → En Curso: Cuando se alcance la hora de inicio
  • En curso → Concluido: Cuando se alcance la hora de finalización (mediante un proceso automático)

Acciones de la API

Gestión de Servicios

  • list_booking_services: Obtener todos los servicios de reserva.
  • get_booking_service: Obtener los detalles de un servicio.
  • list_booking_service_reminders: Obtener los recordatorios de un servicio.
  • list_booking_service_followups: Obtener los seguimientos de un servicio.

Gestión de reservas

  • list_bookings: Obtener reservas (filtradas por contacto, servicio o estado)
  • get_booking: Obtener los detalles de una reserva.
  • create_booking: Crear una nueva reserva.
  • confirm_booking: Confirmar una reserva pendiente.
  • reschedule_booking: Cambiar la hora de la reserva.
  • cancel_booking: Cancelar la reserva.
  • mark_booking_completed: Marcar como concluida.
  • mark_booking_no_show: Marcar como inasistencia.
  • update_booking_rating: Actualizar la calificación.

Parámetros

Parámetros comunes:

  • bot_user_ns: Identificador del contacto (para pruebas)
  • service_uid: Identificador único del servicio
  • booking_id: ID de una reserva específica

Creación de reserva:

  • start_time: Formato ISO 8601 UTC (ej.: "2020-01-02T12:30:00Z")
  • duration: Minutos (opcional; usa el valor predeterminado si no se especifica)
  • pending_or_confirmed: Estado inicial
  • location: Ubicación de la cita
  • source: Origen de la reserva
  • metadata: Datos personalizados (cadena JSON)
  • notes: Notas adicionales

Actualizaciones de estado:

  • reschedule_reason: Motivo de la reprogramación (máximo 500 caracteres)
  • cancel_reason: Motivo de la cancelación (máximo 500 caracteres)
  • rating: Número entre 0 y 5

Diagramas de Secuencia

Flujo de Creación de Reservas

texto
User → System: Create Booking Request
System → Database: Create booking record
System → Database: Generate reminder schedules
System → Database: Save reminder records
System → EventDispatcher: Dispatch BOOKING_CREATED
EventDispatcher → Triggers: Process configured triggers
System → User: Return booking confirmation

Flujo de procesamiento de recordatorios

texto
CronJob → System: Run reminder processor (every minute)
System → Database: Query pending reminders (2-hour window)
Database → System: Return pending reminders
System → Validator: Check booking status
Validator → System: Validate service is active
System → BotUser: Retrieve bot user details
System → EventDispatcher: Dispatch REMINDER_SENDING event
EventDispatcher → Triggers: Execute reminder flow
System → Database: Update reminder status to 'sent'
System → Database: Record sent timestamp

Flujo de conclusión de la reserva

texto
User/System → System: Mark booking complete
System → Database: Update booking status to 'completed'
System → Database: Skip unsent reminders
System → Database: Calculate follow-up schedules
System → Database: Create follow-up records
System → EventDispatcher: Dispatch BOOKING_COMPLETED
EventDispatcher → Triggers: Process completion triggers
System → User: Return success response

Automatización de Inicio/Fin de Reunión

texto
CronJob → System: Run booking processor (every minute)
System → Database: Query bookings with start_time reached
Database → System: Return matching bookings
System → EventDispatcher: Dispatch MEETING_STARTED event
System → Database: Update status to 'in_progress'
[Later...]
System → Database: Query bookings with end_time reached
Database → System: Return matching bookings
System → EventDispatcher: Dispatch MEETING_ENDED event
System → Database: Update status to 'completed'
System → Database: Schedule follow-ups

Flujo de reprogramación

texto
User → System: Reschedule request
System → Validator: Check booking status
Validator → System: Validate can reschedule
System → Database: Get sent reminder sequences
System → Database: Delete unsent reminders
System → Database: Update booking times
System → Database: Increment reschedule_count
System → Database: Calculate new reminder schedules
System → Database: Create new reminder records
System → EventDispatcher: Dispatch BOOKING_RESCHEDULED
System → User: Return updated booking
 

Buenas prácticas

1. Configuración del servicio

  • Usa nombres de servicio claros y descriptivos.
  • Crea UID de servicio únicos y fáciles de referenciar.
  • Define duraciones predeterminadas realistas
  • Prueba los horarios de recordatorio y de seguimiento antes de entrar en operación.

2. Estrategia de recordatorio

  • No exageres con los recordatorios (2 a 3 recordatorios suelen ser suficientes).
  • Distribuye los recordatorios adecuadamente (por ejemplo, 1 día antes, 1 hora antes).
  • Haz que los mensajes de recordatorio sean claros y prácticos.
  • Incluye los detalles relevantes de la reserva en los recordatorios.

3. Estrategia de seguimiento

  • Envía un mensaje de seguimiento de inmediato para obtener comentarios (2 a 4 horas después).
  • Envía la solicitud de encuesta 24 horas después de la cita.
  • Mantén los mensajes de seguimiento breves y concretos.
  • Incluye siempre la opción de cancelar la recepción.

4. Gestión de Reservas

  • Proporciona siempre los motivos de la cancelación para los análisis.
  • Utiliza el campo de notas para registrar información importante.
  • Actualiza las calificaciones para hacer seguimiento de la calidad del servicio.
  • Analiza regularmente los registros de reservas.

5. Pruebas

  • Prueba todo el ciclo de reservas antes del lanzamiento.
  • Verifica el horario del recordatorio en tu zona horaria.
  • Prueba escenarios de reprogramación
  • Verifica que los disparadores de eventos se activen correctamente.

Solución de problemas

Problemas comunes

Los recordatorios no se están enviando:

  • Verifica que el recordatorio esté definido como "Activo".
  • Verifica que el horario programado sea en el futuro.
  • Confirma que el servicio de reservas esté activo.
  • Verifica que el estado de la reserva no sea final.

Los mensajes de seguimiento no se están enviando:

  • Los seguimientos solo se envían después de la conclusión o en caso de inasistencia.
  • Verifica que el seguimiento esté definido como "Activo".
  • Verifica que la reserva se haya concluido o marcado como inasistencia (y no cancelada).
  • Confirma que el horario programado sea correcto.

No es posible reprogramar:

  • Asegúrate de que la reserva no esté finalizada.
  • Verifica que la reserva no esté en curso.
  • Verifica que el servicio siga activo

Problemas con las zonas horarias:

  • Todas las horas se almacenan en UTC.
  • Las horas de visualización se convierten a la zona horaria del Workspace.
  • Verifica que la configuración de zona horaria del Workspace sea correcta.

Límites y restricciones

  • Número máximo de servicios de reserva: 20 por Workspace.
  • Número máximo de recordatorios: 5 por servicio
  • Número máximo de seguimientos: 5 por servicio
  • Límites de campo:
    Nombre: 100 caracteres. UID del servicio: 50 caracteres. Descripción: 1.000 caracteres. Título del recordatorio/seguimiento: 50 caracteres. Descripción del recordatorio/seguimiento: 500 caracteres. Motivo de la reprogramación: 500 caracteres. Motivo de la cancelación: 500 caracteres. Ubicación: 1.000 caracteres. Origen: 100 caracteres. Metadatos: 5.000 caracteres. Notas: 1.000 caracteres.