NicoChatNicoChatDocumentaçãoBuscar na documentação…
Entrar

Serviços de reserva

O Serviço de Reservas é um sistema completo de gestão de agendamentos que permite:

2026-08-12

Visão geral

O Serviço de Reservas é um sistema completo de gestão de agendamentos que permite:

  • Criar e gerenciar serviços de reserva para a sua empresa.
  • Agendar consultas com lembretes automáticos.
  • Acompanhar o status da reserva durante todo o ciclo de vida.
  • Enviar acompanhamentos automáticos após as consultas.
  • Integrar com os fluxos do seu chatbot.

Importante: Os serviços de reserva são compartilhados entre todos os canais da sua workspace, com um limite máximo de 20 serviços de reserva.

Principais características

1. Serviços de reserva

  • Defina os diferentes tipos de agendamentos (consultas, reuniões, serviços, etc.).
  • Defina a duração padrão para cada tipo de serviço.
  • Configure identificadores de serviço personalizados (UID do serviço)
  • Ative ou desative os serviços conforme necessário

2. Lembretes automatizados

  • Configure até 5 sequências de lembretes por serviço.
  • Configure o horário do lembrete (dias, horas, minutos antes do compromisso).
  • Personalize as mensagens de lembrete
  • Acionamento automático de lembretes com base no horário agendado

3. Acompanhamento automatizado

  • Configure até 5 sequências de acompanhamento por serviço.
  • Envie acompanhamentos após consultas concluídas ou em caso de não comparecimento.
  • Configure o cronograma de acompanhamento (dias, horas, minutos após a consulta).
  • Personalize as mensagens de acompanhamento.

4. Gestão de status das reservas

Acompanhe as reservas durante todo o seu ciclo de vida:

  • Pendente: Estado inicial da reserva
  • Confirmado: A reserva foi confirmada.
  • Em andamento: A reunião/consulta começou.
  • Concluído: Concluído com sucesso
  • Cancelado: A reserva foi cancelada.
  • Ausência: O cliente não compareceu.
  • Inativo: O serviço não está mais ativo

5. Informações sobre reservas

  • Horários de início e término
  • Duração (em minutos)
  • Detalhes do local
  • Rastreamento de fonte
  • Metadados personalizados
  • Sistema de avaliação (0 a 5 estrelas)
  • Motivos de cancelamento/remarcação
  • Registros de auditoria completos

Primeiros passos

Pré-requisitos

  • Conta de workspace com o complemento CRM/Listas/Reservas ativado
  • Acesso à gestão do serviço de reservas
  • Conhecimento básico do fuso horário da sua workspace.

Etapas de configuração inicial

1
Acesse os Serviços de Reserva.
Acesse as configurações da sua workspace. Selecione "Serviços de Reserva" no menu.
2
Crie seu primeiro serviço de reservas
Clique no botão "+ Serviço de Reservas". Preencha as informações necessárias. Configure lembretes e acompanhamentos. Salve o serviço.
3
Integrar com o chatbot
Use o UID do serviço para referenciar o serviço nos fluxos do seu canal. Configure os gatilhos para eventos de reserva. Configure respostas automatizadas.

Como funciona

Arquitetura do sistema

O sistema de reservas funciona com base em tarefas agendadas:

1
Criação de reservas: Quando uma reserva é criada, o sistema gera automaticamente lembretes e agendamentos de acompanhamento com base na sua configuração.
2
Processamento de lembretes:
Executa a cada minuto. Verifica os lembretes pendentes em uma janela de 2 horas. Envia os lembretes e atualiza o status para "enviado".
3
Eventos de reunião:
Início da reunião: acionado automaticamente quando o horário de início é atingido. Fim da reunião: acionado automaticamente quando o horário de término é atingido.
4
Processamento de acompanhamento:
Agendado após a conclusão da reserva ou em caso de não comparecimento. Funciona no mesmo horário que os lembretes. Só envia para reservas concluídas ou com não comparecimento.

