DIOPS-XML (até 2015)
O DIOPS-XML é o sistema de recepção das informações cadastrais e financeiras enviadas regularmente pelas operadoras de planos privados de saúde, sendo regulamentado pela Resolução Normativa RN nº 173, de 10 de julho de 2008, e suas alterações posteriores.
O envio das informações cadastrais deve ser efetuado pelo menos uma vez. Os próximos envios serão realizados caso a operadora tenha alterado algum dado cadastral (endereço, representante, administradores e etc.). Já o envio das informações financeiras deve ser efetuado trimestralmente (a partir do 1º trimestre de 2007).
Os prazos de envio dessas informações estão definidos na RN supra mencionada..
A transmissão dessas informações será realizada através de web services disponibilizados pela ANS.
Após a recepção dessas informações pela ANS, serão realizadas críticas complementares de preenchimento para validação das mesmas. Essa validação é efetuada a partir de uma hora após a recepção das informações.
Desta forma, está disponível no sítio da ANS, a página para consulta dos processamentos dos arquivos enviados. As operadoras devem verificar o status dos envios realizados e corrigir, o mais breve possível, os problemas encontrados.
O padrão definido para o DIOPS segue os conceitos da Troca de Informação em Saúde Suplementar (TISS), a partir da qual os dados passam a ser enviados pelas operadoras para a ANS em arquivos de formato padrão, utilizando o XML, com conteúdo descrito e definido por meio de "schemas" XSD.
A proposta da ANS utiliza padrões já existentes e disponíveis em outros bancos de dados e sistemas de informações, permitindo uma compatibilização com os diversos sistemas de informação em saúde hoje existentes e possibilitando uma melhor utilização das informações coletadas.
Como implantar o DIOPS XML
A ANS disponibiliza apenas os serviços de recepção dos DIOPS-XML (Web Services), sendo de responsabilidade da operadora a geração e envio do XML.
Estas orientações são dirigidas às operadoras e seguradoras, preferencialmente para os profissionais da área de Tecnologia da Informação (TI).
Passo-a-passo de geração do XML
- Acesse os schemas: diopsComplexTypes.xsd e diopsSimpleTypes.xsd
- Consulte o Controle de Versões para verificar as atualizações;
- Analise os elementos que serão utilizados e os campos obrigatórios de cada um deles;
- Produza o documento XML do tipo específico (Cadastral ou Financeiro);
- Faça o cálculo do hash.
- Valide seu XML através de websites que forneçam esse serviço online:
Ex: http://tools.decisionsoft.com/schemaValidate.html Ou utilize uma ferramenta que contenha um parser XML:
Ex: http://projects.apache.org/indexes/pmc.html#Apache%20Xerces
Passo-a-passo para envio do XML
- Extraia o certificado digital do DIOPS-XML: cacerts;
- Crie a variável de ambiente ANS_CERT: Valor da variável: arquivo cacerts (ex: C:\ANS\cacerts)
- Baixe o cliente do Serviço Receptor, fornecido pela ANS:DIOPSClient.jar
- Adicione-o como biblioteca da sua aplicação;
- Sua aplicação deve instanciar o objeto da classe JNIMain e chamar o método String send (String path, String file, String tipo, String senha) onde:
path - caminho para armazenamento do recibo;
file - caminho do arquivo XML a ser enviado;
tipo - tipo de mensagem (Financeiro ou Cadastral);
senha - senha padrão da operadora na ANS;
O retorno deste método é o erro ocorrido. Se o retorno for nulo, o envio foi bem sucedido. - Este cliente fará a conexão com os Web Services do DIOPS-XML.
Qualquer transmissão do DIOPS-XML que não utilize este padrão será recusada pelo servidor.
Cálculo do HASH
Todos os valores dos nós da estrutura da mensagem a ser enviada devem ser concatenados, formando a cadeia de caracteres base (ISO-8859-1) onde será aplicado o algoritmo MD5, que deverá retornar o valor hexadecimal de 32 caracteres, que é o hash válido.
O algoritmo utilizado deve estar preparado para este set de caracteres (ISO-8859-1), a menos que não sejam utilizados caracteres acentuados na estrutura.
Os tipos definidos nos arquivos xsd como string ou data deverão ter seus valores em branco e/ou caracteres de controle suprimidos à esquerda e à direita (Trim).
Os tipos definidos nos arquivos xsd como long (ex: elemento qtdeAcoesQuotas de ct_empresaContrColig), terão valor inicial 0 (zero) caso não informados, e devem ser sempre inteiros (formato 9999).
Os tipos definidos nos arquivos xsd como double ou float (ex: elemento quantidade de ct_ativoInvest), terão valor inicial 0.0 (zero) caso não informados, e devem exibir, na parte decimal, somente dígitos significativos a partir da segunda posição, tendo obrigatoriamente ao menos um dígito.
Serviços de recepção (webservices) do DIOPS
Os Web Services para recebimento das transações do DIOPS estão disponíveis com as transações DiopsCadastral e DiopsFinanceiro através dos endereços:
A aplicação que utilizar um destes serviços para transmitir suas informações receberá, como retorno, uma estrutura de dados (objeto) que corresponde a um recibo. Este recibo contém um número de protocolo, a data e hora do registro da transação, o status do recebimento e uma lista de inconsistências (caso uma ou mais inconsistências tenham sido identificadas).