Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

TabelaAtributo
BEA(raiz do json)
BE2procedures

Pré-Análise de Execução de uma Liberação

Outra funcionalidade no verbo GET é a pré-análise de execução de uma Liberação através do queryparam action com o conteúdo validRelease. Para utilizar esta funcionalidade é necessário informar também os queryparams healthProviderCode com o código da Rede de Atendimento e locationCode com o código do Local de Atendimento. A API retorna os dados da guia e a indicação se a liberação pode ser executada no atributo actionReturn e uma mensagem impeditiva (caso necessário) no atributo actionMessage.

VERBO POST

Validação de Reenvio de Guias

Através do verbo POST, a API tem a opção de validar se uma guia está apta a ser realizada o reenvio da mesma pelo sistema Portal Autorizador HAT. Para realizar essa validação, é necessário informar o QueryParam resendBatch. Utilizando essa opção, a API tem três possíveis respostas:

  • Foi encontrada a guia informada, a API retorna dos dados da guia para o Portal Autorizador realizar a contingência.
  • A guia informada não foi encontrada, porém já existe uma guia na data de hoje para o Prestador, Rede de Atendimento e Beneficiário, com isso, o reenvio não será permitido.
  • A guia informada não foi encontrada e não existe uma guia na data de hoje para o Prestador, Rede de Atendimento e Beneficiário, com isso, o reenvio será permitido (será gerado uma nova solicitação TISS Online).

Validação de Liberação

Outra funcionalidade da API POST é realizar a validação da execução de uma Liberação. Para realizar esta validação é necessário informar o queryparam action com o conteúdo execute. A validação realizada é a mesma do Portal do Prestador do Produto Planos de Saúde SIGAPLS.

02. CONFIGURAÇÕES INI

Para iniciar a instalação do processo, devemos configurar seu INI Protheus com a funcionalidade REST para habilitar o acesso as API´s. Documentos auxiliares:

1. Configuração do REST do Protheus

Com o INI Protheus configurado, a nomenclatura das API´s ficará no formato: <url + Porta + chave rest definidos no INI Protheus> +  /totvsHealthPlans/v1/authorizations/<guia>. Exemplo:

image2020-12-17_15-28-30.pngImage Removed

Logo, a minha URL será: http://localhost:8080/rest/totvsHealthPlans/v1/authorizations/<guia>

03. VERBOS

Seguem os verbos disponíveis na API:

...

04. EXEMPLO DE CHAMADA DA API

Chamada GET - Retorna dados de uma Guia

Exemplo de chamada para a guia 0001.2024.04.00000196:

http://localhost:8080/rest/totvsHealthPlans/v1/executions/000120240400000196

Image Removed

Chamada GET - Realiza uma pré-análise de execução de uma Liberação

Exemplo de chamada da pré-análise:

http://10.171.80.125:3269/rest/totvshealthplans/v1/authorizations/000120230800000064?action=validRelease&healthProviderCode=000004&locationCode=001

Image Removed

...

Chamada POST - Valida se pode realizar o reenvio da guia no HAT

Exemplo de chamada para validação:

http://localhost:8080/rest/totvshealthplans/v1/authorizations?resendBatch=true

Image Removed

JSON de Solicitação:

Bloco de código
titleJSON Solicitação POST
{
    "tissBatch": "900000008834", 
    "subscriberId": "00010003000003017",
    "healthProviderCode": "000004", 
    "authorizationType": "2"  
}

...

Chamada POST - Valida a execução de uma liberação

Exemplo de chamada para validação da guia 000120230800000064:

http://10.171.80.125:3269/rest/totvshealthplans/v1/authorizations?action=execute

Image Removed

JSON de Solicitação:

Bloco de código
titleJSON Solicitação POST
{
    "idOnHealthInsurer": "000120230800000064",
    "healthProviderCode": "000004",
    "locationCode": "001"
}

...

05. ATRIBUTOS DE RESPOSTA

CHAMADA GET

Cabeçalho

...

subscriberId

...

Atributo procedures

...

Atributo rejectionCauses

...

CHAMADA POST

...

Campo fixo que indica a ação encontrada: 0001 e 0002.

...

Mensagem indicativa referente ao código acima:

0001 - Guia informada encontrada, apta para realizar a contingencia

0002 - Não foi encontrada guia, e possível realizar o reenvio

...

Número da guia (baseado no alias da guia informada)

BEA_OPEMOV+BEA_ANOAUT+BEA_MESAUT+BEA_NUMAUT

B4Q_OPEMOV+B4Q_ANOAUT+B4Q_MESAUT+B4Q_NUMAUT

...


Image Added



02. CONFIGURAÇÕES INI

