EN
TRN-IT-001 · v1.0
11 Jun 2026

Arquitectura Híbrida BrandaCare

Decisión estratégica: Google Apps Script (HIPAA) + Netlify (UX)

Propósito

Documentar la decisión arquitectural fundamental de cómo BrandaCare maneja datos sensibles (PHI/HIPAA) vs. datos no-sensibles, separando responsabilidades en 2 capas claras. Esta separación nos permite escalar sin comprometer compliance.

Audiencia: Yami, Pablo, Quasar, Santi, Manuel. Todo el team técnico y de liderazgo debería entender esto.

La regla de oro

Toda data con PHI vive dentro del ecosistema Google Workspace (Apps Script, Sheets, Drive, Forms). Toda UX / branding / training vive en Netlify (HTML estático). La capa visible es Netlify; la capa que toca PHI es Google Apps Script embebido.

Las 2 capas

CapaContenidoVendorHIPAACosto
UX Layer
(no-PHI)
Manual / training
Dashboard general
Forms internos sin PHI
Navegación + branding
Acrónimos, glosarios
Netlify No requerido $0/mes
HIPAA Layer
(PHI)
Patient data
Insurance verifications
Claims data
Forms con PHI
EOBs procesados
Productivity tracker con paciente
Google Workspace
+ Apps Script
Sí — vía BAA con Google Incluido en Workspace

Cómo se conectan

Apps Script web apps se embeben dentro del frontend de Netlify usando iframes. El usuario ve UNA sola experiencia BrandaCare, pero técnicamente:

  1. El HTML "host" en Netlify trae la UX, el branding, la navegación
  2. Cuando el usuario necesita interactuar con PHI (ej: ver una verificación, completar un form de paciente), ese widget es un iframe a un Apps Script web app
  3. El iframe corre dentro del browser pero su contenido y la data viven en Google
  4. BrandaCare nunca tiene PHI en Netlify ni en servidores propios
Ejemplo concreto: Cuando un Junior Insurance Verification abre "Insurance Verification Form" en el dashboard, el shell del dashboard (branding, navegación) viene de Netlify, pero el form mismo es un Apps Script app embebido. El form lee/escribe en Google Sheet — donde vive HIPAA-compliant.

Reglas críticas para el team técnico

REGLAPor qué
NUNCA poner PHI en HTML estático de NetlifyNetlify no tiene BAA = no es HIPAA compliant
NUNCA hardcodear PatNum + nombre + DOB en docs públicosCombinación = PHI según HIPAA
NUNCA permitir queries a OD desde JavaScript de NetlifyLas credentials de OD darían acceso a PHI desde un entorno no-HIPAA
SIEMPRE poner workflows con PHI dentro de Apps ScriptWorkspace es el único lugar con BAA
SIEMPRE embeber Apps Script via iframeAísla el sandbox de PHI del shell público
SIEMPRE auditar logs en Apps Script para acciones con PHIHIPAA requiere audit trail

Decisiones de qué va dónde

ComponenteVive enRazón
Manual interno (este sitio)NetlifySolo training/SOPs sin PHI
Auth gate del manualNetlify + Google OAuthSolo restringe acceso, no toca data
Insurance Verification FormApps ScriptTiene PHI (paciente, DOB, ID)
OPS Dashboard (futuro)HíbridoShell en Netlify, widgets PHI en Apps Script embebido
Productivity Tracker (futuro)Apps ScriptReferencia PHI por PatNum
Carrier Coverage NotesNetlifySolo reglas genéricas de carriers, sin pacientes
BC Breakdown (futuro)Apps ScriptContiene paciente + plan + coverage real
Timesheets internosApps Script o NetlifyApps Script preferido (auth Workspace) — sin PHI
IT tickets internosNetlifySin PHI

Beneficios de este modelo

Roadmap de migración

FaseAcciónStatus
F1Manual estático en Netlify + auth gate Google OAuthEn curso
F2Embeber primer Apps Script form en el manual (proof of concept)Pendiente
F3Migrar 1 form de Jotform a Apps ScriptPendiente
F4Migrar resto de forms PHI a Apps Script → cancelar JotformPendiente
F5Construir OPS Dashboard como shell Netlify + widgets Apps ScriptQ3-Q4 2026
F6Migrar Productivity Tracker + Task assignment al nuevo dashboardQ4 2026

Relacionados