Configuração de serviços de reserva

Passo 1: Criar um serviço de reservas

Campos obrigatórios:

  • Nome: Nome de exibição para o seu serviço (máximo de 100 caracteres)
  • UID do serviço: identificador único com caracteres alfanuméricos (máximo de 50 caracteres)
    Não pode ser alterado após a criação. Exemplo: consultation_30min, demo_call, support_session
  • Descrição: Descrição detalhada (máximo de 1.000 caracteres)
  • Duração padrão: Duração em minutos (0-1000)
  • Status: Ativo ou Inativo

Passo 2: Configurar lembretes

Para cada lembrete:

1
Número de sequência: Atribuído automaticamente (1-5)
2
Título: Descrição breve (máximo de 50 caracteres)
3
Descrição: Mensagem detalhada (máximo de 500 caracteres)
4
Cronograma: Defina quando enviar o lembrete
Dias antes do horário de início. Horas antes do horário de início. Minutos antes do horário de início.
5
Status: Ativo ou Inativo

Exemplo de configuração de lembrete:

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"

Passo 3: Configurar acompanhamentos

Para cada acompanhamento:

1
Número de sequência: Atribuído automaticamente (1-5)
2
Título: Descrição breve (máximo de 50 caracteres)
3
Descrição: Mensagem detalhada (máximo de 500 caracteres)
4
Cronograma: Defina quando enviar a mensagem de acompanhamento.
Dias após o horário de término. Horas após o horário de término. Minutos após o horário de término.
5
Status: Ativo ou Inativo

Exemplo de configuração de acompanhamento:

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"

Gerenciamento de reservas

Criar uma reserva

Informações necessárias:

  • UID do serviço ou ID do serviço de reserva
  • Hora de início (no fuso horário da workspace)
  • Status inicial (Pendente ou Confirmado)

Informações opcionais:

  • Duração personalizada (substitui a padrão)
  • Local (máximo de 1.000 caracteres)
  • Fonte (máximo de 100 caracteres)
  • Metadados (máximo de 5.000 caracteres)
  • Notas (máximo de 1.000 caracteres)

Observações importantes:

  • O horário de início deve ser no futuro.
  • Os lembretes são agendados automaticamente.

Ações de reserva

1. Confirmar reserva

  • Altera o status de Pendente para Confirmado.
  • Disponível apenas para reservas pendentes.
  • Dispara o evento BOOKING_CONFIRMED

2. Reagendar reserva

  • Atualiza o horário de início, o horário de término e a duração.
  • É possível alterar o status para Pendente ou Confirmado.
  • Preserva os lembretes já enviados.
  • Reagenda os lembretes restantes.
  • É necessário informar o motivo do reagendamento (máximo de 500 caracteres).

Restrições:

  • Não é possível reagendar reservas em andamento.
  • Não é possível reagendar reservas em estado final (canceladas, concluídas, não comparecimento).

3. Cancelar reserva

  • Altera o status para Cancelado.
  • Cancela todos os lembretes e acompanhamentos pendentes.
  • É necessário informar o motivo do cancelamento (máximo de 500 caracteres).
  • Não é possível cancelar reservas em estado final.

4. Marcar como concluído

  • Altera o status para Concluído.
  • Ignora quaisquer lembretes não enviados.
  • Agenda mensagens de acompanhamento
  • Não é possível concluir reservas em estado final.

5. Marcar como Ausente

  • Altera o status para Não compareceu.
  • Ignora quaisquer lembretes não enviados.
  • Agenda mensagens de acompanhamento (como nas concluídas)
  • Não é possível marcar reservas em estado final como não comparecimento.

6. Atualizar avaliação

  • Defina a avaliação de 0 a 5 estrelas.
  • Pode ser atualizado a qualquer momento.
  • Registra a alteração da avaliação.

7. Atualizar detalhes da reserva

  • Modificar o local, a fonte ou os metadados
  • Não afeta o status ou o cronograma.