Para iniciar a instalação do processo, devemos configurar seu INI Protheus com a funcionalidade REST para habilitar o acesso as API´s. Documentos auxiliares:

1. Configuração do REST do Protheus

Com o INI Protheus configurado, a nomenclatura das API´s ficará no formato: <url + Porta + chave rest definidos no INI Protheus> +  /totvsHealthPlans/v1/executions/<guia>. Exemplo:

image2020-12-17_15-28-30.pngImage Added

Logo, a minha URL será: http://localhost:8080/rest/totvsHealthPlans/v1/executions/<guia>

03. VERBOS

Seguem os verbos disponíveis na API:

VerboPathPath ParamQuery ParamDescrição
GETexecutionsidHealthIns (número da guia)
Numero da liberação

04. EXEMPLO DE CHAMADA DA API

Chamada GET - Retorna dados de uma Guia

Exemplo de chamada para a guia 0001.2024.04.00000196:

http://localhost:8080/rest/totvsHealthPlans/v1/executions/000120240400000196

Image Added



05. ATRIBUTOS DE RESPOSTA


CHAMADA GET

Cabeçalho

AtributoCampoTipo

subscriberId

BEA_OPEUSR+BEA_CODEMP+BEA_MATRIC+BEA_TIPREG+BEA_DIGITOCaracter
primaryICDBEA_CIDCaracter
attendanceLocationBEA_LOCALCaracter
passwordBEA_SENHACaracter
accidentIndicationBEA_INDACICaracter
attendanceModelBEA_TIPADMCaracter
attendanceProtocolBEA_PROATECaracter
attendanceTypeBEA_TIPATECaracter
authorizationDateBEA_DATPROData
authorizationStatusBEA_STATUSCaracter
authorizationTypeBEA_TIPGUICaracter
billingTypeBEA_TIPFATCaracter
clinicalConditionBEA_INDCLICaracter
closingReasonBEA_TIPSAICaracter
consultationTypeBEA_TIPCONCaracter
endTreatmentDateBEA_DPTETAData
healthProviderIdBEA_CODRDACaracter
idAuthOnHealthProviderBEA_GUIPRECaracter
locationCodeBEA_CODLOCCaracter
mainAuthorizationCodeBEA_GUIPRICaracter
newbornAttendanceBEA_ATERNACaracter
passwordExpireDateBEA_VALSENData
priorAuthorizationBEA_LIBERACaracter
priorAuthorizationStatusBEA_STALIBCaracter
professionalRequestorIdBEA_CDPFSOCaracter
professionalExecutorIdBEA_CDPFRECaracter
requestDateBEA_DATSOLData
attendanceTokenBEA_TOKEDICaracter
missingValidationCodeBEA_AUSVLDCaracter
specialtyCodeBEA_CODESPCaracter
professionalRequestorCouncilBEA_SIGLA Caracter
professionalRequestorStateBEA_ESTSOLCaracter
professionalRequestorCouncilNumberBEA_REGSOLCaracter
professionalRequestorSpecialtyCodeBEA_ESPSOLCaracter
professionalExecutorCouncilBEA_SIGEXECaracter
professionalExecutorStateBEA_ESTEXECaracter
professionalExecutorCouncilNumberBEA_REGEXECaracter
dischargedTypeBE4_TIPALTCaracter
dischargedDateBE4_DTALTAData
dischargedHourBE4_HRALTACaracter
expectedHospitalizationDateBE4_PRVINTData
hospTypeBE4_TIPINTCaracter


Atributo procedures

AtributoCampoTipo
authLevelBE2_NIVAUTCaracter
sequenceBE2_SEQUENCaracter
statusBE2_STATUSCaracter
requestedQuantityBE2_QTDSOLNumérico
authorizedQuantityBE2_QTDPRONumérico
balance BE2_SALDONumérico
unitaryWorthBD6_VLRPAG + BD6_VLRGLONumérico
executionDateBE2_DATPROData
startingTime BE2_HORPROCaracter
endingTimeBE2_HORFIMCaracter
accessWayBE2_VIACaracter
usedTechniqueBE2_TECUTICaracter
authLevelKeyBE2_CHVNIVCaracter
auditingBE2_AUDITOCaracter
priorAuthorizationBE2_LIBERACaracter
priorAuthorizationStatusBE2_STALIBCaracter
tableCodeBE2_CODPADCaracter
procedureCodeBE2_CODPROCaracter


Atributo rejectionCauses

AtributoCampoTipo
procedureSequenceBEG_SEQUEN/BEL_SEQUENCaracter
codeBEG_CODGLO/BEL_CODGLOCaracter
rejectionSequenceBEG_SEQCRI/BEL_SEQCRICaracter
descriptionBEG_DESGLO/BEL_DESGLOCaracter


