CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-fhir--resources

FHIR Resources as Model Classes - Python classes for all FHIR resources with validation and serialization

Pending
Overview
Eval results
Files

financial-resources.mddocs/

Financial Resources

Healthcare financial transactions including claims, coverage, payments, and billing for insurance and payment processing. These resources support the business aspects of healthcare including insurance coverage, billing, and financial transactions.

Capabilities

Insurance Claims

Insurance claims for healthcare services including medical, dental, pharmacy, and vision claims.

class Claim(DomainResource):
    """Healthcare insurance claim"""
    def __init__(
        self,
        # Core claim data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        type: "CodeableConcept",
        subType: Optional["CodeableConcept"] = None,
        use: str,  # claim | preauthorization | predetermination
        patient: "Reference",
        billablePeriod: Optional["Period"] = None,
        created: str,  # DateTime
        enterer: Optional["Reference"] = None,
        insurer: "Reference",
        provider: "Reference",
        priority: "CodeableConcept",
        
        # Claim details
        fundsReserve: Optional["CodeableConcept"] = None,
        related: Optional[List["ClaimRelated"]] = None,
        prescription: Optional["Reference"] = None,
        originalPrescription: Optional["Reference"] = None,
        payee: Optional["ClaimPayee"] = None,
        referral: Optional["Reference"] = None,
        encounter: Optional[List["Reference"]] = None,
        facility: Optional["Reference"] = None,
        
        # Care team and diagnosis
        careTeam: Optional[List["ClaimCareTeam"]] = None,
        supportingInfo: Optional[List["ClaimSupportingInfo"]] = None,
        diagnosis: Optional[List["ClaimDiagnosis"]] = None,
        procedure: Optional[List["ClaimProcedure"]] = None,
        
        # Insurance and financial
        insurance: List["ClaimInsurance"],
        accident: Optional["ClaimAccident"] = None,
        patientPaid: Optional["Money"] = None,
        item: Optional[List["ClaimItem"]] = None,
        total: Optional["Money"] = None,
        
        **kwargs
    ): ...

class ClaimResponse(DomainResource):
    """Response to healthcare insurance claim"""
    def __init__(
        self,
        # Core response data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        type: "CodeableConcept",
        subType: Optional["CodeableConcept"] = None,
        use: str,  # claim | preauthorization | predetermination
        patient: "Reference",
        created: str,  # DateTime
        insurer: "Reference",
        requestor: Optional["Reference"] = None,
        request: Optional["Reference"] = None,
        outcome: str,  # queued | complete | error | partial
        disposition: Optional[str] = None,
        preAuthRef: Optional[str] = None,
        preAuthPeriod: Optional["Period"] = None,
        
        # Financial details
        event: Optional[List["ClaimResponseEvent"]] = None,
        payeeType: Optional["CodeableConcept"] = None,
        encounter: Optional[List["Reference"]] = None,
        diagnosisRelatedGroup: Optional["CodeableConcept"] = None,
        item: Optional[List["ClaimResponseItem"]] = None,
        addItem: Optional[List["ClaimResponseAddItem"]] = None,
        total: Optional[List["ClaimResponseTotal"]] = None,
        payment: Optional["ClaimResponsePayment"] = None,
        
        # Processing notes and errors
        fundsReserve: Optional["CodeableConcept"] = None,
        formCode: Optional["CodeableConcept"] = None,
        form: Optional["Attachment"] = None,
        processNote: Optional[List["ClaimResponseProcessNote"]] = None,
        communicationRequest: Optional[List["Reference"]] = None,
        insurance: Optional[List["ClaimResponseInsurance"]] = None,
        error: Optional[List["ClaimResponseError"]] = None,
        
        **kwargs
    ): ...

Usage Example:

from fhir.resources.claim import Claim
from fhir.resources.claiminsurance import ClaimInsurance
from fhir.resources.claimitem import ClaimItem
from fhir.resources.money import Money
from fhir.resources.codeableconcept import CodeableConcept

