0
# Financial Resources
1
2
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.
3
4
## Capabilities
5
6
### Insurance Claims
7
8
Insurance claims for healthcare services including medical, dental, pharmacy, and vision claims.
9
10
```python { .api }
11
class Claim(DomainResource):
12
"""Healthcare insurance claim"""
13
def __init__(
14
self,
15
# Core claim data
16
identifier: Optional[List["Identifier"]] = None,
17
status: str, # active | cancelled | draft | entered-in-error
18
type: "CodeableConcept",
19
subType: Optional["CodeableConcept"] = None,
20
use: str, # claim | preauthorization | predetermination
21
patient: "Reference",
22
billablePeriod: Optional["Period"] = None,
23
created: str, # DateTime
24
enterer: Optional["Reference"] = None,
25
insurer: "Reference",
26
provider: "Reference",
27
priority: "CodeableConcept",
28
29
# Claim details
30
fundsReserve: Optional["CodeableConcept"] = None,
31
related: Optional[List["ClaimRelated"]] = None,
32
prescription: Optional["Reference"] = None,
33
originalPrescription: Optional["Reference"] = None,
34
payee: Optional["ClaimPayee"] = None,
35
referral: Optional["Reference"] = None,
36
encounter: Optional[List["Reference"]] = None,
37
facility: Optional["Reference"] = None,
38
39
# Care team and diagnosis
40
careTeam: Optional[List["ClaimCareTeam"]] = None,
41
supportingInfo: Optional[List["ClaimSupportingInfo"]] = None,
42
diagnosis: Optional[List["ClaimDiagnosis"]] = None,
43
procedure: Optional[List["ClaimProcedure"]] = None,
44
45
# Insurance and financial
46
insurance: List["ClaimInsurance"],
47
accident: Optional["ClaimAccident"] = None,
48
patientPaid: Optional["Money"] = None,
49
item: Optional[List["ClaimItem"]] = None,
50
total: Optional["Money"] = None,
51
52
**kwargs
53
): ...
54
55
class ClaimResponse(DomainResource):
56
"""Response to healthcare insurance claim"""
57
def __init__(
58
self,
59
# Core response data
60
identifier: Optional[List["Identifier"]] = None,
61
status: str, # active | cancelled | draft | entered-in-error
62
type: "CodeableConcept",
63
subType: Optional["CodeableConcept"] = None,
64
use: str, # claim | preauthorization | predetermination
65
patient: "Reference",
66
created: str, # DateTime
67
insurer: "Reference",
68
requestor: Optional["Reference"] = None,
69
request: Optional["Reference"] = None,
70
outcome: str, # queued | complete | error | partial
71
disposition: Optional[str] = None,
72
preAuthRef: Optional[str] = None,
73
preAuthPeriod: Optional["Period"] = None,
74
75
# Financial details
76
event: Optional[List["ClaimResponseEvent"]] = None,
77
payeeType: Optional["CodeableConcept"] = None,
78
encounter: Optional[List["Reference"]] = None,
79
diagnosisRelatedGroup: Optional["CodeableConcept"] = None,
80
item: Optional[List["ClaimResponseItem"]] = None,
81
addItem: Optional[List["ClaimResponseAddItem"]] = None,
82
total: Optional[List["ClaimResponseTotal"]] = None,
83
payment: Optional["ClaimResponsePayment"] = None,
84
85
# Processing notes and errors
86
fundsReserve: Optional["CodeableConcept"] = None,
87
formCode: Optional["CodeableConcept"] = None,
88
form: Optional["Attachment"] = None,
89
processNote: Optional[List["ClaimResponseProcessNote"]] = None,
90
communicationRequest: Optional[List["Reference"]] = None,
91
insurance: Optional[List["ClaimResponseInsurance"]] = None,
92
error: Optional[List["ClaimResponseError"]] = None,
93
94
**kwargs
95
): ...
96
```
97
98
**Usage Example:**
99
100
```python
101
from fhir.resources.claim import Claim
102
from fhir.resources.claiminsurance import ClaimInsurance
103
from fhir.resources.claimitem import ClaimItem
104
from fhir.resources.money import Money
105
from fhir.resources.codeableconcept import CodeableConcept
106
107
# Medical claim for office visit
108
claim = Claim(
109
status="active",
110
type=CodeableConcept(
111
coding=[Coding(
112
system="http://terminology.hl7.org/CodeSystem/claim-type",
113
code="institutional",
114
display="Institutional"
115
)]
116
),
117
use="claim",
118
patient=Reference(
119
reference="Patient/patient-001"
120
),
121
created="2024-01-15T10:00:00Z",
122
insurer=Reference(
123
reference="Organization/insurance-company-abc"
124
),
125
provider=Reference(
126
reference="Organization/general-hospital"
127
),
128
priority=CodeableConcept(
129
coding=[Coding(
130
system="http://terminology.hl7.org/CodeSystem/processpriority",
131
code="normal",
132
display="Normal"
133
)]
134
),
135
insurance=[
136
ClaimInsurance(
137
sequence=1,
138
focal=True,
139
coverage=Reference(
140
reference="Coverage/coverage-001"
141
)
142
)
143
],
144
item=[
145
ClaimItem(
146
sequence=1,
147
careTeamSequence=[1],
148
productOrService=CodeableConcept(
149
coding=[Coding(
150
system="http://www.ama-assn.org/go/cpt",
151
code="99213",
152
display="Office visit, established patient"
153
)]
154
),
155
servicedDate="2024-01-15",
156
unitPrice=Money(
157
value=150.00,
158
currency="USD"
159
),
160
net=Money(
161
value=150.00,
162
currency="USD"
163
)
164
)
165
],
166
total=Money(
167
value=150.00,
168
currency="USD"
169
)
170
)
171
```
172
173
### Insurance Coverage
174
175
Insurance coverage information including subscriber details, benefits, and coverage periods.
176
177
```python { .api }
178
class Coverage(DomainResource):
179
"""Insurance coverage information"""
180
def __init__(
181
self,
182
# Core coverage data
183
identifier: Optional[List["Identifier"]] = None,
184
status: str, # active | cancelled | draft | entered-in-error
185
kind: str, # insurance | self-pay | other
186
paymentBy: Optional[List["CoveragePaymentBy"]] = None,
187
type: Optional["CodeableConcept"] = None,
188
policyHolder: Optional["Reference"] = None,
189
subscriber: Optional["Reference"] = None,
190
subscriberId: Optional[List["Identifier"]] = None,
191
beneficiary: "Reference",
192
dependent: Optional[str] = None,
193
relationship: Optional["CodeableConcept"] = None,
194
195
# Coverage period and network
196
period: Optional["Period"] = None,
197
insurer: Optional["Reference"] = None,
198
class_: Optional[List["CoverageClass"]] = None,
199
order: Optional[int] = None,
200
network: Optional[str] = None,
201
202
# Cost sharing
203
costToBeneficiary: Optional[List["CoverageCostToBeneficiary"]] = None,
204
subrogation: Optional[bool] = None,
205
contract: Optional[List["Reference"]] = None,
206
207
**kwargs
208
): ...
209
210
class CoverageEligibilityRequest(DomainResource):
211
"""Request for coverage eligibility and benefits"""
212
def __init__(
213
self,
214
# Core request data
215
identifier: Optional[List["Identifier"]] = None,
216
status: str, # active | cancelled | draft | entered-in-error
217
priority: Optional["CodeableConcept"] = None,
218
purpose: List[str], # auth-requirements | benefits | discovery | validation
219
patient: "Reference",
220
event: Optional[List["CoverageEligibilityRequestEvent"]] = None,
221
servicedDate: Optional[str] = None, # Date
222
servicedPeriod: Optional["Period"] = None,
223
created: str, # DateTime
224
enterer: Optional["Reference"] = None,
225
provider: Optional["Reference"] = None,
226
insurer: "Reference",
227
facility: Optional["Reference"] = None,
228
229
# Supporting information
230
supportingInfo: Optional[List["CoverageEligibilityRequestSupportingInfo"]] = None,
231
insurance: Optional[List["CoverageEligibilityRequestInsurance"]] = None,
232
item: Optional[List["CoverageEligibilityRequestItem"]] = None,
233
234
**kwargs
235
): ...
236
237
class CoverageEligibilityResponse(DomainResource):
238
"""Response to coverage eligibility request"""
239
def __init__(
240
self,
241
# Core response data
242
identifier: Optional[List["Identifier"]] = None,
243
status: str, # active | cancelled | draft | entered-in-error
244
purpose: List[str], # auth-requirements | benefits | discovery | validation
245
patient: "Reference",
246
event: Optional[List["CoverageEligibilityResponseEvent"]] = None,
247
servicedDate: Optional[str] = None, # Date
248
servicedPeriod: Optional["Period"] = None,
249
created: str, # DateTime
250
requestor: Optional["Reference"] = None,
251
request: "Reference",
252
outcome: str, # queued | complete | error | partial
253
disposition: Optional[str] = None,
254
insurer: "Reference",
255
256
# Coverage and benefits information
257
insurance: Optional[List["CoverageEligibilityResponseInsurance"]] = None,
258
preAuthRef: Optional[str] = None,
259
form: Optional["CodeableConcept"] = None,
260
error: Optional[List["CoverageEligibilityResponseError"]] = None,
261
262
**kwargs
263
): ...
264
```
265
266
### Payment and Reconciliation
267
268
Payment notices, reconciliation, and explanation of benefits for financial transactions.
269
270
```python { .api }
271
class ExplanationOfBenefit(DomainResource):
272
"""Explanation of benefit for healthcare services"""
273
def __init__(
274
self,
275
# Core EOB data
276
identifier: Optional[List["Identifier"]] = None,
277
status: str, # active | cancelled | draft | entered-in-error
278
type: "CodeableConcept",
279
subType: Optional["CodeableConcept"] = None,
280
use: str, # claim | preauthorization | predetermination
281
patient: "Reference",
282
billablePeriod: Optional["Period"] = None,
283
created: str, # DateTime
284
enterer: Optional["Reference"] = None,
285
insurer: "Reference",
286
provider: "Reference",
287
288
# Claim reference and outcome
289
priority: Optional["CodeableConcept"] = None,
290
fundsReserveRequested: Optional["CodeableConcept"] = None,
291
fundsReserve: Optional["CodeableConcept"] = None,
292
related: Optional[List["ExplanationOfBenefitRelated"]] = None,
293
prescription: Optional["Reference"] = None,
294
originalPrescription: Optional["Reference"] = None,
295
event: Optional[List["ExplanationOfBenefitEvent"]] = None,
296
payee: Optional["ExplanationOfBenefitPayee"] = None,
297
referral: Optional["Reference"] = None,
298
encounter: Optional[List["Reference"]] = None,
299
facility: Optional["Reference"] = None,
300
claim: Optional["Reference"] = None,
301
claimResponse: Optional["Reference"] = None,
302
outcome: str, # queued | complete | error | partial
303
disposition: Optional[str] = None,
304
305
# Care team and diagnosis
306
careTeam: Optional[List["ExplanationOfBenefitCareTeam"]] = None,
307
supportingInfo: Optional[List["ExplanationOfBenefitSupportingInfo"]] = None,
308
diagnosis: Optional[List["ExplanationOfBenefitDiagnosis"]] = None,
309
procedure: Optional[List["ExplanationOfBenefitProcedure"]] = None,
310
311
# Financial details
312
precedence: Optional[int] = None,
313
insurance: List["ExplanationOfBenefitInsurance"],
314
accident: Optional["ExplanationOfBenefitAccident"] = None,
315
patientPaid: Optional["Money"] = None,
316
item: Optional[List["ExplanationOfBenefitItem"]] = None,
317
addItem: Optional[List["ExplanationOfBenefitAddItem"]] = None,
318
total: Optional[List["ExplanationOfBenefitTotal"]] = None,
319
payment: Optional["ExplanationOfBenefitPayment"] = None,
320
formCode: Optional["CodeableConcept"] = None,
321
form: Optional["Attachment"] = None,
322
processNote: Optional[List["ExplanationOfBenefitProcessNote"]] = None,
323
benefitPeriod: Optional["Period"] = None,
324
benefitBalance: Optional[List["ExplanationOfBenefitBenefitBalance"]] = None,
325
326
**kwargs
327
): ...
328
329
class PaymentNotice(DomainResource):
330
"""Payment notice"""
331
def __init__(
332
self,
333
# Core payment notice data
334
identifier: Optional[List["Identifier"]] = None,
335
status: str, # active | cancelled | draft | entered-in-error
336
request: Optional["Reference"] = None,
337
response: Optional["Reference"] = None,
338
created: str, # DateTime
339
reporter: Optional["Reference"] = None,
340
payment: Optional["Reference"] = None,
341
paymentDate: Optional[str] = None, # Date
342
payee: Optional["Reference"] = None,
343
recipient: "Reference",
344
amount: "Money",
345
346
# Payment status
347
paymentStatus: Optional["CodeableConcept"] = None,
348
349
**kwargs
350
): ...
351
352
class PaymentReconciliation(DomainResource):
353
"""Payment reconciliation"""
354
def __init__(
355
self,
356
# Core reconciliation data
357
identifier: Optional[List["Identifier"]] = None,
358
status: str, # active | cancelled | draft | entered-in-error
359
kind: Optional["CodeableConcept"] = None,
360
period: Optional["Period"] = None,
361
created: str, # DateTime
362
enterer: Optional["Reference"] = None,
363
issuerType: Optional["CodeableConcept"] = None,
364
paymentIssuer: Optional["Reference"] = None,
365
366
# Request and outcome
367
request: Optional["Reference"] = None,
368
requestor: Optional["Reference"] = None,
369
outcome: Optional[str] = None, # queued | complete | error | partial
370
disposition: Optional[str] = None,
371
date: str, # Date
372
location: Optional["Reference"] = None,
373
method: Optional["CodeableConcept"] = None,
374
cardBrand: Optional[str] = None,
375
accountNumber: Optional[str] = None,
376
expirationDate: Optional[str] = None, # Date
377
processor: Optional[str] = None,
378
referenceNumber: Optional[str] = None,
379
authorization: Optional[str] = None,
380
tenderedAmount: Optional["Money"] = None,
381
returnedAmount: Optional["Money"] = None,
382
amount: "Money",
383
384
# Payment details
385
paymentIdentifier: Optional["Identifier"] = None,
386
allocation: Optional[List["PaymentReconciliationAllocation"]] = None,
387
formCode: Optional["CodeableConcept"] = None,
388
processNote: Optional[List["PaymentReconciliationProcessNote"]] = None,
389
390
**kwargs
391
): ...
392
```
393
394
## Types
395
396
```python { .api }
397
from typing import Optional, List
398
from fhir.resources.domainresource import DomainResource
399
from fhir.resources.money import Money
400
401
# Financial resource backbone elements
402
class ClaimRelated: ...
403
class ClaimPayee: ...
404
class ClaimCareTeam: ...
405
class ClaimSupportingInfo: ...
406
class ClaimDiagnosis: ...
407
class ClaimProcedure: ...
408
class ClaimInsurance: ...
409
class ClaimAccident: ...
410
class ClaimItem: ...
411
412
class ClaimResponseEvent: ...
413
class ClaimResponseItem: ...
414
class ClaimResponseAddItem: ...
415
class ClaimResponseTotal: ...
416
class ClaimResponsePayment: ...
417
class ClaimResponseProcessNote: ...
418
class ClaimResponseInsurance: ...
419
class ClaimResponseError: ...
420
421
class CoveragePaymentBy: ...
422
class CoverageClass: ...
423
class CoverageCostToBeneficiary: ...
424
425
class CoverageEligibilityRequestEvent: ...
426
class CoverageEligibilityRequestSupportingInfo: ...
427
class CoverageEligibilityRequestInsurance: ...
428
class CoverageEligibilityRequestItem: ...
429
430
class CoverageEligibilityResponseEvent: ...
431
class CoverageEligibilityResponseInsurance: ...
432
class CoverageEligibilityResponseError: ...
433
434
class ExplanationOfBenefitRelated: ...
435
class ExplanationOfBenefitEvent: ...
436
class ExplanationOfBenefitPayee: ...
437
class ExplanationOfBenefitCareTeam: ...
438
class ExplanationOfBenefitSupportingInfo: ...
439
class ExplanationOfBenefitDiagnosis: ...
440
class ExplanationOfBenefitProcedure: ...
441
class ExplanationOfBenefitInsurance: ...
442
class ExplanationOfBenefitAccident: ...
443
class ExplanationOfBenefitItem: ...
444
class ExplanationOfBenefitAddItem: ...
445
class ExplanationOfBenefitTotal: ...
446
class ExplanationOfBenefitPayment: ...
447
class ExplanationOfBenefitProcessNote: ...
448
class ExplanationOfBenefitBenefitBalance: ...
449
450
class PaymentReconciliationAllocation: ...
451
class PaymentReconciliationProcessNote: ...
452
```