FAQ - Cartão Virtual

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

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

image-20260428-192203.png
Grupo familiar do cartão virtual vazio.

 


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 beneficiariosAcessoFuncionalidade

  • Payload 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

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_funcionalidade para 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:

  1. Usuário tenta acessar "Cartão Virtual"

  2. Sistema invoca beneficiariosAcessoFuncionalidade para feature_id=3

  3. Método retorna: permitido apenas para numeroContrato = X

  1. Sistema processa beneficiários do login (vinculados a numeroContrato = Y)

  2. X ≠ Y → nenhum beneficiário tem permissão

  3. Interface 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 numeroContrato real 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

Tipo

Critério

Teste funcional

Login com usuário afetado → navegar para Cartão Virtual → beneficiários listados → fluxo completo OK

Logs esperados

beneficiariosAcessoFuncionalidade indicando permissão concedida; API retornando lista de beneficiários

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.1 - Login

1.4 - Grupo familiar - Acesso funcionalidade

 

Mobile Saúde - Mosia Omnichannel