8. Excluir reserva

  • Remove permanentemente a reserva.
  • Exclui todos os lembretes, acompanhamentos e registros associados.
  • Não pode ser desfeito

Lembretes e acompanhamentos

Comportamento de lembrete

Agendamento:

  • Criado quando a reserva é criada.
  • Calculado como: start_time - (dias + horas + minutos)
  • O status fica "pendente" se o horário estiver no futuro e "ignorado" se já tiver passado.

Envio:

  • Os lembretes são enviados quando o horário agendado é atingido.
  • O status muda para "enviado".
  • Registra o horário do envio.
  • Aciona o evento REMINDER_SENDING

Status:

  • Pendente: Aguardando envio
  • Enviado: Entregue com sucesso
  • Ignorado: Não enviado (tempo decorrido ou reserva cancelada)
  • Cancelado: A reserva foi cancelada.

Reagendamento:

  • Somente os lembretes não enviados são reagendados.
  • Os lembretes enviados são preservados.
  • Os novos horários agendados são calculados.

Comportamento de acompanhamento

Agendamento:

  • Criado somente quando a reserva é marcada como Concluída ou Não compareceu.
  • Calculado como: end_time + (dias + horas + minutos)
  • O status fica "pendente" se o horário estiver no futuro e "ignorado" se já tiver passado.

Envio:

  • Os acompanhamentos são enviados quando o horário agendado é atingido.
  • O status muda para "enviado".
  • Registra o horário do envio.
  • Aciona o evento FOLLOWUP_SENDING

Importante:

  • Não são criadas mensagens de acompanhamento no momento da reserva.
  • Elas só são agendadas após a conclusão ou em caso de não comparecimento.
  • Reservas canceladas não recebem acompanhamento.

Ciclo de vida da reserva

Transições de Estado

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

Fluxo de Eventos

  • BOOKING_CREATED: Criação da reserva inicial
  • BOOKING_CONFIRMED: Reserva confirmada pelo usuário ou pelo sistema.
  • REMINDER_SENDING: Cada lembrete assim que é enviado.
  • MEETING_STARTED: Horário de início atingido
  • MEETING_ENDED: Horário de término atingido (conclui a reserva automaticamente)
  • BOOKING_COMPLETED: Concluída manual ou automaticamente
  • BOOKING_NO_SHOW: Marcada como não comparecimento.
  • FOLLOWUP_SENDING: Cada acompanhamento assim que é enviado.
  • UPDATE_RATING: Avaliação atualizada
  • BOOKING_RESCHEDULED: Horário da reserva alterado
  • BOOKING_CANCELLED: Reserva cancelada

Alterações automáticas de status

  • Pendente/Confirmado → Em Andamento: Quando o horário de início for atingido
  • Em andamento → Concluído: Quando o horário de término for atingido (por meio de processo automático)

Ações da API

Gestão de Serviços

  • list_booking_services: Obter todos os serviços de reserva.
  • get_booking_service: Obter os detalhes de um serviço.
  • list_booking_service_reminders: Obter os lembretes de um serviço.
  • list_booking_service_followups: Obter os acompanhamentos de um serviço.

Gestão de reservas

  • list_bookings: Obter reservas (filtradas por contato, serviço ou status)
  • get_booking: Obter os detalhes de uma reserva.
  • create_booking: Criar uma nova reserva.
  • confirm_booking: Confirmar uma reserva pendente.
  • reschedule_booking: Alterar o horário da reserva.
  • cancel_booking: Cancelar a reserva.
  • mark_booking_completed: Marcar como concluída.
  • mark_booking_no_show: Marcar como não comparecimento.
  • update_booking_rating: Atualizar a avaliação.

Parâmetros

Parâmetros comuns:

  • bot_user_ns: Identificador do contato (para testes)
  • service_uid: Identificador único do serviço
  • booking_id: ID de uma reserva específica

