Saltar al contenido principal

Seguridad y privacidad

Tus datos y los de tus clientes son críticos. Aquí está exactamente cómo los protegemos a nivel infraestructura, código y operación.

Aislamiento absoluto entre clientes

Cada cliente tiene sus datos completamente separados a nivel de base de datos. Implementamos Row Level Security (RLS) en Supabase Postgres, así que aunque el código tuviera un bug, técnicamente es imposible que un cliente vea datos de otro. Cada query se filtra automáticamente por cliente_id verificado contra la sesión autenticada.

  • Row Level Security (RLS) activo en cada tabla con datos sensibles
  • auth.uid() validado a nivel Postgres, no a nivel aplicación
  • Mismo principio aplica a archivos en Storage (fotos, documentos)

Encryption en tránsito y reposo

Toda la comunicación entre el navegador del cliente, nuestros servidores, y servicios externos (WhatsApp, Stripe, Supabase) viaja sobre TLS 1.3. Los datos en reposo en Supabase están encriptados a nivel disco con AES-256. Las API keys de Stripe que el cliente conecta se encriptan adicionalmente con AES-256-GCM antes de almacenarse.

  • TLS 1.3 en todas las conexiones
  • AES-256 disk encryption en base de datos
  • AES-256-GCM para campos extra-sensibles (Stripe secret keys del cliente)
  • API keys nunca aparecen en logs ni en frontend

Email autenticado (DMARC + SPF + DKIM)

Todos los emails transaccionales (invitaciones, confirmaciones, reportes) salen desde nuestro propio dominio autenticado con DMARC, SPF y DKIM. Esto significa que ningún spammer puede suplantarte y que Gmail/Yahoo entregan tus emails al inbox, no a spam. Cumplimos con las reglas de bulk sender 2024 (List-Unsubscribe, 1-click unsubscribe).

  • DMARC con quarantine policy y reportes diarios
  • SPF y DKIM configurados por dominio
  • List-Unsubscribe header en cada email marketing
  • Opt-out 1-click cumpliendo Gmail/Yahoo bulk sender 2024

Pagos con Stripe (PCI compliant)

Nunca tocamos números de tarjeta. Toda la captura de pago va directo a Stripe, que es PCI-DSS Level 1 (el estándar más alto). Cuando un cliente conecta su propia cuenta Stripe para recibir depósitos, el dinero va de su cliente final a su Stripe directamente — nosotros no somos intermediarios financieros.

  • Stripe PCI-DSS Level 1 (el más estricto)
  • Nunca almacenamos números de tarjeta — solo IDs de Stripe
  • Stripe Connect / API keys del cliente para recibir pagos directos
  • Webhooks de Stripe verificados con signature HMAC

Equipo y permisos granulares

Cuando agregas staff a tu cuenta, cada uno tiene rol específico (admin, recepcionista, estilista, staff). Los permisos se aplican a nivel base de datos — un staff no puede consultar datos a los que no tiene acceso aunque intente saltarse el frontend. El owner de la cuenta puede revocar acceso instantáneamente.

  • Roles: owner, admin, recepcionista, estilista, staff
  • Permisos enforced en base de datos (no solo UI)
  • Revocación instantánea (cambio se aplica al siguiente request)
  • Auditoría: quién hizo qué y cuándo

Infraestructura

Construimos sobre stack moderno con uptime alto y backups automáticos. Vercel (frontend, edge global), Supabase (base de datos Postgres con backups continuos), n8n auto-hospedado en VPS dedicado para los workflows del bot. Cada componente con monitoreo y alertas.

  • Vercel para edge serverless (uptime ~99.99%)
  • Supabase con backups continuos point-in-time recovery
  • n8n self-hosted con respaldo automático diario
  • Error tracking automático con alertas WhatsApp

Privacidad y cumplimiento

Cumplimos con la Ley 184 de Puerto Rico (notificación de brechas) y con principios GDPR-like (acceso, rectificación, borrado). Si un cliente final pide que sus datos sean eliminados, te damos el flujo para borrar todo (datos personales, conversaciones, citas) sin afectar el resto.

  • Right to be forgotten implementado
  • Export de datos del cliente final disponible
  • Aviso de privacidad transparente
  • No vendemos ni compartimos datos con terceros

¿Necesitas más detalles para tu compliance?

Para clínicas médicas, dentales, bufetes legales o cualquier negocio regulado, podemos firmar acuerdos de tratamiento de datos (DPA) y proveer documentación adicional.

Hablar con el equipo