# Medical claim for office visit
claim = Claim(
    status="active",
    type=CodeableConcept(
        coding=[Coding(
            system="http://terminology.hl7.org/CodeSystem/claim-type",
            code="institutional",
            display="Institutional"
        )]
    ),
    use="claim",
    patient=Reference(
        reference="Patient/patient-001"
    ),
    created="2024-01-15T10:00:00Z",
    insurer=Reference(
        reference="Organization/insurance-company-abc"
    ),
    provider=Reference(
        reference="Organization/general-hospital"
    ),
    priority=CodeableConcept(
        coding=[Coding(
            system="http://terminology.hl7.org/CodeSystem/processpriority",
            code="normal",
            display="Normal"
        )]
    ),
    insurance=[
        ClaimInsurance(
            sequence=1,
            focal=True,
            coverage=Reference(
                reference="Coverage/coverage-001"
            )
        )
    ],
    item=[
        ClaimItem(
            sequence=1,
            careTeamSequence=[1],
            productOrService=CodeableConcept(
                coding=[Coding(
                    system="http://www.ama-assn.org/go/cpt",
                    code="99213",
                    display="Office visit, established patient"
                )]
            ),
            servicedDate="2024-01-15",
            unitPrice=Money(
                value=150.00,
                currency="USD"
            ),
            net=Money(
                value=150.00,
                currency="USD"
            )
        )
    ],
    total=Money(
        value=150.00,
        currency="USD"
    )
)

Insurance Coverage

Insurance coverage information including subscriber details, benefits, and coverage periods.

class Coverage(DomainResource):
    """Insurance coverage information"""
    def __init__(
        self,
        # Core coverage data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        kind: str,  # insurance | self-pay | other
        paymentBy: Optional[List["CoveragePaymentBy"]] = None,
        type: Optional["CodeableConcept"] = None,
        policyHolder: Optional["Reference"] = None,
        subscriber: Optional["Reference"] = None,
        subscriberId: Optional[List["Identifier"]] = None,
        beneficiary: "Reference",
        dependent: Optional[str] = None,
        relationship: Optional["CodeableConcept"] = None,
        
        # Coverage period and network
        period: Optional["Period"] = None,
        insurer: Optional["Reference"] = None,
        class_: Optional[List["CoverageClass"]] = None,
        order: Optional[int] = None,
        network: Optional[str] = None,
        
        # Cost sharing
        costToBeneficiary: Optional[List["CoverageCostToBeneficiary"]] = None,
        subrogation: Optional[bool] = None,
        contract: Optional[List["Reference"]] = None,
        
        **kwargs
    ): ...

class CoverageEligibilityRequest(DomainResource):
    """Request for coverage eligibility and benefits"""
    def __init__(
        self,
        # Core request data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        priority: Optional["CodeableConcept"] = None,
        purpose: List[str],  # auth-requirements | benefits | discovery | validation
        patient: "Reference",
        event: Optional[List["CoverageEligibilityRequestEvent"]] = None,
        servicedDate: Optional[str] = None,  # Date
        servicedPeriod: Optional["Period"] = None,
        created: str,  # DateTime
        enterer: Optional["Reference"] = None,
        provider: Optional["Reference"] = None,
        insurer: "Reference",
        facility: Optional["Reference"] = None,
        
        # Supporting information
        supportingInfo: Optional[List["CoverageEligibilityRequestSupportingInfo"]] = None,
        insurance: Optional[List["CoverageEligibilityRequestInsurance"]] = None,
        item: Optional[List["CoverageEligibilityRequestItem"]] = None,
        
        **kwargs
    ): ...