Criação de reserva:

  • start_time: Formato ISO 8601 UTC (ex.: "2020-01-02T12:30:00Z")
  • duration: Minutos (opcional; usa o valor padrão se não for especificado)
  • pending_or_confirmed: Status inicial
  • location: Local da consulta
  • source: Fonte da reserva
  • metadata: Dados personalizados (string JSON)
  • notes: Notas adicionais

Atualizações de status:

  • reschedule_reason: Motivo do reagendamento (máximo de 500 caracteres)
  • cancel_reason: Motivo do cancelamento (máximo de 500 caracteres)
  • rating: Número entre 0 e 5

Diagramas de Sequência

Fluxo de Criação 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

Fluxo de processamento de lembretes

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

Fluxo de conclusão da 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

Automação de Início/Fim de Reunião

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

Fluxo de reagendamento

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
 

Boas práticas

1. Configuração do serviço

  • Use nomes de serviço claros e descritivos.
  • Crie UIDs de serviço exclusivos e fáceis de referenciar.
  • Defina durações padrão realistas
  • Teste os horários de lembrete e de acompanhamento antes de entrar em operação.

2. Estratégia de lembrete

  • Não exagere nos lembretes (2 a 3 lembretes costumam ser suficientes).
  • Distribua os lembretes adequadamente (por exemplo, 1 dia antes, 1 hora antes).
  • Torne as mensagens de lembrete claras e práticas.
  • Inclua os detalhes relevantes da reserva nos lembretes.

3. Estratégia de acompanhamento

  • Envie uma mensagem de acompanhamento imediatamente para obter feedback (2 a 4 horas depois).
  • Envie a solicitação de pesquisa 24 horas após a consulta.
  • Mantenha as mensagens de acompanhamento breves e objetivas.
  • Inclua sempre a opção de cancelar o recebimento.

4. Gestão de Reservas

  • Sempre forneça os motivos do cancelamento para análises.
  • Utilize o campo de notas para registrar informações importantes.
  • Atualize as avaliações para acompanhar a qualidade do serviço.
  • Analise regularmente os registros de reservas.

5. Testes

  • Teste todo o ciclo de reservas antes do lançamento.
  • Verifique o horário do lembrete no seu fuso horário.
  • Teste cenários de reagendamento
  • Verifique se os gatilhos de eventos estão sendo acionados corretamente.

Solução de problemas

Problemas comuns

Lembretes não estão sendo enviados:

  • Verifique se o lembrete está definido como "Ativo".
  • Verifique se o horário agendado é no futuro.
  • Confirme se o serviço de reservas está ativo.
  • Verifique se o status da reserva não está finalizado.

Mensagens de acompanhamento não estão sendo enviadas:

  • Os acompanhamentos só são enviados após a conclusão ou em caso de não comparecimento.
  • Verifique se o acompanhamento está definido como "Ativo".
  • Verifique se a reserva foi concluída ou marcada como não comparecimento (e não cancelada).
  • Confirme se o horário agendado está correto.

Não é possível reagendar:

  • Certifique-se de que a reserva não esteja finalizada.
  • Verifique se a reserva não está em andamento.
  • Verifique se o serviço ainda está ativo

Problemas com fusos horários:

  • Todos os horários estão armazenados em UTC.
  • Os horários de exibição são convertidos para o fuso horário da workspace.
  • Verifique se as configurações de fuso horário da workspace estão corretas.

Limites e restrições

  • Número máximo de serviços de reserva: 20 por workspace.
  • Número máximo de lembretes: 5 por serviço
  • Número máximo de acompanhamentos: 5 por serviço
  • Limites de campo:
    Nome: 100 caracteres. UID do serviço: 50 caracteres. Descrição: 1.000 caracteres. Título do lembrete/acompanhamento: 50 caracteres. Descrição do lembrete/acompanhamento: 500 caracteres. Motivo do reagendamento: 500 caracteres. Motivo do cancelamento: 500 caracteres. Local: 1.000 caracteres. Fonte: 100 caracteres. Metadados: 5.000 caracteres. Notas: 1.000 caracteres.