---
title: ClaimServices
summary: API reference for ClaimServices.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business
reference_type: package
---

# ClaimServices

Provides basic Claim Services. Provides claim-centric lookup, security, authorization, and payment helper methods used across SAIF business workflows.

## Purpose
- Provides claim-centric lookup, security, authorization, and payment helper methods used across SAIF business workflows.

## Context
- Namespace: `SAIF.Business`
- Assembly/package: `SAIF.Business`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `BusinessProcess` | `Public Enum BusinessProcess` | Identifies the Business Processes supported for authorizations |
| `PaymentAuthorizationPurpose` | `Public Enum PaymentAuthorizationPurpose` | Identifies the Authorization Purpose for Payments |
| `ReserveAuthorizationPurpose` | `Public Enum ReserveAuthorizationPurpose` | Identifies the Authorization Purpose for Reserves |
| `ReserveBusinessFunction` | `Public Enum ReserveBusinessFunction` | Identifies the Authorization Purpose for Reserves |
| `PaymentBusinessFunction` | `Public Enum PaymentBusinessFunction` | Identifies the Authorization Purpose for Reserves |
| `ProviderAddressTypes` | `Public Enum ProviderAddressTypes` | Enumerates provider address categories used to request correspondence, physical, or payment addresses. |
| `WorkerAddressTypes` | `Public Enum WorkerAddressTypes` | Enumerates worker address categories used to request mailing, home, or primary addresses. |
| `RunID` | `Public Property RunID As String` | Stores a run identifier for the ClaimServices instance. |
| `getMaxBurialAmt` | `Public Shared Function getMaxBurialAmt(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inDate As Date) As Decimal` | Calculates the max burial payment amount allowed based on passed in date. For reserves the passed in date would be injury date. For payments the passed in date would be the current effective date based on date of death. |
| `GetBeneficiaryAddresses` | `Public Shared Function GetBeneficiaryAddresses(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNumber As String, ByVal inPersonId As Decimal) As List(Of clsClaimAddress)` | Retrieves beneficiary addresses for the specified claim number and person ID through the claim data API. |
| `GetClaimContacts` | `Public Shared Function GetClaimContacts(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNumber As String) As ClaimContacts` | Retrieves the claim contacts payload for the specified claim number from the claim data API. |
| `getPersonAddress` | `Public Shared Function getPersonAddress(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inPersonId As Decimal, ByVal inAddressType As String) As clsClaimAddress` | Retrieves a person address for the specified person ID and address type from the worker data API. |
| `GetWorkerAddress` | `Public Shared Function GetWorkerAddress(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inWorkerId As Decimal, ByVal inAddressType As WorkerAddressTypes) As clsClaimAddress` | Retrieves a worker address by worker ID after translating the requested worker address type to its API code. |
| `GetResponsibleAdjuster` | `Public Shared Function GetResponsibleAdjuster(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNumber As String) As String` | Retrieves the responsible or pseudo adjuster user ID for the specified SAIF claim number. |
| `GetResponsibleAdjuster` | `Public Shared Function GetResponsibleAdjuster(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal) As String` | Retrieves the responsible or pseudo adjuster user ID for the specified claim ID. |
| `CalcCheckDigit` | `Public Shared Function CalcCheckDigit(ByVal inNumber As String, ByVal inCharacterSet As ChecksumCharacterSet) As String` | This Function Returns a Calculated Check Digit.  It Requires a CharacterSet of Type "A" or "D" along with string that must have at least one numeric character.  If no numeric characters are found or an error occurs in the routine, a "-" is returned. |
| `IsValidClaim` | `Public Shared Function IsValidClaim(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal, ByVal inClaimNumber As String) As Boolean` | Checks whether a claim exists for the supplied claim ID or SAIF claim number. |
| `IsValidResponsibilityCode` | `Public Shared Function IsValidResponsibilityCode(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inResponsibilityCode As String) As Boolean` | Checks whether the supplied claim responsibility code exists in CL_CLAIM_RESPONSIBILITY. |
| `hasCollectionActivity` | `Public Shared Function hasCollectionActivity(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNum As String) As Boolean` | Used to determine if a claim has ever had a legal collection case. |
| `InvestigationRequestdate` | `Public Shared Function InvestigationRequestdate(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimId As Decimal) As Date` | Used to get the first date an investigation was requested. |
| `HasCollateralAccess` | `Public Overloads Shared Function HasCollateralAccess(ByVal isHealthIssue As Boolean) As Boolean` | Returns True if the current user has access to a Collateral Health Claim. |
| `HasExistingBenefitPayment` | `Public Shared Function HasExistingBenefitPayment(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal, ByVal inBenefitType As String, Optional ByVal inFullPartialCode As String = clsConstants.Blank, Optional ByVal inIssueDate As String = clsConstants.Blank, Optional ByVal inTotalAmt As Decimal = 0) As Boolean` | Used to determine if a claim has an existing payment of a particular benefit type in payment history. |
| `SQL1` | `Const SQL1 As String = " select count(*) " &` | Exposes shared constant values. |
| `SQL2` | `Const SQL2 As String = " AND exists (select 1 from cl_financial_trans_dtl dtl " &` | Exposes shared constant values. |
| `SQL3` | `Const SQL3 As String = " AND dtl.payment_category_code = :PaymentCategory) "` | Exposes shared constant values. |
| `WhereForDCSFull` | `Const WhereForDCSFull As String = " AND settlement_full_part_code = 'F'"` | Exposes shared constant values. |
| `WhereForDCSPartial` | `Const WhereForDCSPartial As String = " AND settlement_full_part_code = 'P' " &` | Exposes shared constant values. |
| `WhereForLegalOrder` | `Const WhereForLegalOrder As String = " AND addition_to_computation_code = 'Y' "` | Exposes shared constant values. |
| `hasReleasedScheduledPayment` | `Public Shared Function hasReleasedScheduledPayment(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal, ByVal inBenePaySeqNum As Decimal) As Boolean` | Used to determine if a claim and benefit payment sequence number has a released payment. |
| `hasReleasedFederalScheduledPayment` | `Public Shared Function hasReleasedFederalScheduledPayment(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal, ByVal inBenePaySeqNum As Decimal) As Boolean` | Used to determine if a claim and benefit payment sequence number has a released payment. |
| `HasReleasedFederalAwardPayment` | `Public Shared Function HasReleasedFederalAwardPayment(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal) As Boolean` | Used to determine if a claim has a released federal award payment to the worker. |
| `HasReleasedPaymentToWorker` | `Public Shared Function HasReleasedPaymentToWorker(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal) As Boolean` | Used to determine if a claim has a released payment to the worker. |
| `HasCollateralAccess` | `Public Overloads Shared Function HasCollateralAccess(ByVal isHealthIssue As Boolean, ByVal inMailid As String) As Boolean` | Returns True if System User has access to a Collateral Health Claim |
| `HasCollateralAccessCached` | `Public Overloads Shared Function HasCollateralAccessCached(ByVal isHealthIssue As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the system user has access to a Collateral Health Claim - Cached Data Store |
| `HasConflictAccess` | `Public Overloads Shared Function HasConflictAccess(ByVal isConflict As Boolean) As Boolean` | Returns True if the current user has access to a Conflict Claim. |
| `HasConflictAccess` | `Public Overloads Shared Function HasConflictAccess(ByVal isConflict As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Conflict Claim. |
| `HasConflictAccessCached` | `Public Overloads Shared Function HasConflictAccessCached(ByVal isConflict As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Conflict Claim - From Cached Datasource. |
| `HasExposureAccess` | `Public Overloads Shared Function HasExposureAccess(ByVal isExposure As Boolean) As Boolean` | Returns True if the current user has access to an Exposure Claim. |
| `HasExposureAccess` | `Public Overloads Shared Function HasExposureAccess(ByVal isExposure As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the system user has access to an Exposure Claim. |
| `HasExposureAccessCached` | `Public Overloads Shared Function HasExposureAccessCached(ByVal isExposure As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the system user has access to an Exposure Claim. - From a cached Datasource. |
| `HasImageAccess` | `Public Overloads Shared Function HasImageAccess(ByVal isImageSecure As Boolean) As Boolean` | Returns True if the current user has access Image access. |
| `HasImageAccess` | `Public Overloads Shared Function HasImageAccess(ByVal isImageSecure As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to Image. |
| `HasImageAccessCached` | `Public Overloads Shared Function HasImageAccessCached(ByVal isImageSecure As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to Image. - From a Cached Datasource. |
| `HasSecureAccess` | `Public Overloads Shared Function HasSecureAccess(ByVal isHostileWorker As Boolean) As Boolean` | Returns True if the Current User has access to a Secure Claim. |
| `HasSecureAccess` | `Public Overloads Shared Function HasSecureAccess(ByVal isHostileWorker As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Secure Claim. |
| `HasSecureAccessCached` | `Public Overloads Shared Function HasSecureAccessCached(ByVal isHostileWorker As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Secure Claim. - From a Cached Datasource. |
| `HasUnpostedPaymentsOrAdjustments` | `Public Shared Function HasUnpostedPaymentsOrAdjustments(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimId As Decimal) As Boolean` | Returns True if there are pending payments or adjustments (payment tran stat code != 5) |
| `HasAccessToClaim` | `Public Overloads Shared Function HasAccessToClaim(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNum As String, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Claim. |
| `HasAccessToClaim` | `Public Overloads Shared Function HasAccessToClaim(ByVal IsWorkerConflict As Boolean, ByVal IsExposure As Boolean, ByVal IsHealthIssue As Boolean, ByVal IsHostileWorker As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Claim. |
| `HasAccessToClaimCached` | `Public Overloads Shared Function HasAccessToClaimCached(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNum As String, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Claim. - From a cached Datasource. |
| `HasAccessToClaimCached` | `Public Overloads Shared Function HasAccessToClaimCached(ByVal IsWorkerConflict As Boolean, ByVal IsExposure As Boolean, ByVal IsHealthIssue As Boolean, ByVal IsHostileWorker As Boolean, ByVal inMailid As String) As Boolean` | Returns True if the System User has access to a Claim. - From a cached Datasource. |
| `HasOverrideAcess` | `Public Shared Function HasOverrideAcess(ByVal inDataPortalInfo As IDataPortalInfo, inClaimID As Decimal, ByVal inMailid As String) As Boolean` | Returns whether the specified mail ID currently has an active security override for the claim. |
| `LegalCaseExists` | `Public Function LegalCaseExists(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal) As Boolean` | Returns whether the claim has any LEGAL_CASE records. |
| `IncurredCostsExist` | `Public Function IncurredCostsExist(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal) As Boolean` | Returns whether the claim has a positive incurred cost total on its latest incurred cost history. |
| `HasNonPostedPaymentforClaim` | `Public Shared Function HasNonPostedPaymentforClaim(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal) As Boolean` | Returns whether the claim has any payment transactions that are not yet posted. |
| `SupportOrderExists` | `Public Function SupportOrderExists(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal) As Boolean` | Returns whether the claim is linked to any support order connection records. |
| `UpdatePharmacyEligibilityToIneligible` | `Public Shared Function UpdatePharmacyEligibilityToIneligible(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal, ByVal inUpdateUser As String) As Decimal` | Updates Pharmacy Eligibility to ineligible for a claim. Returns Number of records updated. |
| `HasReserveAuthorization` | `Public Shared Function HasReserveAuthorization(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inUserId As String, ByVal inAuthPurpose As ReserveAuthorizationPurpose, ByVal inFunction As ReserveBusinessFunction, ByVal inAmount As Decimal) As Boolean` | Returns True if user authorized to initiate or approve payment |
| `HasPaymentAuthorization` | `Public Shared Function HasPaymentAuthorization(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inUserId As String, ByVal inAuthPurpose As PaymentAuthorizationPurpose, ByVal inFunction As PaymentBusinessFunction, ByVal inAmount As Decimal) As Boolean` | Returns True if user authorized to initiate or approve payment |
| `HasActiveWorkerEFTAuth` | `Public Shared Function HasActiveWorkerEFTAuth(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal, ByVal inDate As Date) As Boolean` | Determine if the worker has active eft authorization for the claim id |
| `HasActiveWorkerEFTAuth` | `Public Shared Function HasActiveWorkerEFTAuth(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNum As String, ByVal inDate As Date) As Boolean` | Determine if the worker has active eft authorization for the claim num |
| `HasActiveClmPersonEFTAuth` | `Public Shared Function HasActiveClmPersonEFTAuth(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimNum As String, ByVal inPersonID As Decimal, ByVal inDate As Date) As Boolean` | Determine if the person has active eft authorization for the claim num |
| `HasActiveClmPersonEFTAuth` | `Public Shared Function HasActiveClmPersonEFTAuth(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inClaimID As Decimal, ByVal inPersonID As Decimal, ByVal inDate As Date) As Boolean` | Determine if the person has active eft authorization for the claim id |
| `HasActiveBeneEFTAuth` | `Public Shared Function HasActiveBeneEFTAuth(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inBeneficiaryID As Decimal, ByVal inDate As Date) As Boolean` | Determine if a beneficiary has any active eft authorizations on any claim |
| `UpdateIssueDate` | `Public Shared Function UpdateIssueDate(ByVal inDPI As IDataPortalInfo, ByVal inPaymentType As PaymentTransactionTypes, ByVal inIssueDate As Date, ByVal inUpdateUser As String) As Boolean` | Updates the Issue date for a Payment Type. |
| `IsClaimAvailableExternalView` | `Public Shared Function IsClaimAvailableExternalView(dpi As IDataPortalInfo, claimID As Int64) As Boolean` | Returns whether the claim is flagged as externally viewable in CL_INJURY_CLAIM. |
| `Fill` | `Public Function Fill(ByVal address As clsClaimAddress) As clsClaimAddress` | Copies values from the supplied clsClaimAddress into a new clsClaimAddress instance and returns it. |
| `Routes` | `Public Enum Routes` | Defines the API route keys used for person address, worker address, beneficiary address, and claim contact lookups. |
| `New` | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo, Optional inPersonId As Decimal = 0, Optional inAddressType As String = "")` | Initializes the claim-service criteria helper with the data portal context used to configure API routes. |
| `Public Class ApiResult(Of T)` | `Public Class ApiResult(Of T)` | Wraps an API response status code together with its typed data payload. |

## Behavioral notes
- Many public members are Shared helpers that expect an IDataPortalInfo instance and then execute inline Oracle SQL or stored procedure calls.
- The type exposes nested authorization enums that are reused when claim payment and reserve authorization checks are performed.

## Constraints and usage notes
- Callers must supply the claim, mail ID, or person identifiers required by the specific helper method.
- Methods that execute Oracle routines rely on the surrounding data-access framework to create requests and bind parameters.

## Sources
- `Business\SAIF.Business\ClaimServices.vb`
