Capita Barber ShopCapita

Documentação simples

Capita Barber Shop — Site, agenda, Worker e tracking

Esta página explica o funcionamento do site para o dono da barbearia e para quem for manter o sistema.

1. O que o site faz

  • Exibe a página institucional da Capita com ambiente, Instagram, endereço e WhatsApp.
  • Permite que o cliente escolha um ou mais serviços, dia e horário.
  • Salva o agendamento no Worker + Turso quando API_BASE está configurado.
  • Tem modo local com localStorage para testes sem back-end.

2. Agendamento

O front envia nome, telefone, serviços, data, horário e observação. O Worker valida serviços ativos, duração total, valor total, horário de funcionamento, bloqueios e conflitos. Se o horário já estiver ocupado, a API retorna erro 409.

3. Painel administrativo

O painel fica em admin.html. Em produção, a senha digitada é o mesmo valor de ADMIN_TOKEN salvo como secret do Worker. Pelo painel é possível ver agenda, alterar status, excluir/cancelar horários, editar serviços, informações do site e horários de funcionamento.

4. Tracking, UTMs e privacidade

O arquivo assets/tracking.js?v=20260620-auth-cookie-v4 coleta dados técnicos para entender origem, navegação e conversão. Ele envia UTMs, URL, referrer, cliques relevantes, abertura do agendamento, seleção de serviço/data/horário, tentativa e criação de agendamento.

Também envia dados técnicos do dispositivo/navegador quando disponíveis: largura de tela, viewport, idioma, timezone, plataforma, tipo de conexão e Client Hints. O Worker complementa com dados da Cloudflare, como país/cidade aproximados, e hash de IP/User-Agent usando HASH_SALT. O IP bruto não é salvo no banco.

Recomendação LGPD: manter finalidade clara, coletar apenas o necessário, disponibilizar canal de exclusão/anomização e usar opt-in específico para marketing/WhatsApp.

5. Como configurar a API no front-end

Depois de publicar o Worker, edite front-end/assets/config.js?v=20260620-auth-cookie-v4:

window.CAPITA_SITE = {
  API_BASE: 'https://capita-barbearia-api.seu-usuario.workers.dev',
  BUSINESS_ID: 'biz_capita_serrana',
  TRACKING_ENABLED: true,
  LOCAL_ADMIN_PASSWORD: 'capita#2026'
};

6. Diagnóstico rápido

Erro 503

Secrets do Turso não configurados ou migrations não aplicadas.

Erro 401

Token administrativo incorreto. Confira ADMIN_TOKEN.

Erro CORS

Configure ALLOWED_ORIGINS no wrangler.toml ou no Dashboard.

Horário não aparece

Verifique serviços ativos, duração, horários semanais e bloqueios.