Fuso horário e horário de verão na agenda: armadilhas comuns
Fuso horário é um daqueles assuntos que parecem irrelevantes para um coworking de uma cidade só, até o dia em que uma reserva aparece três horas deslocada e ninguém entende por quê.
O Brasil não tem mais horário de verão desde 2019, o que eliminou a pior classe desses problemas. Mas restaram armadilhas que continuam pegando agenda de sala, principalmente quando o sistema é hospedado fora do país.
Armadilha 1: o servidor no fuso errado
É a mais comum e a mais silenciosa. O sistema grava o horário em UTC, o servidor está configurado em UTC, e a tela mostra o valor cru. A reserva das 14h aparece como 17h, ou vice-versa.
Como reconhecer: todas as reservas estão deslocadas pelo mesmo número de horas, e o número bate com a diferença para Brasília.
A correção: a aplicação precisa declarar o fuso local explicitamente, e não confiar no fuso do servidor. Gravar em UTC é correto, exibir em UTC não é.
O teste: crie uma reserva para daqui a 10 minutos e confira se o horário exibido bate com o relógio da parede. Se bater, confira também no banco de dados, porque pode haver dois erros que se cancelam na tela e reaparecem no relatório.
Armadilha 2: o cliente de outro estado
O Brasil tem quatro fusos. Um cliente em Rio Branco vendo a agenda de um coworking em São Paulo tem duas horas de diferença.
A regra: a agenda de sala sempre mostra o horário do endereço da sala, nunca o do navegador de quem está olhando. Sala é um lugar físico, e quem vai entrar nela precisa do horário de lá.
Deixe isso explícito na tela. Um "horário de Brasília" ao lado da agenda resolve a dúvida antes dela existir, e custa uma linha.
Armadilha 3: reserva recorrente que atravessa mudança de regra
Mesmo sem horário de verão, recorrência é onde o erro mais aparece, porque ela gera ocorrências futuras em lote.
Dois cuidados:
- Gere as ocorrências com o horário local desejado, não somando 7 dias em segundos a partir da primeira. Somar 604.800 segundos funciona até algo mudar na regra do fuso, e aí toda a série desliza.
- Trate feriado na criação. Decida se a ocorrência pula ou remarca, e deixe registrado. Recorrência que cai em feriado e ninguém tratou vira sala bloqueada com o espaço fechado.
Armadilha 4: o relatório que não bate com a agenda
Clássico de fim de mês. A agenda mostra 120 reservas em setembro e o relatório mostra 118, ou 121.
Quase sempre a causa é a reserva na virada: uma reserva das 23h do dia 30 gravada em UTC vira dia 1 do mês seguinte se o corte do relatório usar o horário cru.
A correção: todo agrupamento por dia, semana ou mês precisa converter para o fuso local antes de agrupar. Esse é um erro que passa despercebido por meses, porque a diferença é pequena e parece arredondamento.
Armadilha 5: a integração com calendário externo
Quando a reserva é espelhada no Google Calendar ou no Outlook do cliente, o evento carrega o próprio fuso. Se o convite for gerado sem fuso declarado, o cliente em outro estado vê o horário deslocado no calendário dele, mesmo tendo visto certo na hora de reservar.
Convite de calendário precisa sempre declarar o fuso do evento, não só a hora.
Checklist de verificação
Leva quinze minutos e vale fazer uma vez por ano:
- Criar uma reserva e conferir o horário na tela, no banco e no relatório.
- Conferir uma reserva às 23h e ver em que dia ela aparece no relatório mensal.
- Abrir a agenda em um dispositivo com fuso diferente e conferir se o horário exibido continua sendo o do espaço.
- Gerar uma recorrência de 12 semanas e conferir a última ocorrência.
- Conferir se um feriado nacional no meio da série foi tratado.
- Se houver integração com calendário externo, conferir o convite recebido.
Se algum item falhar, o problema é do sistema e não da equipe. Os critérios de avaliação de uma ferramenta de agenda, incluindo o que testar antes de contratar, estão em sistema de gestão para coworking.