FAQ - Cartão Virtual
Acesso Negado a Cartão Virtual por Discrepância de Contrato
Objetivo: Auxiliar na rápida identificação, diagnóstico e resolução do problema de acesso à funcionalidade de Cartão Virtual, com foco na discrepância de IDs de contrato.
1. Visão Geral do Incidente
Item | Descrição |
|---|---|
Resumo | Beneficiários não conseguem acessar a funcionalidade de "Cartão Virtual" no aplicativo — a tela de seleção de beneficiários aparece vazia, sem opções para escolha. Causa: falha na validação de permissão devido a IDs de contrato divergentes. |
Tipo | Integração (API/Backend) e Lógica de Negócio (Permissão de Acesso) |
Severidade | Média (impede uso de funcionalidade chave, mas sistema não está totalmente indisponível) |
Ambiente | Produção e Sandbox |
Status | Causa raiz identificada; opções de correção propostas |
2. Contexto Técnico
Stack envolvida:
APIs: Login/Autenticação,
beneficiariosAcessoFuncionalidade(validação de acesso), Cartão Virtual (seleção de beneficiários)Backend: Serviço que implementa lógica de permissão e gerencia dados de beneficiários/contratos
Frontend: Aplicativo mobile/web que consome as APIs
Componentes afetados:
Interface do "Cartão Virtual"
Lógica de validação no método
beneficiariosAcessoFuncionalidadePayload de resposta da API de Login
Dependências externas:
Sistema de cadastro de beneficiários e vínculos contratuais
Sistema de configuração de permissões por funcionalidade
3. Sintomas Observados
Tipo | Descrição |
|---|---|
Erro reportado | "Beneficiário não consegue acessar a funcionalidade de cartão virtual." |
Comportamento inesperado | Lista de beneficiários para seleção aparece vazia, mesmo com beneficiários associados ao usuário logado. |
4. Impacto
Usuários afetados: Beneficiários cujos contratos no payload de login diferem do esperado pelo método
acessa_funcionalidadepara o Cartão Virtual.Funcionalidades comprometidas: Acesso total ao "Cartão Virtual".
Escopo: Restrito a usuários com configuração de contrato específica.
5. Causa Raiz
Divergência de ID de Contrato: O numeroContrato vinculado aos beneficiários no payload de login não corresponde ao numeroContrato que o método beneficiariosAcessoFuncionalidade (feature_id=3) espera para conceder permissão.
Cadeia de eventos:
Usuário tenta acessar "Cartão Virtual"
Sistema invoca
beneficiariosAcessoFuncionalidadepara feature_id=3Método retorna: permitido apenas para
numeroContrato = X
Sistema processa beneficiários do login (vinculados a
numeroContrato = Y)X ≠ Y→ nenhum beneficiário tem permissãoInterface de seleção é exibida vazia
6. Solução / Mitigação
Opção: Ajustar regra de acesso (beneficiariosAcessoFuncionalidade) com base na documentação
1.4 - Grupo familiar - Acesso funcionalidade
Ação: Modificar configuração da feature_id=3 para aceitar o
numeroContratoreal do login.Workaround (acesso amplo): Remover a restrição de contrato (deixar vazio) → todos os beneficiários do grupo familiar aparecem.
Riscos: Pode conceder acesso indevido a outros contratos.
7. Validação da Solução
Tipo | Critério |
|---|---|
Teste funcional | Login com usuário afetado → navegar para Cartão Virtual → beneficiários listados → fluxo completo OK |
Logs esperados |
|
8. Documentações
Este FAQ tem como base algumas documentações que devem ser seguidas e estar de acordo para o funcionamento de todos os métodos:
1.4 - Grupo familiar - Acesso funcionalidade