---
title: IEbillQueryProvider
summary: API reference for IEbillQueryProvider.
status: draft
owner: SAIF.Core documentation team
last_reviewed: 2026-09-24
library: SAIF.Data
reference_type: package
---

# IEbillQueryProvider

Contract implemented by `EbillQueryProvider`.

## Purpose
- Defines the members that `EbillQueryProvider` must provide to callers of this abstraction.

## Context
- Namespace: `SAIF.Data.Queries.Claims.Ebilling`
- Assembly/package: `SAIF.Data`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| GetBill | `Ebill GetBill(long billId)` | Retrieves bill.* |
| GetBillByClearinghouseAndControlNumber | `Ebill GetBillByClearinghouseAndControlNumber(string clearinghouseControlNumber, EbillClearinghouse clearinghouse)` | Retrieves bill by clearinghouse and control number.* |
| GetBillsForResponseFileForClearinghouse | `IEnumerable<Ebill> GetBillsForResponseFileForClearinghouse(EbillClearinghouse clearinghouse)` | Retrieves bills for response file for clearinghouse.* |
| GetBillCountByClearinghouseControlNumber | `int GetBillCountByClearinghouseControlNumber(string clearinghouseConrolNumber)` | Retrieves bill count by clearinghouse control number.* |
| GetEbillResponseSet | `EbillResponseSet GetEbillResponseSet(int responseSetSequenceNumber)` | Retrieves ebill response set.* |
| GetEbillSum | `decimal GetEbillSum(IEnumerable<Ebill> groupBills)` | Retrieves ebill sum.* |
| GetNonIndexedBills | `IEnumerable<Ebill> GetNonIndexedBills(long batchId)` | Retrieves non indexed bills.* |
| GetNonAssignedBills | `IEnumerable<Ebill> GetNonAssignedBills(long batchId)` | Retrieves non assigned bills.* |
| GetNonImagedBills | `IEnumerable<Ebill> GetNonImagedBills(long batchId)` | Retrieves non imaged bills.* |
| GetIndexedBills | `IEnumerable<long> GetIndexedBills(long batchId)` | Retrieves indexed bills.* |
| GetImagedBills | `IEnumerable<long> GetImagedBills(long batchId)` | Retrieves imaged bills.* |
| GetBillsByBatch | `IEnumerable<Ebill> GetBillsByBatch(long batchId)` | Retrieves bills by batch.* |
| GetBillsByEob | `IEnumerable<Ebill> GetBillsByEob(long eobId)` | Retrieves bills by eob.* |
| GetBillsByReceivedMonth | `IEnumerable<Ebill> GetBillsByReceivedMonth(DateTime startDate, DateTime endDate)` | Retrieves bills by received month.* |
| GetBillStatusAssigned | `EbillStatusCode GetBillStatusAssigned()` | Retrieves bill status assigned.* |
| GetBillStatusCompleted | `EbillStatusCode GetBillStatusCompleted()` | Retrieves bill status completed.* |
| GetBillStatusDocumentLoad | `EbillStatusCode GetBillStatusDocumentLoad()` | Retrieves bill status document load.* |
| GetBillStatuseEobDistributed | `EbillStatusCode GetBillStatuseEobDistributed()` | Retrieves bill statuse eob distributed.* |
| GetBillStatuseEobRejected | `EbillStatusCode GetBillStatuseEobRejected()` | Retrieves bill statuse eob rejected.* |
| GetBillStatusImaged | `EbillStatusCode GetBillStatusImaged()` | Retrieves bill status imaged.* |
| GetBillStatusIndexed | `EbillStatusCode GetBillStatusIndexed()` | Retrieves bill status indexed.* |
| GetBillStatusNew | `EbillStatusCode GetBillStatusNew()` | Retrieves bill status new.* |
| GetBillStatusPended | `EbillStatusCode GetBillStatusPended()` | Retrieves bill status pended.* |
| GetBillStatusRejected | `EbillStatusCode GetBillStatusRejected()` | Retrieves bill status rejected.* |
| GetBillStatusCbpSetup | `EbillStatusCode GetBillStatusCbpSetup()` | Retrieves bill status cbp setup.* |
| GetBillStatusExtracted | `EbillStatusCode GetBillStatusExtracted()` | Retrieves bill status extracted.* |
| GetPendedProviderErrors | `IEnumerable<EbillErrorCondition> GetPendedProviderErrors(long providerId)` | Retrieves pended provider errors.* |
| GetPendedPatientErrors | `IEnumerable<EbillErrorCondition> GetPendedPatientErrors(long patientId)` | Retrieves pended patient errors.* |
| GetPendedBillErrors | `IEnumerable<EbillErrorCondition> GetPendedBillErrors(long billId)` | Retrieves pended bill errors.* |
| GetPendedErrors | `IEnumerable<EbillErrorCondition> GetPendedErrors(Ebill bill)` | Retrieves pended errors.* |
| GetBillAssignmentRule | `EbillAssignmentRule GetBillAssignmentRule(string ruleCode)` | Retrieves bill assignment rule.* |
| GetConfidentialBillAssignment | `EbillAssignmentRule GetConfidentialBillAssignment()` | Retrieves confidential bill assignment.* |
| GetProviderErrorBillAssignment | `EbillAssignmentRule GetProviderErrorBillAssignment()` | Retrieves provider error bill assignment.* |
| GetClaimErrorBillAssignment | `EbillAssignmentRule GetClaimErrorBillAssignment()` | Retrieves claim error bill assignment.* |
| GetCleanBillAssignment | `EbillAssignmentRule GetCleanBillAssignment()` | Retrieves clean bill assignment.* |
| GetBillSetTypeCode | `EbillSetTypeCode GetBillSetTypeCode(string manualVersionNumber)` | Retrieves bill set type code.* |
| GetBillSetTypeCodeByCode | `EbillSetTypeCode GetBillSetTypeCodeByCode(string code)` | Retrieves bill set type code by code.* |
| GetEdiPlaceOfServiceCode | `EdiPlaceOfServiceCode GetEdiPlaceOfServiceCode(string ubBillTypeCode)` | Retrieves edi place of service code.* |

## Behavioral notes
- As an interface, this type defines no executable behavior of its own; behavior is determined by its implementation(s).*

## Constraints and usage notes
- Callers should depend on this interface rather than the concrete implementation(s) (`EbillQueryProvider`) to preserve testability.*

> **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
- `Data/SAIF.Data/Queries/Claims/Ebilling/IEbillQueryProvider.cs`