class CoverageEligibilityResponse(DomainResource):
    """Response to coverage eligibility request"""
    def __init__(
        self,
        # Core response data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        purpose: List[str],  # auth-requirements | benefits | discovery | validation
        patient: "Reference",
        event: Optional[List["CoverageEligibilityResponseEvent"]] = None,
        servicedDate: Optional[str] = None,  # Date
        servicedPeriod: Optional["Period"] = None,
        created: str,  # DateTime
        requestor: Optional["Reference"] = None,
        request: "Reference",
        outcome: str,  # queued | complete | error | partial
        disposition: Optional[str] = None,
        insurer: "Reference",
        
        # Coverage and benefits information
        insurance: Optional[List["CoverageEligibilityResponseInsurance"]] = None,
        preAuthRef: Optional[str] = None,
        form: Optional["CodeableConcept"] = None,
        error: Optional[List["CoverageEligibilityResponseError"]] = None,
        
        **kwargs
    ): ...

Payment and Reconciliation

Payment notices, reconciliation, and explanation of benefits for financial transactions.

class ExplanationOfBenefit(DomainResource):
    """Explanation of benefit for healthcare services"""
    def __init__(
        self,
        # Core EOB data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        type: "CodeableConcept",
        subType: Optional["CodeableConcept"] = None,
        use: str,  # claim | preauthorization | predetermination
        patient: "Reference",
        billablePeriod: Optional["Period"] = None,
        created: str,  # DateTime
        enterer: Optional["Reference"] = None,
        insurer: "Reference",
        provider: "Reference",
        
        # Claim reference and outcome
        priority: Optional["CodeableConcept"] = None,
        fundsReserveRequested: Optional["CodeableConcept"] = None,
        fundsReserve: Optional["CodeableConcept"] = None,
        related: Optional[List["ExplanationOfBenefitRelated"]] = None,
        prescription: Optional["Reference"] = None,
        originalPrescription: Optional["Reference"] = None,
        event: Optional[List["ExplanationOfBenefitEvent"]] = None,
        payee: Optional["ExplanationOfBenefitPayee"] = None,
        referral: Optional["Reference"] = None,
        encounter: Optional[List["Reference"]] = None,
        facility: Optional["Reference"] = None,
        claim: Optional["Reference"] = None,
        claimResponse: Optional["Reference"] = None,
        outcome: str,  # queued | complete | error | partial
        disposition: Optional[str] = None,
        
        # Care team and diagnosis
        careTeam: Optional[List["ExplanationOfBenefitCareTeam"]] = None,
        supportingInfo: Optional[List["ExplanationOfBenefitSupportingInfo"]] = None,
        diagnosis: Optional[List["ExplanationOfBenefitDiagnosis"]] = None,
        procedure: Optional[List["ExplanationOfBenefitProcedure"]] = None,
        
        # Financial details
        precedence: Optional[int] = None,
        insurance: List["ExplanationOfBenefitInsurance"],
        accident: Optional["ExplanationOfBenefitAccident"] = None,
        patientPaid: Optional["Money"] = None,
        item: Optional[List["ExplanationOfBenefitItem"]] = None,
        addItem: Optional[List["ExplanationOfBenefitAddItem"]] = None,
        total: Optional[List["ExplanationOfBenefitTotal"]] = None,
        payment: Optional["ExplanationOfBenefitPayment"] = None,
        formCode: Optional["CodeableConcept"] = None,
        form: Optional["Attachment"] = None,
        processNote: Optional[List["ExplanationOfBenefitProcessNote"]] = None,
        benefitPeriod: Optional["Period"] = None,
        benefitBalance: Optional[List["ExplanationOfBenefitBenefitBalance"]] = None,
        
        **kwargs
    ): ...

class PaymentNotice(DomainResource):
    """Payment notice"""
    def __init__(
        self,
        # Core payment notice data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        request: Optional["Reference"] = None,
        response: Optional["Reference"] = None,
        created: str,  # DateTime
        reporter: Optional["Reference"] = None,
        payment: Optional["Reference"] = None,
        paymentDate: Optional[str] = None,  # Date
        payee: Optional["Reference"] = None,
        recipient: "Reference",
        amount: "Money",
        
        # Payment status
        paymentStatus: Optional["CodeableConcept"] = None,
        
        **kwargs
    ): ...

