Data: 2026-04-03 Objetivo: Validar viabilidade de switching entre organizações no ConvertaFlow Status: Viável — Clerk suporta nativamente
1. Contexto
O ConvertaFlow precisa permitir que um mesmo usuário (ex: funcionario que trabalha para varias empresas) consiga alternar entre organizações/tenants sem fazer logout/login.
Cenario real:
- Joao trabalha para Empresa A, Empresa B e Empresa C
- Hoje no mercado ele precisa: abrir 3 navegadores OU fazer login/logout constantemente
- No ConvertaFlow: ele faz 1 login e alterna entre as 3 empresas com 1 clique
2. Empresas que Implementam Multi-Org Switching
Plataformas Globais
| Plataforma | Padrão UX | Re-auth? | Detalhe |
|---|---|---|---|
| Slack | Icones verticais na sidebar | Não | Enterprise Grid para orgs interconectados |
| Notion | Dropdown topo sidebar | Não | Transição instantanea |
| Discord | Lista de servidores (icones) | Não | Badges de não-lido por servidor |
| GitHub | Dropdown no avatar | Não | Roles diferentes por org |
| Vercel | Dropdown top-left | Não | URL muda para refletir team |
| Linear | Dropdown sidebar | Não | Cada workspace isolado |
| Figma | Team switcher sidebar | Não | Drafts pessoais + times |
| Postman | Dropdown "Workspaces" | Não | Pessoal, time e públicos |
| Stripe | Account switcher top-left | Não | Toggle test/live por conta |
| Cloudflare | Account switcher sidebar | Não | Cada conta com domínios próprios |
Plataformas de Atendimento / CRM
| Plataforma | Padrão UX | Re-auth? | Relevância |
|---|---|---|---|
| Intercom | Workspace switcher top-left | Não | Concorrente direto |
| Freshdesk | Grid switcher (Freshworks) | Não | Multi-produto + multi-org |
| HubSpot | Account switcher top-right | Não | Agências usam extensivamente |
| Crisp | Website switcher sidebar | Não | Muito similar ao ConvertaFlow |
| Chatwoot | Account switcher bottom sidebar | Não | Open source, referência direta |
| Tidio | Project switcher | Não | - |
| LiveChat | Org switcher dropdown | Não | - |
| Zendesk | SEM switcher nativo | Sim | Fraqueza da plataforma |
Plataformas Brasileiras
| Plataforma | Padrão UX | Re-auth? | Detalhe |
|---|---|---|---|
| Take Blip | Tela de seleção de contratos | Não | Maior de messaging BR |
| RD Station | Dropdown top-right (agências) | Não | Padrão agências BR |
| Zenvia | Seleção pos-login | Não | Menos seamless |
| Bling ERP | Company switcher | Não | Para contadores |
| Octadesk | Limitado | Varia | Melhorou pos-Locaweb |
| Hotmart | Profile switcher (roles) | Não | Não e multi-org puro |
3. Padrões UX Identificados
Padrão A: Sidebar Dropdown (RECOMENDADO)
- Usado por: Notion, Linear, Intercom, Crisp, Vercel, Stripe
- Melhor para: 2-10 organizações
Padrão B: Sidebar Icon Strip
- Usado por: Slack, Discord
- Melhor para: 3-50+ orgs com notificações real-time
Padrão C: Tela de Seleção
- Usado por: Atlassian, Take Blip, Zenvia
- Melhor para: Enterprise com muitos tenants
Padrão D: Navbar Account Menu
- Usado por: GitHub, Google, HubSpot, RD Station
- Melhor para: Switching infrequente
4. Analise Técnica — Clerk
Suporte Nativo
- Usuário membro de multiplas orgs: Ilimitado
- Switching sem re-autenticação: Nativo (setActive)
- JWT atualizado automaticamente: ~50ms
- Hook useOrganizationList: Com paginação
- Componente OrganizationSwitcher: Disponível
Modelo de Identidade Clerk
- 1 e-mail = 1 conta = N memberships em N organizações
- Senha única (identidade global)
- Roles diferentes por org
- Switching via setActive({ organization: orgId })
Limites
- Orgs por usuário: Ilimitado
- Membros por org (free): 5
- Membros por org (B2B add-on): Ilimitado
- MROs gratuitos (prod): 100
- Acima de 100: B2B add-on (pago)
5. Estado Atual no ConvertaFlow
- team-switcher.tsx já usa useOrganizationList + setActive
- Dropdown "ORGANIZAÇÕES" já funciona no sidebar
- Backend Python extrai org_id do JWT e faz SET search_path
- Webhooks Clerk criam schema isolado por organização
O que falta
- UX refinada do switcher (badges, status, indicadores)
- Reload de contexto ao trocar de org
- Popup educativo no primeiro acesso multi-org
- Convite via link interno com onboarding
- Badges de notificação por org
6. Decisão
Padrão escolhido: Sidebar Dropdown (Padrão A) Viabilidade: Alta — base já implementada, Clerk suporta nativamente Complexidade: Baixa — não requer mudanças no backend
Pesquisa realizada em 2026-04-03