Provider Integration Point

When providers' details of providers are primarily maintained outside Oracle Health Insurance, Oracle Health Insurance needs an up-to-date copy of these details. The Provider Integration Point enables external parties to create and maintain these copies.

Operations

Individual Providers

PUT

individualproviders creates an individual provider.

GET

individualproviders/{id}` retrieves the individual provider.

Organizational Providers

PUT

organizationalproviders creates an individual provider.

GET

organziationalproviders/{id} retrieves the organizational provider.

Rules

Uniqueness

A provider’s code in combination with a flex code definition is unique to the application’s providers. The flex code definition can refer to, for example, an external party that delivers the provider codes.

A provider’s identifier of a unique identifier type is unique to the application’s providers.

Create or Update Behavior

External interfaces determine when request messages are sent and what they contain. Each request message contains one of the following:

  • Individual provider details

  • Organization provider details

Provider codes are unique within a given provider flex code definition. The provider code in combination with its flex code definition drives whether the API creates a new provider or updates an existing one

  • If the provider code is not included in the message, the system generates a code using that provider’s signature, Provider Code Generation. If no dynamic logic function with the signature Provider Code Generation exists, the ID will be assigned to provide code. The provider flex code definition must be included in each message.

Request Messages

Each request message may contain the details of one provider (individual or organization). The external interfaces will create request messages for the initial data load and in response to entry and update of providers.

Individual Provider

Individual provider request messages have the following structure:

Example of an Individual Provider Request Message (click to open)
  <providerIdentifierList>
    <providerIdentifier
      identifierTypeCode=""
      identifier=""
      enabled=""     />
  </providerIdentifierList>
  <providerTitleList>
    <providerTitle
      titleCode=""
    />
  </providerTitleList>
  <renderingAddressList>
    <renderingAddress
      startDate=""
      endDate=""
    >
      <serviceAddress
        street=""
        houseNumber=""
        numberAddition=""
        additionalPart1=""
        additionalPart2=""
        additionalPart3=""
        city=""
        postalCode=""
        countryRegionCode=""
        countryCode=""
      />
    </renderingAddress>
  </renderingAddressList>
  <providerSpecialtyList>
    <providerSpecialty
      specialtyCode=""
      startDate=""
      endDate=""
    />
  </providerSpecialtyList>
  <providerGroupAffiliationList>
    <providerGroupAffiliation
      providerGroupCode=""
      startDate=""
      endDate=""
    />
  </providerGroupAffiliationList>
  <bankAccount
    relationCode=""
    bankCode=""
    bankAccountNumber=""
  />

Provider Group Affiliations

Provider group affiliations are handled as time valid details of the individual provider. This means that all provider group affiliations of that individual provider (in all provider groups) are replaced by the new list of provider group affiliations (if specified).

Addresses

Rendering addresses are handled as time valid details. Upon insert a new service address (with the same start and end date as the rendering address) and a new rendering address with a reference to the new service address are created. Suppose an update to an individual provider results in the deletion of a rendering address.In that case, the related service address is deleted if it has no reference to an organization provider and if any other rendering address does not reference it.

Organization Provider

Organization provider request messages have the following structure:

Example of an Organization Provider Request Message (click to open)
<organizationProvider
  code=""
  flexCodeDefinitionCode=""
  name=""
  phoneNumberBusiness=""
  phoneNumberMobile=""
  phoneNumberPrivate=""
  emailAddress1=""
  emailAddress2=""
  faxNumber=""
  outputLanguageCode=""
  preferredLanguageCode=""
  startDate=""
  endDate=""
>
  <providerIdentifierList>
    <providerIdentifier
      identifierTypeCode=""
      identifier=""
      enabled=""     />
  </providerIdentifierList>
    <parentOrganizationProvider
    code=""
    flexCodeDefinitionCode=""
  />
  <serviceAddressList>
    <serviceAddress
      street=""
      houseNumber=""
      numberAddition=""
      additionalPart1=""
      additionalPart2=""
      additionalPart3=""
      city=""
      postalCode=""
      countryRegionCode=""
      countryCode=""
      startDate=""
      endDate=""
    >
      <renderingAddressList>
        <renderingAddress
          startDate=""
          endDate=""
        >

        </renderingAddress>
      </renderingAddressList>
    </serviceAddress>
  </serviceAddressList>
  <providerSpecialtyList>
    <providerSpecialty
      specialtyCode=""
      startDate=""
      endDate=""
    />
  </providerSpecialtyList>
  <providerGroupAffiliationList>
    <providerGroupAffiliation
      providerGroupCode=""
      startDate=""
      endDate=""
    />
  </providerGroupAffiliationList>
  <bankAccount
    relationCode=""
    bankCode=""
    bankAccountNumber=""
  />
</organizationProvider>

The address and provider group affiliation specifications are the same as for the individual provider.

Response Messages

The Oracle Health Insurance application creates the response messages in response to request messages it receives from external interfaces. See the Response Messages section in the HTTP API/IP Concepts as part of the Developer Guide for more details.

See Response Messages for more details.

Batches

This API supports sending in multiple providers in one go.

This API

The request message for sending in multiple individual providers has the following structure:

<individualProviders>
  <individualProvider/> -- refer to Individual Provider Request above for details
</indiviudalProviders>

and for organization providers:

<organizationProviders>
  <organizationProvider/> -- refer to Organization Provider Request above for details
</organizationProviders>

Data File Sets

Oracle Health Insurance also supports handling of multiple providers from a data file. See How to Migrate Data Using a Data File Set for more details.

The elementId attribute that is included as part of the result messages element (see Activities for more details) contains the code and the flex code definition code (separated by a space; for example, elementId="1234567890 US_PROVIDER") of the provider for which the messages are raised.

Authorization

A user authorization configuration protects access to this feature. The relevant access restriction is Provider In IP.

Error Messages

The following error messages that are specific to the provider interface may be returned in the response messages:

Table 1. Error Messages
Code Severity Response Message

REL-IP-PROV-003

Fatal

Org

Parent organization provider identified by code {code} and flex code definition code {code} is unknown.

REL-IP-PROV-004

Fatal

Ind and Org

Bank account number {bank account number} is unknown.

REL-IP-PROV-005

Fatal

Ind and Org

Provider bank account number matching returned more than one bank for bank account number {bank account number}.

REL-IP-PROV-014

Fatal

Ind and Org

Flex code definition code {code} is unknown.

REL-IP-PROV-015

Fatal

Ind and Org

Provider group code{code} is unknown.

REL-IP-PROV-016

Fatal

Ind and Org

Specialty code {code} is unknown.

REL-IP-PROV-027

Fatal

Ind

Title code {code} is unknown.

REL-IP-PROV-028

Fatal

Ind

Prefix code {code} is unknown.

REL-IP-PROV-030

Fatal

Ind and Org

Language code {code} is unknown.

REL-IP-PROV-031

Fatal

Ind and Org

Country code {code} is unknown.

REL-IP-PROV-032

Fatal

Ind and Org

Country region code {code} is unknown.

REL-IP-PROV-033

Fatal

Org

Individual provider identified by code {code} and flex code definition code {code} for rendering address is unknown.

REL-IP-PROV-035

Fatal

Ind and Org

Identifier type code {code} is unknown.

In addition, functional business rule messages may be returned, as well as the standard messages related to dynamic fields and dynamic records. See Response Messages for more details.