class PaymentReconciliation(DomainResource):
    """Payment reconciliation"""
    def __init__(
        self,
        # Core reconciliation data
        identifier: Optional[List["Identifier"]] = None,
        status: str,  # active | cancelled | draft | entered-in-error
        kind: Optional["CodeableConcept"] = None,
        period: Optional["Period"] = None,
        created: str,  # DateTime
        enterer: Optional["Reference"] = None,
        issuerType: Optional["CodeableConcept"] = None,
        paymentIssuer: Optional["Reference"] = None,
        
        # Request and outcome
        request: Optional["Reference"] = None,
        requestor: Optional["Reference"] = None,
        outcome: Optional[str] = None,  # queued | complete | error | partial
        disposition: Optional[str] = None,
        date: str,  # Date
        location: Optional["Reference"] = None,
        method: Optional["CodeableConcept"] = None,
        cardBrand: Optional[str] = None,
        accountNumber: Optional[str] = None,
        expirationDate: Optional[str] = None,  # Date
        processor: Optional[str] = None,
        referenceNumber: Optional[str] = None,
        authorization: Optional[str] = None,
        tenderedAmount: Optional["Money"] = None,
        returnedAmount: Optional["Money"] = None,
        amount: "Money",
        
        # Payment details
        paymentIdentifier: Optional["Identifier"] = None,
        allocation: Optional[List["PaymentReconciliationAllocation"]] = None,
        formCode: Optional["CodeableConcept"] = None,
        processNote: Optional[List["PaymentReconciliationProcessNote"]] = None,
        
        **kwargs
    ): ...

Types

from typing import Optional, List
from fhir.resources.domainresource import DomainResource
from fhir.resources.money import Money

# Financial resource backbone elements
class ClaimRelated: ...
class ClaimPayee: ...
class ClaimCareTeam: ...
class ClaimSupportingInfo: ...
class ClaimDiagnosis: ...
class ClaimProcedure: ...
class ClaimInsurance: ...
class ClaimAccident: ...
class ClaimItem: ...

class ClaimResponseEvent: ...
class ClaimResponseItem: ...
class ClaimResponseAddItem: ...
class ClaimResponseTotal: ...
class ClaimResponsePayment: ...
class ClaimResponseProcessNote: ...
class ClaimResponseInsurance: ...
class ClaimResponseError: ...

class CoveragePaymentBy: ...
class CoverageClass: ...
class CoverageCostToBeneficiary: ...

class CoverageEligibilityRequestEvent: ...
class CoverageEligibilityRequestSupportingInfo: ...
class CoverageEligibilityRequestInsurance: ...
class CoverageEligibilityRequestItem: ...

class CoverageEligibilityResponseEvent: ...
class CoverageEligibilityResponseInsurance: ...
class CoverageEligibilityResponseError: ...

class ExplanationOfBenefitRelated: ...
class ExplanationOfBenefitEvent: ...
class ExplanationOfBenefitPayee: ...
class ExplanationOfBenefitCareTeam: ...
class ExplanationOfBenefitSupportingInfo: ...
class ExplanationOfBenefitDiagnosis: ...
class ExplanationOfBenefitProcedure: ...
class ExplanationOfBenefitInsurance: ...
class ExplanationOfBenefitAccident: ...
class ExplanationOfBenefitItem: ...
class ExplanationOfBenefitAddItem: ...
class ExplanationOfBenefitTotal: ...
class ExplanationOfBenefitPayment: ...
class ExplanationOfBenefitProcessNote: ...
class ExplanationOfBenefitBenefitBalance: ...

class PaymentReconciliationAllocation: ...
class PaymentReconciliationProcessNote: ...

Install with Tessl CLI

npx tessl i tessl/pypi-fhir--resources

docs

administrative-resources.md

clinical-resources.md

core-functions.md

data-types.md

financial-resources.md

index.md

patient-resources.md

serialization.md

version-support.md

tile.json