FAQ - Cartão Virtual

FAQ - Cartão Virtual

 

Não consigo visualizar multi-cartões em meu app

Em caso de necessidade de um analista para verificação em conjunto, abra um ticket com a Mobile Saúde e acione o nosso atendimento especial

Situação: Validador não critica payload de login mas mesmo assim não consigo visualizar multi-cartões no meu app.

Solução: Nosso validador de integração checa erros de integridade no payload das requisições, regras de negócio são específicos de cada Operadora com isso não sendo possível criticar todos as possíveis regras de negócio que são implementadas na Operadora.

Para que seja exibido o beneficiário em contratos distintos é necessário que:

  • o array beneficiarios o objeto que contenha o beneficiário possua com o objeto dadosDoContrato > numeroContrato estejam iguais ao array contrato > numeroContrato estejam iguais

  • No exemplo de payload abaixo temos:

    • chaveUnica: 11111111111; numeroContrato: 999999

    • chaveUnica: 22222222222; numeroContrato: 888888

"beneficiarios": [ { "chaveUnica": "11111111111", "integracao": { "chaveBeneficiario": "" }, "dadosPessoais": { "nome": "", "sexo": { "codigo": "", "descricao": "" }, "dataNascimento": "", "contato": { "email": "", "telefoneCelular": "", "telefoneFixo": "" }, "cpf": "", "estadoCivil": { "codigo": "", "descricao": "" } }, "dadosDoContrato": { "numeroContrato": "999999" }, "dadosDoPlano": { "beneficiario": "", "idPlano": "", "descricao": "", "registroAns": "", "segmentacao": "", "acomodacao": "", "tipoContratacao": "", "regulamentacao": "", "abrangencia": "", "modalidadeCobranca": "", "padraoConforto": "", "participativo": "", "dataInicioVigenciaPlano": "", "dataFinalCpt": "", "dataInclusao": "", "matricula": "", "matriculaAntiga": "", "matriculaFuncionario": "", "tipoUsuario": { "codigo": "", "descricao": "" }, "grauParentesco": { "codigo": "", "descricao": "" }, "redeAtendimento": "", "carencia": [ { "tipoServico": "", "carencia": "" } ] }, "cartao": { "modeloCartao": "", "numeroCartao": "", "validade": "", "via": , "numeroCns": "", "apresentaCartaoVirtual": , "nomeCartao": "", "convenioAbrangenciaVerso": "" }, "custom": {} }, { "chaveUnica": "22222222222", "integracao": { "chaveBeneficiario": "" }, "dadosPessoais": { "nome": "", "sexo": { "codigo": "", "descricao": "" }, "dataNascimento": "", "contato": { "email": "", "telefoneCelular": "", "telefoneFixo": "" }, "cpf": "", "estadoCivil": { "codigo": "", "descricao": "" } }, "dadosDoContrato": { "numeroContrato": "888888" }, "dadosDoPlano": { "beneficiario": "", "idPlano": "", "descricao": "", "registroAns": "", "segmentacao": "", "acomodacao": "", "tipoContratacao": "", "regulamentacao": "", "abrangencia": "", "modalidadeCobranca": "", "padraoConforto": "", "participativo": "", "dataInicioVigenciaPlano": "", "dataFinalCpt": "", "dataInclusao": "", "matricula": "", "matriculaAntiga": "", "matriculaFuncionario": "", "tipoUsuario": { "codigo": "", "descricao": "" }, "grauParentesco": { "codigo": "", "descricao": "" }, "redeAtendimento": "", "carencia": [ { "tipoServico": "", "carencia": "" } ] }, "cartao": { "modeloCartao": "", "numeroCartao": "", "validade": "", "via": , "numeroCns": "", "apresentaCartaoVirtual": , "nomeCartao": "", "convenioAbrangenciaVerso": "" }, "custom": {} } }

 

  • Precisam os atributos dadosDoContrato > numeroContrato precisam esta de acordo com o array contrato > numeroContrato no payload abaixo:

{ "contratos": [ { "descricaoContrato": "CONTRATO 1", "numeroContrato": "999999", "empresaContratante": { "codigo": "", "descricao": "" }, "tipoPessoa": { "codigo": "", "descricao": "" }, "tipoRelacionamento": { "codigo": "", "descricao": "" }, "tipoContratante": { "codigo": "", "descricao": "" }, "dataInicioVigenciaContrato": "", "dadosTitular": { "matricula": "", "nome": "" } }, { "descricaoContrato": "CONTRATO 2", "numeroContrato": "888888", "empresaContratante": { "codigo": "", "descricao": "" }, "tipoPessoa": { "codigo": "", "descricao": "" }, "tipoRelacionamento": { "codigo": "", "descricao": "" }, "tipoContratante": { "codigo": "", "descricao": "" }, "dataInicioVigenciaContrato": "", "dadosTitular": { "matricula": "", "nome": "" } } ] }

Com estas correlações o app exibirá ambos os contratos

Em caso de necessidade de um analista para verificação em conjunto, abra um ticket com a Mobile Saúde e acione o nosso atendimento especial

 


Beneficiários não conseguem acessar o cartão virtual no app.

Todos os procedimentos abaixo devem ser seguidos com cautela. Caso não possua o conhecimento técnico necessário, recomendamos que entre em contato com sua equipe de TI da Operadora ou nos acione via chamado solicitando uma agenda especial para verificação em conjunto com um técnico da Mobile Saúde.

Possíveis Soluções

  1. Verificação com Login e Senha do Beneficiário

Caso a Operadora tenha o login e senha do beneficiário em questão, realize as seguintes etapas:

  1. Acessar o Validador de Integração de Login:

    • Navegue até Configurador de funcionalidadesOpções de loginLoginIntegraçõesLogin/editar.

image-20241227-134602.png
Configurador de funcionalidadesOpções de loginLoginIntegraçõesLogin/editar.
  1. Verificar Dados do Beneficiário:

    • No validador, verifique se os dados do beneficiário estão corretos.

    • Se forem encontrados erros, corrija-os, pois alguns erros podem impedir o login do beneficiário no app.

  1. Análise Sem Login e Senha

Se não for possível obter o login e a senha do beneficiário, a recomendação é realizar uma análise mais detalhada na central de logs:

  1. Acessar a Central de Logs:

    • Navegue até SegurançaCentral de Logs.

image-20241227-134646.png
  1. Aplicar Filtros:

    • Aplique os filtros de Operação e Login para buscar por entradas relacionadas ao login do beneficiário.

  2. Verificar o JSON Retornado:

    • Ao consultar os logs, verifique o conteúdo do JSON retornado. Isso pode ajudar a identificar erros específicos ou problemas de integração que estão impedindo o acesso ao cartão virtual.

Todos os procedimentos abaixo devem ser seguidos com cautela. Caso não possua o conhecimento técnico necessário, recomendamos que entre em contato com sua equipe de TI da Operadora ou nos acione via chamado solicitando uma agenda especial para verificação em conjunto com um técnico da Mobile Saúde.


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