Política de Privacidade
1. Quem somos e quem cuida dos seus dados
A Quero Marcar (CNPJ ), com sede em , é responsável pelos dados pessoais tratados na plataforma quero marcar — sistema de agendamento online para barbearias, salões e estabelecimentos de beleza.
1.1 Encarregado de Proteção de Dados (DPO)
Nomeamos um Encarregado de Proteção de Dados conforme exige a LGPD (art. 41):
- E-mail:
- Endereço postal: — A/C Encarregado de Proteção de Dados
O DPO recebe reclamações dos titulares, presta esclarecimentos e toma providências quando necessário.
2. Quais dados coletamos
Coletamos só o que é necessário para prestar o serviço.
2.1 Clientes que fazem agendamentos
Clientes que agendam via página pública de um estabelecimento fornecem:
| Dado | Obrigatório? | Para quê serve |
|---|---|---|
| Nome completo | Sim | Identificação no agendamento |
| Não | Enviar confirmação e link de gerenciamento | |
| Telefone | Depende do tenant | Contato e notificações via WhatsApp/Telegram |
| Observações | Não | Preferências ou instruções para o profissional |
IP: capturado só para limitar requisições automáticas abusivas (rate limiting) via Upstash Redis. Não é gravado no banco de dados.
2.2 Donos de estabelecimento (tenants)
| Dado | Obrigatório? | Para quê serve |
|---|---|---|
| Nome completo | Sim | Identificação da conta |
| Sim | Login, notificações, comunicações | |
| Telefone | Sim | Verificação anti-fraude via OTP |
| CPF | Sim | Prevenção de contas duplicadas fraudulentas |
| Nome do estabelecimento e slug | Sim | URL pública e identificação do tenant |
| Endereço completo | Não | Exibição na página pública |
| Categoria e fuso horário | Sim | Configuração da plataforma e horários corretos |
Fingerprinting anti-fraude: para evitar que um mesmo usuário crie múltiplos estabelecimentos, guardamos hash SHA-256 do telefone, hash SHA-256 do CPF (nunca o valor em texto), IP de cadastro, user-agent e device ID.
Faturamento: Stripe Customer ID, status da assinatura e período vigente. Dados de cartão ficam só na Stripe — nunca passam pelos nossos servidores.
2.3 Profissionais da equipe
| Dado | Obrigatório? | Para quê serve |
|---|---|---|
| Sim | Login e acesso ao painel | |
| Nome completo | Sim | Agenda e página pública |
| Foto, bio, especialidade | Não | Perfil público (se o tenant ativar) |
| Função (admin/profissional) | Sim | Controle de acesso |
3. Por que tratamos esses dados e com qual base legal
| Finalidade | Base legal (LGPD art. 7º) | Dados |
|---|---|---|
| Executar o contrato SaaS | Inciso V — execução de contrato | Dados de tenants e profissionais |
| Processar agendamentos | Inciso V — execução de contrato | Dados de clientes finais |
| Enviar confirmações e lembretes | Inciso V; Inciso I (quando opcional) | Nome, e-mail, telefone |
| Autenticação e segurança | Inciso IX — legítimo interesse | E-mail, tokens JWT |
| Prevenir fraude e abuso | Inciso IX — legítimo interesse | IP, hashes SHA-256, device ID |
| Cobrar e gerir assinaturas | Inciso V — execução de contrato | Dados de faturamento |
| Cumprir obrigações legais | Inciso II — obrigação legal | Conforme exigência legal |
| Monitorar erros da plataforma | Inciso IX — legítimo interesse | Stack traces mascarados (Sentry) |
4. Programa de fidelidade (opcional)
Quando o estabelecimento ativa o programa de fidelidade, o cliente pode optar por participar — a inscrição é sempre opt-in, com base no consentimento (Art. 7º, I da LGPD). Sem o opt-in, nenhum dado de fidelidade é gerado para aquele cliente.
4.1 Dados tratados
- Identificador do cliente no estabelecimento
- Histórico de transações de pontos (créditos e resgates)
- Saldo atual de pontos
4.2 Encerramento do programa
Caso o estabelecimento descontinue o programa de fidelidade, o cliente receberá comunicação por e-mail e terá 30 dias para resgatar o saldo remanescente em um novo atendimento. Após esse prazo, os pontos não resgatados são zerados automaticamente. Durante a janela de 30 dias, novos pontos não são acumulados, mas os existentes podem ser usados normalmente.
4.3 Reativação por reatendimento
Se um cliente sai do programa (ou tem o saldo zerado) e volta a ser atendido, os pontos anteriores não retornam automaticamente. O programa credita apenas fatos novos a partir da reativação.
4.4 Anonimização do ledger
Quando um cliente entra na faixa de retenção (ver Seção 8), as linhas do ledger de fidelidade têm os vínculos identificáveis removidos (cliente, agendamento, observações) e os agregados (pontos creditados, saldo na data) são preservados apenas para fins estatísticos. A anonimização é irreversível.
5. Com quem compartilhamos dados
Compartilhamos dados só com fornecedores que precisamos para entregar o serviço. Não vendemos, alugamos nem cedemos dados para fins comerciais.
| Fornecedor | Serviço | Dados | Jurisdição | Privacidade |
|---|---|---|---|---|
| Supabase, Inc. | Banco de dados, autenticação, storage | Todos os dados | EUA / UE | supabase.com/privacy |
| Resend, Inc. | Envio de e-mails | Nome, e-mail, detalhes do agendamento | EUA | resend.com/legal/privacy-policy |
| Stripe, Inc. | Pagamentos e assinaturas | Nome, e-mail, cartão tokenizado | EUA | stripe.com/br/privacy |
| Upstash, Inc. | Rate limiting e OTP temporário | Hash de IP, contadores | UE / EUA | upstash.com/trust/privacy.pdf |
| Sentry (Functional Software) | Monitoramento de erros | Stack traces mascarados; sem conteúdo do usuário | EUA / UE | sentry.io/privacy |
| Vercel, Inc. | Hospedagem e cron jobs | Logs de requisição, cabeçalhos | EUA | vercel.com/legal/privacy-policy |
| Z-API | WhatsApp (opt-in do tenant) | Telefone, texto da mensagem | Brasil | z-api.io/privacidade |
| Telegram FZ-LLC | Telegram (opt-in do tenant) | Chat ID, texto da mensagem | Rússia / UE | telegram.org/privacy |
6. Como protegemos dados sensíveis
Para fins anti-fraude, aplicamos pseudonimização irreversível:
- CPF e telefone (anti-fraude): armazenados como hash SHA-256 — impossível recuperar o valor original a partir do hash.
- IP: usado de forma transiente para rate limiting. Não é gravado no banco.
Para prevenir uso indevido de períodos de teste (trial abuse), armazenamos hash criptográfico SHA-256 do número de telefone do responsável pelo estabelecimento na criação do tenant. Esse hash não permite recuperar o telefone original e é tratado com base no legítimo interesse (Art. 7º, IX da LGPD).
Isso permite detectar tentativas de fraude sem guardar dados pessoais desnecessários.
7. Transferências internacionais
Usamos fornecedores com infraestrutura nos EUA e na UE. Conforme o art. 33 da LGPD, as transferências ocorrem para países com proteção adequada (UE/GDPR) ou mediante contratos com cláusulas equivalentes às recomendadas pela ANPD. Stripe tem certificação PCI-DSS; Supabase e Sentry têm SOC 2.
8. Por quanto tempo guardamos os dados
| Tipo de dado | Retenção | Motivo |
|---|---|---|
| Histórico de agendamentos | Conta ativa + 5 anos | Obrigação legal, histórico contábil |
| Token de acesso ao agendamento | 7 dias após o horário | Cancelamento pelo cliente |
| IP para rate limiting | Transiente — não persiste | Segurança operacional |
| Fingerprint anti-fraude | Duração da conta do tenant | Prevenção de fraude |
| JWT de autenticação | 15 a 30 minutos (TTL) | Segurança de sessão |
| Dados de profissionais (soft-delete) | Registro com deleted_at preenchido | Integridade do histórico |
| Snapshots de serviços | Permanente em appointment_services | Histórico financeiro imutável |
| Logs de auditoria | Conta ativa + 5 anos | Compliance |
| Dados de faturamento | Conforme Stripe e legislação fiscal | Obrigação legal |
Os prazos de retenção respeitam o Art. 16 da LGPD (hipóteses de conservação de dados após o término do tratamento) e visam atender obrigações legais, exercício regular de direitos e estudos de pesquisa anonimizados.
8.1 Política de retenção de cadastro de clientes finais
Para minimização de dados (Art. 6º, III da LGPD), aplicamos três faixas ao cadastro de clientes finais do estabelecimento:
| Faixa | Critério | Ação |
|---|---|---|
| Ativos | Último atendimento há 24 meses ou menos | Retenção integral — nada muda |
| Inativos | Sem atendimento entre 24 e 60 meses | Anonimização — nome vira "Cliente Anonimizado"; telefone, e-mail e observações são removidos; histórico agregado é mantido para fins estatísticos |
| Dormentes | Sem atendimento há mais de 60 meses | Exclusão definitiva do cadastro do cliente. O ledger de fidelidade fica anonimizado (sem vínculo identificável, com valores agregados preservados) |
Essas regras são executadas diariamente pelo cron lgpd-retention. Clientes que voltam a se agendar saem automaticamente da fila de anonimização/exclusão antes do cron rodar.
Importante: a anonimização e a exclusão são irreversíveis. Não há "lixeira" — uma vez aplicado, o dado original não volta.
Após encerramento da conta, os dados são anonimizados ou excluídos conforme o DPA.
9. Seus direitos como titular
Conforme o art. 18 da LGPD, você pode:
| Direito | O que significa |
|---|---|
| Confirmação e acesso (inciso I/II) | Saber se tratamos seus dados e ver quais são |
| Correção (inciso III) | Pedir correção de dados incompletos ou incorretos |
| Bloqueio ou eliminação (inciso IV) | Para dados desnecessários ou tratados fora da lei |
| Portabilidade (inciso V) | Receber seus dados em formato estruturado |
| Eliminação (inciso VI) | Excluir dados tratados com base no seu consentimento |
| Informação sobre compartilhamento (inciso VII) | Saber com quem compartilhamos seus dados |
| Revogação do consentimento (inciso IX) | Cancelar consentimento dado anteriormente |
| Oposição (inciso § 2º) | Contestar tratamento por legítimo interesse |
| Revisão de decisão automatizada (art. 20) | Pedir revisão de decisões automáticas |
9.1 Caminho self-service
Para clientes finais que agendaram em um estabelecimento, a central de preferências em /{slug}/preferencias/{token} permite gerenciar opt-in de comunicações de marketing e exportar/baixar os dados de agendamento associados ao token (portabilidade — Art. 18, V). O link aparece no rodapé dos e-mails, mensagens de WhatsApp e Telegram enviados pelo estabelecimento.
Eliminação (Art. 18, VI): a solicitação deve ser feita por e-mail ao DPO (). A central de preferências oferece exportação de dados e opt-out de marketing; auto-eliminação self-service está em desenvolvimento e será disponibilizada em versão futura. Em conjunto, dados inativos são anonimizados ou excluídos automaticamente conforme a política de retenção (item 8).
Para exercer qualquer direito, envie e-mail para . Respondemos confirmações de tratamento e solicitações de acesso em até 15 dias (Art. 19 da LGPD). Demais solicitações (eliminação, portabilidade, oposição, revisão) são respondidas em prazo razoável conforme a complexidade do pedido, sempre comunicando o titular sobre o andamento. Podemos pedir verificação de identidade antes de processar.
10. Cookies
Usamos o mínimo possível:
| Cookie | Tipo | Duração | Para quê |
|---|---|---|---|
| sb-[project-id]-auth-token | Essencial | Sessão (~30 min) | Autenticação JWT Supabase |
| sb-[project-id]-auth-token-code-verifier | Essencial | Sessão | PKCE para OAuth seguro |
| Sentry Session Replay | Análise de erros | Sessão | Diagnóstico de erros em 10% das sessões; todo o conteúdo é mascarado |
Sentry Session Replay coleta amostra anonimizada de até 10% das sessões para diagnóstico de falhas. Base legal: legítimo interesse (Art. 7º, IX) — finalidade de melhoria contínua da plataforma e correção de bugs. Dados não permitem reidentificar o titular.
Sem cookies de publicidade, rastreamento ou analytics de terceiros. Veja mais na Política de Cookies.
11. Como protegemos os dados
- Todas as comunicações usam HTTPS/TLS
- Row Level Security no banco — cada tenant só vê seus próprios dados
- RBAC (admin/profissional) verificado no banco, não só no JWT
- CPF e telefone anti-fraude: somente hash SHA-256, nunca texto simples
- Soft-delete: dados desativados com timestamp, não apagados
- JWT expira em 15-30 min; token de agendamento em 7 dias
- Todas as entradas validadas com Zod (prevenção de injeção)
- Uploads: só PNG, JPEG e WebP; SVG bloqueado
Em caso de incidente, notificamos os titulares e a ANPD conforme o art. 48 da LGPD.
12. Atualizações desta política
Quando houver mudanças relevantes, avisamos com pelo menos 15 dias de antecedência por e-mail ou aviso na plataforma. A data de vigência no topo do documento indica a versão atual.
13. Contato
- DPO (Proteção de Dados):
- Suporte geral:
- Endereço: — A/C Encarregado de Proteção de Dados
- ANPD (para reclamações não resolvidas conosco): gov.br/anpd