06. EXEMPLOS DE JSON DE RESPOSTA


Solicitação GET:

Bloco de código
titleSucesso 202 - Guia encontrada
collapsetrue
{
    "items": [
        {
            "ansRegistry": "888888",

06. EXEMPLOS DE JSON DE RESPOSTA

Solicitação GET:

Bloco de código
titleSucesso 202 - Guia encontrada
collapsetrue
{
    "endTreatmentDate": null,
    "locationCode": "001",
    "professionalRequestorSpecialtyCode": "063",
    "professionalRequestorCouncil": "CRM",
    "professionalExecutorCouncil": "",
    "procedures": [
        {
            "status": "0",
            "sequence": "001",
            "endingTime": "1800",
            "auditing": "1",
            "requestedQuantity": 1,
            "startingTime": "1800",
            "tableCode": "22",
            "authorizedQuantity": 1,
            "accessWay": "",
            "priorAuthorization": "0",
            "priorAuthorizationStatus": "",
            "rejectionCauses": [
                {
                    "code": "",
                    "procedureSequence": "001",
                    "rejectionSequence": "002",
                    "description": "NÍVEL: BRV - PLANOS E GRUPOS DE COBERTURA ( 02 - ATUALIZACOES / PRODUTO SAUDE / PRODUTO SAUDE --> FOLDER COBERTURA/CAREN"
                },
          "idOnHealthInsurer": "000120240400000197",
      {
        "idOnHealthProvider": "000120240400000197",
            "codejourney": "0252",
            "subscriberId": "00010101000007012",
            "procedureSequenceprimaryICD": "001",
                    "rejectionSequence"attendanceLocation": "001008",
            "password": "96753982225399803499",
        "description": "PARA ESTE PROCEDIMENTO NECESSITA AUDITORIA.""accidentIndication": "9",
            "attendanceModel": "1",
   }
            ]"attendanceProtocol": "88888820240402300053",
            "executionDateattendanceType": "2022-09-1502",
            "procedureCodeauthorizationDate": "101010122024-04-02",
            "unitaryWorthauthorizationStatus": 0"1",
            "authLevelKeyauthorizationType": "000100010010222",
            "balanceguideType": 0"02",
            "usedTechniquebillingType": "",
            "authLevelclinicalCondition": "",
        }
    ],
    "healthProviderId"closingReason": "000004",
            "consultationType": "1",
    "requestDate": null,
    "dischargedDate": null,
    "hospTypeendTreatmentDate": "",
       "priorAuthorizationStatus": "",
    "newbornAttendancehealthProviderId": "0000004",
       "professionalExecutorState": "",
    "attendanceLocationidAuthOnHealthProvider": "008",
    "specialtyCode": "002",
        "authorizationTypelocationCode": "01001",
       "passwordExpireDate": "2022-10-15",
    "professionalRequestorIdmainAuthorizationCode": "A01834000120240400000196",
       "missingValidationCode": "01",
    "attendanceModelnewbornAttendance": "1"false,
      "attendanceToken": "",
      "professionalRequestorCouncilNumberpasswordExpireDate": "6543212298-01-15",
       "professionalExecutorCouncilNumber": "",
    "subscriberIdpriorAuthorization": "00010101000007012"false,
       "billingType": "",
    "dischargedTypepriorAuthorizationStatus": "",
       "professionalExecutorId": "",
    "accidentIndicationprofessionalRequestorId": "9000026",
       "priorAuthorization": "0",
    "idAuthOnHealthProviderprofessionalExecutorId": "",
    "password        "requestDate": "2024-04-02",
            "attendanceTypeattendanceToken": "05",
     "attendanceProtocol       "missingValidationCode": "88888820220915300033",
       "dischargedHour": null,
    "authorizationStatusspecialtyCode": "6015",
      "primaryICD": "",
      "professionalRequestorStatespecialCoverage": "SP",
    "authorizationDate": "2022-09-15",
        "mainAuthorizationCodeattendanceScheme": "02",
       "expectedHospitalizationDate": null,
    "closingReasonoccupationalHealth": "",
            "clinicalConditionattendanceNote": ""
}
Bloco de código
titleFalha 400 - Guia não encontrada
collapsetrue
{ ",
    "code        "professionalRequestorCouncil": 400"CRFA",
    "message": "Guia informada nao encontrada",
    "detailedMessageprofessionalRequestorState": "Entre em contato com o Suporte",
SP",
            "helpUrlprofessionalRequestorCouncilNumber": "132456",
    "details": [
        {"professionalRequestorSpecialtyCode": "005",
            "codeprofessionalExecutorCouncil": "",
            "messageprofessionalExecutorState": "",
            "detailedMessageprofessionalExecutorCouncilNumber": "",
            "helpUrldischargedType": "",
        }
    ]
}

Solicitação POST:

Bloco de código
titleSucesso 200 - Guia encontrada
collapsetrue
{
    "code"dischargedDate": "0001",
            "messagedischargedHour": ""Guia,
  informada encontrada, apta para realizar a contingencia",
    "idOnHealthInsurerexpectedHospitalizationDate": "000120230500000019",
    "authorization": {
        "subscriberIdexpectedAdmissionDate": "00010003000003017",
            "primaryICDhospitalizationDate": "",
            "attendanceLocationhospitalizationHour": "008",
            "passwordhospType": "1084179216633992",
            "accidentIndicationhasClinicalAttachment": ""false,
            "attendanceModelhasTreatmentExtension": "2"false,
            "attendanceProtocolhasInitialSituation": "88888820220816300034"false,
        "attendanceType": "05",
    ,
            "authorizationDateprofessional": "2023-05-15",{
        "authorizationStatus": "1",
        "authorizationTypeidOnHealthInsurer": "02000026",
        "billingType": "",
        "clinicalConditionphoneNumber": "9999999",
        "closingReason": "",
        "consultationTypeprofessionalCouncil": "1CRFA",
        "endTreatmentDate": null,
        "healthProviderIdprofessionalIdentifier": "000004",
                "idAuthOnHealthProviderprofessionalCouncilNumber": "132456",
        "locationCode": "001",
        "mainAuthorizationCodename": "100000000ROBERTO",
        "newbornAttendance": "0",
        "passwordExpireDateemail": "2297-02-26",
        "priorAuthorization": "0",
        "priorAuthorizationStatusstateAbbreviation": "SP",
        "professionalRequestorId": "000142",
        "professionalExecutorIdcbos": "",{
        "requestDate": null,
            "attendanceTokencode": "221105",
          "missingValidationCode": "",
          "specialtyCodespecialtyDescription": "055Biologo",
           "professionalRequestorCouncil": "CRM",
        "professionalRequestorStatespecialtyCode": "RS005",
         "professionalRequestorCouncilNumber": "334455",
           "professionalRequestorSpecialtyCodedescription": "223Biologo",
         "professionalExecutorCouncil": "",
      }
  "professionalExecutorState": "",
        "professionalExecutorCouncilNumber": "" },
            "dischargedTypeprocedures": "",[
        "dischargedDate": null,
       {
 "dischargedHour": "",
          "expectedHospitalizationDate": null,
        "hospTypeauthLevel": "BR8",
        "procedures": [
            {
"sequence": "001",
                    "authLevelstatus": "BRV"1,
                    "sequencerequestedQuantity": "001"1,
                    "statusauthorizedQuantity": "1",
                    "requestedQuantityauthorized": 1"S",
                    "authorizedQuantitybalance": 10,
                    "balanceunitaryWorth": 030,
                    "unitaryWorthexecutionDate": 76.4"2024-04-02",
                    "executionDatestartingTime": "2023-05-151740",
                    "startingTimeendingTime": "10081740",
                    "endingTimeaccessWay": "1008",
1",
                    "accessWayusedTechnique": "",
                    "usedTechniqueauthLevelKey": "0110101013",
                    "authLevelKeyauditing": "000100010010070",
                    "auditingtoothRegion": "0",
                    "teethRegionsurfaces": "",
                    "surfacepriorAuthorization": "0",
                    "priorAuthorizationpriorAuthorizationStatus": "02",
                    "priorAuthorizationStatusobsAudito": "",
                    "tableCodemedicalTeam": "22",[
                 "procedureCode": "10101012",
       []
           "rejectionCauses": []
        ],
    }
        ]
    }
}
Bloco de código
titleSucesso 200 - Reenvio permitido
collapsetrue
{
    "codetableCode": "000200",
       "message": "Nao foi encontrada guia, e possivel realizar o reenvio"
}
Bloco de código
titleFalha 400 - Reenvio não permitido
collapsetrue
{
    "codeprocedureCode": 400"10101013",
    "message": "Nao e possivel realizar o reenvio",
    "detailedMessage": "Ja foi encontrada uma guia no seu sistema de gestao para o beneficiario e prestador na data de hoje. Guia(s) encontrada(s): 000120230500000019, 000120230500000021",
"procedureDescription": "GLICOSE",
                    "helpUrlprocedureType": "5",
    "details": [
                 {
"rejectionCauses": []
             "code": "",
  }
          "message": "",
 ]        
   "detailedMessage": "",
    }
    ],
    "helpUrlhasNext": ""false
}
Bloco de código
titleFalha 400 - Guia não encontrada
collapsetrue
{
        }
"items": [],
    "hasNext": ]false
}