﻿---
title: "clsBill"
summary: "API reference for clsBill."
status: draft
owner: Technical Writer
last_reviewed: 2026-07-28
library: SAIF.Business.Claim.Bill
reference_type: package
---

# clsBill

Represents a medical bill claim record, including claimant and provider details, current bill status, and bill-level financial amounts. It also exposes the bill's procedures, diagnoses, services, status history, and related audit when one exists.

## Purpose
- Stores the bill header, participant, provider, and financial fields for a claim bill.
- Exposes child collections for bill procedures, diagnoses, services, and status history.
- Exposes the related audit object for bills that have already been audited.

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

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| BillID | `ReadOnly Property BillID() As Decimal` | Returns the unique ID associated with this bill. |
| IsAudited | `ReadOnly Property IsAudited() As Boolean` | Returns true if this Bill has been previously audited. |
| BillEntrySourceCode | `Property BillEntrySourceCode As String` | Gets or Sets the Entry Source of the bill. |
| EntrySource | `ReadOnly Property EntrySource As BillEntrySource` | Returns the enumerated Entry Source. |
| AuditReceiptDate | `ReadOnly Property AuditReceiptDate() As Date` | Returns the receipt date of the previous Audit. |
| TotalChargedAmount | `ReadOnly Property TotalChargedAmount() As Decimal` | Returns the total charged amount from the previous audit. |
| TotalAllowedAmount | `ReadOnly Property TotalAllowedAmount() As Decimal` | Returnst he total allowed amount from the previous audit. |
| TotalMcoAdminFeeAmount | `ReadOnly Property TotalMcoAdminFeeAmount() As Decimal` | Returns the total amount of the mco administrative fee from the previous audit. |
| BillTypeCode | `Property BillTypeCode() As String` | Returns the string code value associated with this type of Audit. |
| BillType | `ReadOnly Property BillType() As ClaimBillTypes` | Returns the enumerated ClaimBillType value associated with this bill. |
| IsRebill | `ReadOnly Property IsRebill() As Boolean` | Returns True if rebill flag has been set to yes. |
| RebillFlag | `Property RebillFlag() As String` | Gets or sets the RebillFlag value. |
| PriorityNumber | `Property PriorityNumber() As Decimal` | Gets or sets the PriorityNumber value. |
| BillTotalAmount | `Property BillTotalAmount() As Decimal` | Gets or sets the BillTotalAmount value. |
| ProviderLocationID | `Property ProviderLocationID() As Decimal` | Gets or sets the ProviderLocationID value. |
| ClaimID | `Property ClaimID() As Decimal` | Gets or sets the ClaimID value. |
| PatientReferenceNumber | `Property PatientReferenceNumber() As String` | Gets or sets the PatientReferenceNumber value. |
| MailRoomReceivedDate | `Property MailRoomReceivedDate() As Date` | Gets or sets the MailRoomReceivedDate value. |
| ClaimNumber | `Property ClaimNumber() As String` | Gets or sets the ClaimNumber value. |
| ClaimCheckValue | `Property ClaimCheckValue() As String` | Gets or sets the ClaimCheckValue value. |
| WorkerFirstName | `Property WorkerFirstName() As String` | Gets or sets the WorkerFirstName value. |
| WorkerMiddleInitial | `Property WorkerMiddleInitial() As String` | Gets or sets the WorkerMiddleInitial value. |
| WorkerLastName | `Property WorkerLastName() As String` | Gets or sets the WorkerLastName value. |
| WorkerPhoneNum | `Property WorkerPhoneNum() As String` | Gets or sets the WorkerPhoneNum value. |
| WorkerBirthDate | `Property WorkerBirthDate() As Date` | Gets or sets the WorkerBirthDate value. |
| WorkerAddressLine1 | `Property WorkerAddressLine1() As String` | Gets or sets the WorkerAddressLine1 value. |
| WorkerAddressLine2 | `Property WorkerAddressLine2() As String` | Gets or sets the WorkerAddressLine2 value. |
| WorkerAddressLine3 | `Property WorkerAddressLine3() As String` | Gets or sets the WorkerAddressLine3 value. |
| WorkerAddressLine4 | `Property WorkerAddressLine4() As String` | Gets or sets the WorkerAddressLine4 value. |
| GenderCode | `Property GenderCode() As String` | Gets or sets the GenderCode value. |
| PatientAccountNumber | `Property PatientAccountNumber() As String` | Gets or sets the PatientAccountNumber value. |
| ProviderTaxID | `Property ProviderTaxID() As String` | Gets or sets the ProviderTaxID value. |
| ProviderAddressLine1 | `Property ProviderAddressLine1() As String` | Gets or sets the ProviderAddressLine1 value. |
| ProviderAddressLine2 | `Property ProviderAddressLine2() As String` | Gets or sets the ProviderAddressLine2 value. |
| ProviderCityName | `Property ProviderCityName() As String` | Gets or sets the ProviderCityName value. |
| ProviderStateCode | `Property ProviderStateCode() As String` | Gets or sets the ProviderStateCode value. |
| ProviderZipCode | `Property ProviderZipCode() As Decimal` | Gets or sets the ProviderZipCode value. |
| ProviderLicenseNumber | `Property ProviderLicenseNumber() As String` | Gets or sets the ProviderLicenseNumber value. |
| AdmissionDate | `Property AdmissionDate() As Date` | Gets or sets the AdmissionDate value. |
| DischargeDate | `Property DischargeDate() As Date` | Gets or sets the DischargeDate value. |
| StatementFromDate | `Property StatementFromDate() As Date` | Gets or sets the StatementFromDate value. |
| StatementThruDate | `Property StatementThruDate() As Date` | Gets or sets the StatementThruDate value. |
| WorkerTaxID | `Property WorkerTaxID() As String` | Gets or sets the WorkerTaxID value. |
| Towid | `Property Towid() As Decimal` | Gets or sets the Towid value. |
| CurrentBillStatusID | `Property CurrentBillStatusID() As Decimal` | Gets or sets the CurrentBillStatusID value. |
| ReferringProviderName | `Property ReferringProviderName() As String` | Gets or sets the ReferringProviderName value. |
| DRGCode | `Property DRGCode() As String` | Gets or sets the DRGCode value. |
| BillPackageQuantity | `Property BillPackageQuantity() As Decimal` | Gets or sets the BillPackageQuantity value. |
| CurrentBillStatus | `ReadOnly Property CurrentBillStatus() As ClaimBillStatus` | Returns the CurrentBillStatus value. |
| WorkflowBypassCode | `Property WorkflowBypassCode() As String` | Gets or sets the WorkflowBypassCode value. |
| CurrentStatus | `ReadOnly Property CurrentStatus() As clsBillStatus` | Returns the latest status for this Bill (Based on Effective Date and highest Status ID). |
| CurrentBillStatusCode | `Property CurrentBillStatusCode() As String` | Gets or sets the CurrentBillStatusCode value. |
| CurrentResponsiblePartyID | `Property CurrentResponsiblePartyID() As String` | Gets or sets the CurrentResponsiblePartyID value. |
| CurrentStatusEffectiveDate | `Property CurrentStatusEffectiveDate() As Date` | Gets or sets the CurrentStatusEffectiveDate value. |
| CurrentUpdateUser | `Property CurrentUpdateUser() As String` | Gets or sets the CurrentUpdateUser value. |
| CurrentNextReviewDate | `Property CurrentNextReviewDate() As Date` | Gets or sets the CurrentNextReviewDate value. |
| UBBillTypeCode | `Property UBBillTypeCode() As String` | Gets or sets the UBBillTypeCode value. |
| AdmitTypeCode | `Property AdmitTypeCode() As String` | Gets or sets the AdmitTypeCode value. |
| UpdateUser | `ReadOnly Property UpdateUser() As String` | Returns the UpdateUser value. |
| UpdateNumber | `ReadOnly Property UpdateNumber() As Decimal` | Returns the UpdateNumber value. |
| UpdateDate | `ReadOnly Property UpdateDate() As Date` | Returns the UpdateDate value. |
| Procedures | `ReadOnly Property Procedures() As clsBillProcedureCollection` | Returns the Procedures value. |
| Diagnosis | `ReadOnly Property Diagnosis() As clsBillDiagnosisCollection` | Returns the Diagnosis value. |
| Services | `ReadOnly Property Services() As clsBillServiceCollection` | Returns the Services value. |
| Audit | `Property Audit() As clsAudit` | Gets or sets the Audit value. |
| StatusHistory | `ReadOnly Property StatusHistory() As clsBillStatusCollection` | Returns the StatusHistory value. |
| IsDirty | `ReadOnly Property IsDirty() As Boolean` | Returns the IsDirty value. |
| SetProviderLocationIDNull | `Sub SetProviderLocationIDNull()` | Performs the SetProviderLocationIDNull operation. |
| SetClaimIDNull | `Sub SetClaimIDNull()` | Performs the SetClaimIDNull operation. |
| SetPatientReferenceNumberNull | `Sub SetPatientReferenceNumberNull()` | Performs the SetPatientReferenceNumberNull operation. |
| SetMailRoomReceivedDateNull | `Sub SetMailRoomReceivedDateNull()` | Performs the SetMailRoomReceivedDateNull operation. |
| SetClaimNumberNull | `Sub SetClaimNumberNull()` | Performs the SetClaimNumberNull operation. |
| SetClaimCheckValueNull | `Sub SetClaimCheckValueNull()` | Performs the SetClaimCheckValueNull operation. |
| SetWorkerFirstNameNull | `Sub SetWorkerFirstNameNull()` | Performs the SetWorkerFirstNameNull operation. |
| SetWorkerMiddleInitialNull | `Sub SetWorkerMiddleInitialNull()` | Performs the SetWorkerMiddleInitialNull operation. |
| SetWorkerLastNameNull | `Sub SetWorkerLastNameNull()` | Performs the SetWorkerLastNameNull operation. |
| SetWorkerPhoneNumNull | `Sub SetWorkerPhoneNumNull()` | Performs the SetWorkerPhoneNumNull operation. |
| SetWorkerBirthDateNull | `Sub SetWorkerBirthDateNull()` | Performs the SetWorkerBirthDateNull operation. |
| SetWorkerAddressLine1Null | `Sub SetWorkerAddressLine1Null()` | Performs the SetWorkerAddressLine1Null operation. |
| SetWorkerAddressLine2Null | `Sub SetWorkerAddressLine2Null()` | Performs the SetWorkerAddressLine2Null operation. |
| SetWorkerAddressLine3Null | `Sub SetWorkerAddressLine3Null()` | Performs the SetWorkerAddressLine3Null operation. |
| SetWorkerAddressLine4Null | `Sub SetWorkerAddressLine4Null()` | Performs the SetWorkerAddressLine4Null operation. |
| SetGenderCodeNull | `Sub SetGenderCodeNull()` | Performs the SetGenderCodeNull operation. |
| SetPatientAccountNumberNull | `Sub SetPatientAccountNumberNull()` | Performs the SetPatientAccountNumberNull operation. |
| SetProviderTaxIDNull | `Sub SetProviderTaxIDNull()` | Performs the SetProviderTaxIDNull operation. |
| SetProviderAddressLine1Null | `Sub SetProviderAddressLine1Null()` | Performs the SetProviderAddressLine1Null operation. |
| SetProviderAddressLine2Null | `Sub SetProviderAddressLine2Null()` | Performs the SetProviderAddressLine2Null operation. |
| SetProviderCityNameNull | `Sub SetProviderCityNameNull()` | Performs the SetProviderCityNameNull operation. |
| SetProviderStateCodeNull | `Sub SetProviderStateCodeNull()` | Performs the SetProviderStateCodeNull operation. |
| SetProviderZipCodeNull | `Sub SetProviderZipCodeNull()` | Performs the SetProviderZipCodeNull operation. |
| SetProviderLicenseNumberNull | `Sub SetProviderLicenseNumberNull()` | Performs the SetProviderLicenseNumberNull operation. |
| SetAdmissionDateNull | `Sub SetAdmissionDateNull()` | Performs the SetAdmissionDateNull operation. |
| SetDischargeDateNull | `Sub SetDischargeDateNull()` | Performs the SetDischargeDateNull operation. |
| SetStatementFromDateNull | `Sub SetStatementFromDateNull()` | Performs the SetStatementFromDateNull operation. |
| SetStatementThruDateNull | `Sub SetStatementThruDateNull()` | Performs the SetStatementThruDateNull operation. |
| SetWorkerTaxIDNull | `Sub SetWorkerTaxIDNull()` | Performs the SetWorkerTaxIDNull operation. |
| SetTowidNull | `Sub SetTowidNull()` | Performs the SetTowidNull operation. |
| SetCurrentBillStatusIDNull | `Sub SetCurrentBillStatusIDNull()` | Performs the SetCurrentBillStatusIDNull operation. |
| SetReferringProviderNameNull | `Sub SetReferringProviderNameNull()` | Performs the SetReferringProviderNameNull operation. |
| SetDRGCodeNull | `Sub SetDRGCodeNull()` | Performs the SetDRGCodeNull operation. |
| SetBillPackageQuantityNull | `Sub SetBillPackageQuantityNull()` | Performs the SetBillPackageQuantityNull operation. |
| SetWorkflowBypassCodeNull | `Sub SetWorkflowBypassCodeNull()` | Performs the SetWorkflowBypassCodeNull operation. |
| SetCurrentBillStatusCodeNull | `Sub SetCurrentBillStatusCodeNull()` | Performs the SetCurrentBillStatusCodeNull operation. |
| SetCurrentResponsiblePartyIDNull | `Sub SetCurrentResponsiblePartyIDNull()` | Performs the SetCurrentResponsiblePartyIDNull operation. |
| SetCurrentStatusEffectiveDateNull | `Sub SetCurrentStatusEffectiveDateNull()` | Performs the SetCurrentStatusEffectiveDateNull operation. |
| SetCurrentUpdateUserNull | `Sub SetCurrentUpdateUserNull()` | Performs the SetCurrentUpdateUserNull operation. |
| SetCurrentNextReviewDateNull | `Sub SetCurrentNextReviewDateNull()` | Performs the SetCurrentNextReviewDateNull operation. |
| SetUBBillTypeCodeNull | `Sub SetUBBillTypeCodeNull()` | Performs the SetUBBillTypeCodeNull operation. |
| SetAdmitTypeCodeNull | `Sub SetAdmitTypeCodeNull()` | Performs the SetAdmitTypeCodeNull operation. |
| IsProviderLocationIDNull | `Function IsProviderLocationIDNull() As Boolean` | Executes IsProviderLocationIDNull and returns the result. |
| IsClaimIDNull | `Function IsClaimIDNull() As Boolean` | Executes IsClaimIDNull and returns the result. |
| IsPatientReferenceNumberNull | `Function IsPatientReferenceNumberNull() As Boolean` | Executes IsPatientReferenceNumberNull and returns the result. |
| IsMailRoomReceivedDateNull | `Function IsMailRoomReceivedDateNull() As Boolean` | Executes IsMailRoomReceivedDateNull and returns the result. |
| IsClaimNumberNull | `Function IsClaimNumberNull() As Boolean` | Executes IsClaimNumberNull and returns the result. |
| IsClaimCheckValueNull | `Function IsClaimCheckValueNull() As Boolean` | Executes IsClaimCheckValueNull and returns the result. |
| IsWorkerFirstNameNull | `Function IsWorkerFirstNameNull() As Boolean` | Executes IsWorkerFirstNameNull and returns the result. |
| IsWorkerMiddleInitialNull | `Function IsWorkerMiddleInitialNull() As Boolean` | Executes IsWorkerMiddleInitialNull and returns the result. |
| IsWorkerLastNameNull | `Function IsWorkerLastNameNull() As Boolean` | Executes IsWorkerLastNameNull and returns the result. |
| IsWorkerPhoneNumNull | `Function IsWorkerPhoneNumNull() As Boolean` | Executes IsWorkerPhoneNumNull and returns the result. |
| IsWorkerBirthDateNull | `Function IsWorkerBirthDateNull() As Boolean` | Executes IsWorkerBirthDateNull and returns the result. |
| IsWorkerAddressLine1Null | `Function IsWorkerAddressLine1Null() As Boolean` | Executes IsWorkerAddressLine1Null and returns the result. |
| IsWorkerAddressLine2Null | `Function IsWorkerAddressLine2Null() As Boolean` | Executes IsWorkerAddressLine2Null and returns the result. |
| IsWorkerAddressLine3Null | `Function IsWorkerAddressLine3Null() As Boolean` | Executes IsWorkerAddressLine3Null and returns the result. |
| IsWorkerAddressLine4Null | `Function IsWorkerAddressLine4Null() As Boolean` | Executes IsWorkerAddressLine4Null and returns the result. |
| IsGenderCodeNull | `Function IsGenderCodeNull() As Boolean` | Executes IsGenderCodeNull and returns the result. |
| IsPatientAccountNumberNull | `Function IsPatientAccountNumberNull() As Boolean` | Executes IsPatientAccountNumberNull and returns the result. |
| IsProviderTaxIDNull | `Function IsProviderTaxIDNull() As Boolean` | Executes IsProviderTaxIDNull and returns the result. |
| IsProviderAddressLine1Null | `Function IsProviderAddressLine1Null() As Boolean` | Executes IsProviderAddressLine1Null and returns the result. |
| IsProviderAddressLine2Null | `Function IsProviderAddressLine2Null() As Boolean` | Executes IsProviderAddressLine2Null and returns the result. |
| IsProviderCityNameNull | `Function IsProviderCityNameNull() As Boolean` | Executes IsProviderCityNameNull and returns the result. |
| IsProviderStateCodeNull | `Function IsProviderStateCodeNull() As Boolean` | Executes IsProviderStateCodeNull and returns the result. |
| IsProviderZipCodeNull | `Function IsProviderZipCodeNull() As Boolean` | Executes IsProviderZipCodeNull and returns the result. |
| IsProviderLicenseNumberNull | `Function IsProviderLicenseNumberNull() As Boolean` | Executes IsProviderLicenseNumberNull and returns the result. |
| IsAdmissionDateNull | `Function IsAdmissionDateNull() As Boolean` | Executes IsAdmissionDateNull and returns the result. |
| IsDischargeDateNull | `Function IsDischargeDateNull() As Boolean` | Executes IsDischargeDateNull and returns the result. |
| IsStatementFromDateNull | `Function IsStatementFromDateNull() As Boolean` | Executes IsStatementFromDateNull and returns the result. |
| IsStatementThruDateNull | `Function IsStatementThruDateNull() As Boolean` | Executes IsStatementThruDateNull and returns the result. |
| IsWorkerTaxIDNull | `Function IsWorkerTaxIDNull() As Boolean` | Executes IsWorkerTaxIDNull and returns the result. |
| IsTowidNull | `Function IsTowidNull() As Boolean` | Executes IsTowidNull and returns the result. |
| IsCurrentBillStatusIDNull | `Function IsCurrentBillStatusIDNull() As Boolean` | Executes IsCurrentBillStatusIDNull and returns the result. |
| IsReferringProviderNameNull | `Function IsReferringProviderNameNull() As Boolean` | Executes IsReferringProviderNameNull and returns the result. |
| IsDRGCodeNull | `Function IsDRGCodeNull() As Boolean` | Executes IsDRGCodeNull and returns the result. |
| IsBillPackageQuantityNull | `Function IsBillPackageQuantityNull() As Boolean` | Executes IsBillPackageQuantityNull and returns the result. |
| IsWorkflowBypassCodeNull | `Function IsWorkflowBypassCodeNull() As Boolean` | Executes IsWorkflowBypassCodeNull and returns the result. |
| IsCurrentBillStatusCodeNull | `Function IsCurrentBillStatusCodeNull() As Boolean` | Executes IsCurrentBillStatusCodeNull and returns the result. |
| IsCurrentResponsiblePartyIDNull | `Function IsCurrentResponsiblePartyIDNull() As Boolean` | Executes IsCurrentResponsiblePartyIDNull and returns the result. |
| IsCurrentStatusEffectiveDateNull | `Function IsCurrentStatusEffectiveDateNull() As Boolean` | Executes IsCurrentStatusEffectiveDateNull and returns the result. |
| IsCurrentUpdateUserNull | `Function IsCurrentUpdateUserNull() As Boolean` | Executes IsCurrentUpdateUserNull and returns the result. |
| IsCurrentNextReviewDateNull | `Function IsCurrentNextReviewDateNull() As Boolean` | Executes IsCurrentNextReviewDateNull and returns the result. |
| IsUBBillTypeCodeNull | `Function IsUBBillTypeCodeNull() As Boolean` | Executes IsUBBillTypeCodeNull and returns the result. |
| IsAdmitTypeCodeNull | `Function IsAdmitTypeCodeNull() As Boolean` | Executes IsAdmitTypeCodeNull and returns the result. |
| Equals | `Shared Function Equals(ByVal objA As Object, ByVal objB As Object) As Boolean` | Executes Equals and returns the result. |
| Equals | `Overrides Function Equals(ByVal inObject As Object) As Boolean` | Executes Equals and returns the result. |
| Equals | `Overloads Function Equals(ByVal inObject As clsBill) As Boolean` | Executes Equals and returns the result. |
| GetHashCode | `Overrides Function GetHashCode() As Integer` | Executes GetHashCode and returns the result. |
| ToString | `Overrides Function ToString() As String` | Executes ToString and returns the result. |
| NewBill | `Shared Function NewBill(ByVal inDataportal As IDataPortalInfo) As clsBill` | Executes NewBill and returns the result. |
| GetBill | `Shared Function GetBill(ByVal inDataportal As IDataPortalInfo, ByVal inBillID As Decimal) As clsBill` | Executes GetBill and returns the result. |
| GenerateAudit | `Overridable Function GenerateAudit() As Boolean` | Executes GenerateAudit and returns the result. |

## Inherited public members
Members in this section are inherited from `clsBusinessBase`.
| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| Rules | `Property Rules As clsRulesManager` | Exposes the BOF rules manager used to evaluate object validation rules.* | `saif-framework-core — clsBusinessBase` |
| BeginEdit | `Sub BeginEdit()` | Starts an edit session for n-level undo support.* | `saif-framework-core — clsBusinessBase` |
| CancelEdit | `Sub CancelEdit()` | Cancels the active edit session and reverts pending changes.* | `saif-framework-core — clsBusinessBase` |
| ApplyEdit | `Sub ApplyEdit()` | Commits the active edit session and accepts pending changes.* | `saif-framework-core — clsBusinessBase` |
## Behavioral notes
- `clsBill` is part of the documented `SAIF.Business.Claim.Bill` public contract.
- Public members are declared in `Business\SAIF.Business.Claim.Bill\Core\clsBill.vb`.

## Constraints and usage notes
- Consumers should use the documented public members directly when integrating this type.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- `Business\SAIF.Business.Claim.Bill\Core\clsBill.vb`