R6 Ballot (2nd Draft)

Publish-box (todo)

13.1 Resource Coverage - Content

Financial Management icon Work GroupMaturity Level: 4 Trial UseSecurity Category: Patient Compartments: Patient, RelatedPerson

Financial instrument which may be used to reimburse or pay for health care products and services. Includes both insurance and self-payment.

The Coverage resource is intended to provide the high-level identifiers and descriptors of an insurance plan, typically the information which would appear on an insurance card, which may be used to pay, in part or in whole, for the provision of health care products and services.

This resource may also be used to register 'SelfPay' where an individual or organization other than an insurer is taking responsibility for payment for a portion of the health care costs. Selfpay should not be confused with being a guarantor of the patient's account.

The Coverage resource is a "event" resource from a FHIR workflow perspective - see Workflow Request.

The eClaim domain includes a number of related insurance resources

Coverage The Coverage resource is intended to provide the high-level identifiers and descriptors of a specific insurance plan for a specific individual - essentially the insurance card information. This may alternately provide the individual or organization, selfpay, which will pay for products and services rendered.
Contract A Contract resource holds the references to parties who have entered into an agreement of some type, the parties who may sign or witness such an agreement, descriptors of the type of agreement and even the actual text or executable copy of the agreement. The agreement may be of a variety of types including service contracts, insurance contracts, directives, etc. The contract may be either definitional or actual instances.
InsurancePlan The InsurancePlan resource holds the definition of an insurance plan which an insurer may offer to potential clients through insurance brokers or an online insurance marketplace. This is only the plan definition and does not contain or reference a list of individuals who have purchased the plan.
TODO: Do we need to reference the InsuranceProduct here instead?

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Coverage TU DomainResource Insurance or medical plan or a payment agreement

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ 0..* Identifier Business identifier(s) for this coverage

... status ?!Σ 1..1 code active | cancelled | draft | entered-in-error
Binding: Financial Resource Status Codes (Required)
... kind Σ 1..1 code insurance | self-pay | other
Binding: Kind (Required)
.... party Σ 1..1 Reference(Patient | RelatedPerson | Organization) Parties performing self-payment
.... responsibility Σ 0..1 string Party's responsibility
... type Σ 0..1 CodeableConcept Coverage category such as medical or accident
Binding: Coverage Type and Self-Pay Codes (Preferred)
... policyHolder Σ 0..1 Reference(Patient | RelatedPerson | Organization) Owner of the policy
... subscriber Σ 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... subscriberId Σ 0..* Identifier ID assigned to the subscriber

... beneficiary Σ 1..1 Reference(Patient) Plan beneficiary
... dependent Σ 0..1 string Dependent number
... relationship 0..1 CodeableConcept Beneficiary relationship to the subscriber
Binding: SubscriberPolicyholder Relationship Codes (Extensible)
... period Σ 0..1 Period Coverage start and end dates
... insurer Σ 0..1 Reference(Organization) Issuer of the policy
... class 0..* BackboneElement Additional coverage classifications

.... type Σ 1..1 CodeableConcept Type of class such as 'group' or 'plan'
Binding: Coverage Class Codes (Extensible)
.... value Σ 1..1 Identifier Value associated with the type
.... name Σ 0..1 string Human readable description of the type and value
... order Σ 0..1 positiveInt Relative order of the coverage
... network Σ 0..1 string Insurer network
... costToBeneficiary 0..* BackboneElement Patient payments for services/products

.... type Σ 0..1 CodeableConcept Cost category
Binding: Coverage Copay Type Codes (Extensible)
.... category 0..1 CodeableConcept Benefit classification
Binding: Benefit Category Codes (Example)
.... network 0..1 CodeableConcept In or out of network
Binding: Network Type Codes (Example)
.... unit 0..1 CodeableConcept Individual or family
Binding: Unit Type Codes (Example)
.... term 0..1 CodeableConcept Annual or lifetime
Binding: Benefit Term Codes (Example)
.... value[x] Σ 0..1 The amount or percentage due from the beneficiary
..... valueQuantity SimpleQuantity
..... valueMoney Money
.... exception 0..* BackboneElement Exceptions for patient payments

..... type Σ 1..1 CodeableConcept Exception category
Binding: Example Coverage Financial Exception Codes (Example)
..... period Σ 0..1 Period The effective period of the exception
... subrogation 0..1 boolean Reimbursement to insurer
... contract 0..* Reference(Contract) Contract details

... insurancePlan 0..1 Reference(InsurancePlan) Insurance plan details

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Coverage (DomainResource)The identifier of the coverage as issued by the insureridentifier : Identifier [0..*]The status of the resource instance (this element modifies the meaning of other elements)status : code [1..1] « null (Strength=Required)FinancialResourceStatusCodes! »The nature of the coverage be it insurance, or cash payment such as self-paykind : code [1..1] « null (Strength=Required)Kind! »The type of coverage: social program, medical plan, accident coverage (workers compensation, auto), group health or payment by an individual or organizationtype : CodeableConcept [0..1] « null (Strength=Preferred)CoverageTypeAndSelfPayCodes? »The party who 'owns' the insurance policypolicyHolder : Reference [0..1] « Patient|RelatedPerson|Organization »The party who has signed-up for or 'owns' the contractual relationship to the policy or to whom the benefit of the policy for services rendered to them or their family is duesubscriber : Reference [0..1] « Patient|RelatedPerson »The insurer assigned ID for the SubscribersubscriberId : Identifier [0..*]The party who benefits from the insurance coverage; the patient when products and/or services are providedbeneficiary : Reference [1..1] « Patient »A designator for a dependent under the coveragedependent : string [0..1]The relationship of beneficiary (patient) to the subscriberrelationship : CodeableConcept [0..1] « null (Strength=Extensible)SubscriberRelationshipCodes+ »Time period during which the coverage is in force. A missing start date indicates the start date isn't known, a missing end date means the coverage is continuing to be in forceperiod : Period [0..1]The program or plan underwriter, payor, insurance companyinsurer : Reference [0..1] « Organization »The order of applicability of this coverage relative to other coverages which are currently in force. Note, there may be gaps in the numbering and this does not imply primary, secondary etc. as the specific positioning of coverages depends upon the episode of care. For example; a patient might have (0) auto insurance (1) their own health insurance and (2) spouse's health insurance. When claiming for treatments which were not the result of an auto accident then only coverages (1) and (2) above would be applicatble and would apply in the order specified in parenthesisorder : positiveInt [0..1]The insurer-specific identifier for the insurer-defined network of providers to which the beneficiary may seek treatment which will be covered at the 'in-network' rate, otherwise 'out of network' terms and conditions applynetwork : string [0..1]When 'subrogation=true' this insurance instance has been included not for adjudication but to provide insurers with the details to recover costssubrogation : boolean [0..1]The policy(s) which constitute this insurance coveragecontract : Reference [0..*] « Contract »The insurance plan details, benefits and costs, which constitute this insurance coverageinsurancePlan : Reference [0..1] « InsurancePlan »PaymentByThe list of parties providing non-insurance payment for the treatment costsparty : Reference [1..1] « Patient|RelatedPerson|Organization » Description of the financial responsibilityresponsibility : string [0..1]ClassThe type of classification for which an insurer-specific class label or number and optional name is provided. For example, type may be used to identify a class of coverage or employer group, policy, or plantype : CodeableConcept [1..1] « null (Strength=Extensible)CoverageClassCodes+ »The alphanumeric identifier associated with the insurer issued labelvalue : Identifier [1..1]A short description for the classname : string [0..1]CostToBeneficiaryThe category of patient centric costs associated with treatmenttype : CodeableConcept [0..1] « null (Strength=Extensible)CoverageCopayTypeCodes+ »Code to identify the general type of benefits under which products and services are providedcategory : CodeableConcept [0..1] « null (Strength=Example)BenefitCategoryCodes?? »Is a flag to indicate whether the benefits refer to in-network providers or out-of-network providersnetwork : CodeableConcept [0..1] « null (Strength=Example)NetworkTypeCodes?? »Indicates if the benefits apply to an individual or to the familyunit : CodeableConcept [0..1] « null (Strength=Example)UnitTypeCodes?? »The term or period of the values such as 'maximum lifetime benefit' or 'maximum annual visits'term : CodeableConcept [0..1] « null (Strength=Example)BenefitTermCodes?? »The amount due from the patient for the cost categoryvalue[x] : DataType [0..1] « Quantity(SimpleQuantity)|Money »ExemptionThe code for the specific exceptiontype : CodeableConcept [1..1] « null (Strength=Example)ExampleCoverageFinancialExcep...?? »The timeframe the exception is in forceperiod : Period [0..1]Link to the paying party and optionally what specifically they will be responsible to paypaymentBy[0..*]A suite of underwriter specific classifiersclass[0..*]A suite of codes indicating exceptions or reductions to patient costs and their effective periodsexception[0..*]A suite of codes indicating the cost category and associated amount which have been detailed in the policy and may have been included on the health cardcostToBeneficiary[0..*]

XML Template

<Coverage xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifier(s) for this coverage --></identifier>
 <status value="[code]"/><!-- 1..1 active | cancelled | draft | entered-in-error -->
 <kind value="[code]"/><!-- 1..1 insurance | self-pay | other -->
 <paymentBy>  <!-- 0..* Self-pay parties and responsibility -->
  <party><!-- 1..1 Reference(Organization|Patient|RelatedPerson) Parties performing self-payment --></party>
  <responsibility value="[string]"/><!-- 0..1 Party's responsibility -->
 </paymentBy>
 <type><!-- 0..1 CodeableConcept Coverage category such as medical or accident --></type>
 <policyHolder><!-- 0..1 Reference(Organization|Patient|RelatedPerson) Owner of the policy --></policyHolder>
 <subscriber><!-- 0..1 Reference(Patient|RelatedPerson) Subscriber to the policy --></subscriber>
 <subscriberId><!-- 0..* Identifier ID assigned to the subscriber --></subscriberId>
 <beneficiary><!-- 1..1 Reference(Patient) Plan beneficiary --></beneficiary>
 <dependent value="[string]"/><!-- 0..1 Dependent number -->
 <relationship><!-- 0..1 CodeableConcept Beneficiary relationship to the subscriber --></relationship>
 <period><!-- 0..1 Period Coverage start and end dates --></period>
 <insurer><!-- 0..1 Reference(Organization) Issuer of the policy --></insurer>
 <class>  <!-- 0..* Additional coverage classifications -->
  <type><!-- 1..1 CodeableConcept Type of class such as 'group' or 'plan' --></type>
  <value><!-- 1..1 Identifier Value associated with the type --></value>
  <name value="[string]"/><!-- 0..1 Human readable description of the type and value -->
 </class>
 <order value="[positiveInt]"/><!-- 0..1 Relative order of the coverage -->
 <network value="[string]"/><!-- 0..1 Insurer network -->
 <costToBeneficiary>  <!-- 0..* Patient payments for services/products -->
  <type><!-- 0..1 CodeableConcept Cost category --></type>
  <category><!-- 0..1 CodeableConcept Benefit classification --></category>
  <network><!-- 0..1 CodeableConcept In or out of network --></network>
  <unit><!-- 0..1 CodeableConcept Individual or family --></unit>
  <term><!-- 0..1 CodeableConcept Annual or lifetime --></term>
  <value[x]><!-- 0..1 Quantity(SimpleQuantity)|Money The amount or percentage due from the beneficiary --></value[x]>
  <exception>  <!-- 0..* Exceptions for patient payments -->
   <type><!-- 1..1 CodeableConcept Exception category --></type>
   <period><!-- 0..1 Period The effective period of the exception --></period>
  </exception>
 </costToBeneficiary>
 <subrogation value="[boolean]"/><!-- 0..1 Reimbursement to insurer -->
 <contract><!-- 0..* Reference(Contract) Contract details --></contract>
 <insurancePlan><!-- 0..1 Reference(InsurancePlan) Insurance plan details --></insurancePlan>
</Coverage>

JSON Template

{doco
  "resourceType" : "Coverage",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifier(s) for this coverage
  "status" : "<code>", // R!  active | cancelled | draft | entered-in-error
  "kind" : "<code>", // R!  insurance | self-pay | other
  "paymentBy" : [{ // Self-pay parties and responsibility
    "party" : { Reference(Organization|Patient|RelatedPerson) }, // R!  Parties performing self-payment
    "responsibility" : "<string>" // Party's responsibility
  }],
  "type" : { CodeableConcept }, // Coverage category such as medical or accident
  "policyHolder" : { Reference(Organization|Patient|RelatedPerson) }, // Owner of the policy
  "subscriber" : { Reference(Patient|RelatedPerson) }, // Subscriber to the policy
  "subscriberId" : [{ Identifier }], // ID assigned to the subscriber
  "beneficiary" : { Reference(Patient) }, // R!  Plan beneficiary
  "dependent" : "<string>", // Dependent number
  "relationship" : { CodeableConcept }, // Beneficiary relationship to the subscriber
  "period" : { Period }, // Coverage start and end dates
  "insurer" : { Reference(Organization) }, // Issuer of the policy
  "class" : [{ // Additional coverage classifications
    "type" : { CodeableConcept }, // R!  Type of class such as 'group' or 'plan'
    "value" : { Identifier }, // R!  Value associated with the type
    "name" : "<string>" // Human readable description of the type and value
  }],
  "order" : "<positiveInt>", // Relative order of the coverage
  "network" : "<string>", // Insurer network
  "costToBeneficiary" : [{ // Patient payments for services/products
    "type" : { CodeableConcept }, // Cost category
    "category" : { CodeableConcept }, // Benefit classification
    "network" : { CodeableConcept }, // In or out of network
    "unit" : { CodeableConcept }, // Individual or family
    "term" : { CodeableConcept }, // Annual or lifetime
    // value[x]: The amount or percentage due from the beneficiary. One of these 2:
    "valueQuantity" : { Quantity(SimpleQuantity) },
    "valueMoney" : { Money },
    "exception" : [{ // Exceptions for patient payments
      "type" : { CodeableConcept }, // R!  Exception category
      "period" : { Period } // The effective period of the exception
    }]
  }],
  "subrogation" : <boolean>, // Reimbursement to insurer
  "contract" : [{ Reference(Contract) }], // Contract details
  "insurancePlan" : { Reference(InsurancePlan) } // Insurance plan details
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Coverage;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Business identifier(s) for this coverage
  fhir:status [ code ] ; # 1..1 active | cancelled | draft | entered-in-error
  fhir:kind [ code ] ; # 1..1 insurance | self-pay | other
  fhir:paymentBy ( [ # 0..* Self-pay parties and responsibility
    fhir:party [ Reference(Organization|Patient|RelatedPerson) ] ; # 1..1 Parties performing self-payment
    fhir:responsibility [ string ] ; # 0..1 Party's responsibility
  ] ... ) ;
  fhir:type [ CodeableConcept ] ; # 0..1 Coverage category such as medical or accident
  fhir:policyHolder [ Reference(Organization|Patient|RelatedPerson) ] ; # 0..1 Owner of the policy
  fhir:subscriber [ Reference(Patient|RelatedPerson) ] ; # 0..1 Subscriber to the policy
  fhir:subscriberId  ( [ Identifier ] ... ) ; # 0..* ID assigned to the subscriber
  fhir:beneficiary [ Reference(Patient) ] ; # 1..1 Plan beneficiary
  fhir:dependent [ string ] ; # 0..1 Dependent number
  fhir:relationship [ CodeableConcept ] ; # 0..1 Beneficiary relationship to the subscriber
  fhir:period [ Period ] ; # 0..1 Coverage start and end dates
  fhir:insurer [ Reference(Organization) ] ; # 0..1 Issuer of the policy
  fhir:class ( [ # 0..* Additional coverage classifications
    fhir:type [ CodeableConcept ] ; # 1..1 Type of class such as 'group' or 'plan'
    fhir:value [ Identifier ] ; # 1..1 Value associated with the type
    fhir:name [ string ] ; # 0..1 Human readable description of the type and value
  ] ... ) ;
  fhir:order [ positiveInt ] ; # 0..1 Relative order of the coverage
  fhir:network [ string ] ; # 0..1 Insurer network
  fhir:costToBeneficiary ( [ # 0..* Patient payments for services/products
    fhir:type [ CodeableConcept ] ; # 0..1 Cost category
    fhir:category [ CodeableConcept ] ; # 0..1 Benefit classification
    fhir:network [ CodeableConcept ] ; # 0..1 In or out of network
    fhir:unit [ CodeableConcept ] ; # 0..1 Individual or family
    fhir:term [ CodeableConcept ] ; # 0..1 Annual or lifetime
    # value[x] : 0..1 The amount or percentage due from the beneficiary. One of these 2
      fhir:value [  a fhir:SimpleQuantity ; Quantity(SimpleQuantity) ]
      fhir:value [  a fhir:Money ; Money ]
    fhir:exception ( [ # 0..* Exceptions for patient payments
      fhir:type [ CodeableConcept ] ; # 1..1 Exception category
      fhir:period [ Period ] ; # 0..1 The effective period of the exception
    ] ... ) ;
  ] ... ) ;
  fhir:subrogation [ boolean ] ; # 0..1 Reimbursement to insurer
  fhir:contract  ( [ Reference(Contract) ] ... ) ; # 0..* Contract details
  fhir:insurancePlan [ Reference(InsurancePlan) ] ; # 0..1 Insurance plan details
]

Changes from both R4 and R4B

Coverage
Coverage.kind
  • Added Mandatory Element
Coverage.paymentBy
  • Added Element
Coverage.paymentBy.party
  • Added Mandatory Element
Coverage.paymentBy.responsibility
  • Added Element
Coverage.subscriberId
  • Max Cardinality changed from 1 to *
  • Type changed from string to Identifier
Coverage.insurer
  • Added Element
Coverage.class.value
  • Type changed from string to Identifier
Coverage.costToBeneficiary.category
  • Added Element
Coverage.costToBeneficiary.network
  • Added Element
Coverage.costToBeneficiary.unit
  • Added Element
Coverage.costToBeneficiary.term
  • Added Element
Coverage.costToBeneficiary.value[x]
  • Min Cardinality changed from 1 to 0
Coverage.insurancePlan
  • Added Element
Coverage.payor
  • Deleted

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Coverage TU DomainResource Insurance or medical plan or a payment agreement

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ 0..* Identifier Business identifier(s) for this coverage

... status ?!Σ 1..1 code active | cancelled | draft | entered-in-error
Binding: Financial Resource Status Codes (Required)
... kind Σ 1..1 code insurance | self-pay | other
Binding: Kind (Required)
.... party Σ 1..1 Reference(Patient | RelatedPerson | Organization) Parties performing self-payment
.... responsibility Σ 0..1 string Party's responsibility
... type Σ 0..1 CodeableConcept Coverage category such as medical or accident
Binding: Coverage Type and Self-Pay Codes (Preferred)
... policyHolder Σ 0..1 Reference(Patient | RelatedPerson | Organization) Owner of the policy
... subscriber Σ 0..1 Reference(Patient | RelatedPerson) Subscriber to the policy
... subscriberId Σ 0..* Identifier ID assigned to the subscriber

... beneficiary Σ 1..1 Reference(Patient) Plan beneficiary
... dependent Σ 0..1 string Dependent number
... relationship 0..1 CodeableConcept Beneficiary relationship to the subscriber
Binding: SubscriberPolicyholder Relationship Codes (Extensible)
... period Σ 0..1 Period Coverage start and end dates
... insurer Σ 0..1 Reference(Organization) Issuer of the policy
... class 0..* BackboneElement Additional coverage classifications

.... type Σ 1..1 CodeableConcept Type of class such as 'group' or 'plan'
Binding: Coverage Class Codes (Extensible)
.... value Σ 1..1 Identifier Value associated with the type
.... name Σ 0..1 string Human readable description of the type and value
... order Σ 0..1 positiveInt Relative order of the coverage
... network Σ 0..1 string Insurer network
... costToBeneficiary 0..* BackboneElement Patient payments for services/products

.... type Σ 0..1 CodeableConcept Cost category
Binding: Coverage Copay Type Codes (Extensible)
.... category 0..1 CodeableConcept Benefit classification
Binding: Benefit Category Codes (Example)
.... network 0..1 CodeableConcept In or out of network
Binding: Network Type Codes (Example)
.... unit 0..1 CodeableConcept Individual or family
Binding: Unit Type Codes (Example)
.... term 0..1 CodeableConcept Annual or lifetime
Binding: Benefit Term Codes (Example)
.... value[x] Σ 0..1 The amount or percentage due from the beneficiary
..... valueQuantity SimpleQuantity
..... valueMoney Money
.... exception 0..* BackboneElement Exceptions for patient payments

..... type Σ 1..1 CodeableConcept Exception category
Binding: Example Coverage Financial Exception Codes (Example)
..... period Σ 0..1 Period The effective period of the exception
... subrogation 0..1 boolean Reimbursement to insurer
... contract 0..* Reference(Contract) Contract details

... insurancePlan 0..1 Reference(InsurancePlan) Insurance plan details

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Coverage (DomainResource)The identifier of the coverage as issued by the insureridentifier : Identifier [0..*]The status of the resource instance (this element modifies the meaning of other elements)status : code [1..1] « null (Strength=Required)FinancialResourceStatusCodes! »The nature of the coverage be it insurance, or cash payment such as self-paykind : code [1..1] « null (Strength=Required)Kind! »The type of coverage: social program, medical plan, accident coverage (workers compensation, auto), group health or payment by an individual or organizationtype : CodeableConcept [0..1] « null (Strength=Preferred)CoverageTypeAndSelfPayCodes? »The party who 'owns' the insurance policypolicyHolder : Reference [0..1] « Patient|RelatedPerson|Organization »The party who has signed-up for or 'owns' the contractual relationship to the policy or to whom the benefit of the policy for services rendered to them or their family is duesubscriber : Reference [0..1] « Patient|RelatedPerson »The insurer assigned ID for the SubscribersubscriberId : Identifier [0..*]The party who benefits from the insurance coverage; the patient when products and/or services are providedbeneficiary : Reference [1..1] « Patient »A designator for a dependent under the coveragedependent : string [0..1]The relationship of beneficiary (patient) to the subscriberrelationship : CodeableConcept [0..1] « null (Strength=Extensible)SubscriberRelationshipCodes+ »Time period during which the coverage is in force. A missing start date indicates the start date isn't known, a missing end date means the coverage is continuing to be in forceperiod : Period [0..1]The program or plan underwriter, payor, insurance companyinsurer : Reference [0..1] « Organization »The order of applicability of this coverage relative to other coverages which are currently in force. Note, there may be gaps in the numbering and this does not imply primary, secondary etc. as the specific positioning of coverages depends upon the episode of care. For example; a patient might have (0) auto insurance (1) their own health insurance and (2) spouse's health insurance. When claiming for treatments which were not the result of an auto accident then only coverages (1) and (2) above would be applicatble and would apply in the order specified in parenthesisorder : positiveInt [0..1]The insurer-specific identifier for the insurer-defined network of providers to which the beneficiary may seek treatment which will be covered at the 'in-network' rate, otherwise 'out of network' terms and conditions applynetwork : string [0..1]When 'subrogation=true' this insurance instance has been included not for adjudication but to provide insurers with the details to recover costssubrogation : boolean [0..1]The policy(s) which constitute this insurance coveragecontract : Reference [0..*] « Contract »The insurance plan details, benefits and costs, which constitute this insurance coverageinsurancePlan : Reference [0..1] « InsurancePlan »PaymentByThe list of parties providing non-insurance payment for the treatment costsparty : Reference [1..1] « Patient|RelatedPerson|Organization » Description of the financial responsibilityresponsibility : string [0..1]ClassThe type of classification for which an insurer-specific class label or number and optional name is provided. For example, type may be used to identify a class of coverage or employer group, policy, or plantype : CodeableConcept [1..1] « null (Strength=Extensible)CoverageClassCodes+ »The alphanumeric identifier associated with the insurer issued labelvalue : Identifier [1..1]A short description for the classname : string [0..1]CostToBeneficiaryThe category of patient centric costs associated with treatmenttype : CodeableConcept [0..1] « null (Strength=Extensible)CoverageCopayTypeCodes+ »Code to identify the general type of benefits under which products and services are providedcategory : CodeableConcept [0..1] « null (Strength=Example)BenefitCategoryCodes?? »Is a flag to indicate whether the benefits refer to in-network providers or out-of-network providersnetwork : CodeableConcept [0..1] « null (Strength=Example)NetworkTypeCodes?? »Indicates if the benefits apply to an individual or to the familyunit : CodeableConcept [0..1] « null (Strength=Example)UnitTypeCodes?? »The term or period of the values such as 'maximum lifetime benefit' or 'maximum annual visits'term : CodeableConcept [0..1] « null (Strength=Example)BenefitTermCodes?? »The amount due from the patient for the cost categoryvalue[x] : DataType [0..1] « Quantity(SimpleQuantity)|Money »ExemptionThe code for the specific exceptiontype : CodeableConcept [1..1] « null (Strength=Example)ExampleCoverageFinancialExcep...?? »The timeframe the exception is in forceperiod : Period [0..1]Link to the paying party and optionally what specifically they will be responsible to paypaymentBy[0..*]A suite of underwriter specific classifiersclass[0..*]A suite of codes indicating exceptions or reductions to patient costs and their effective periodsexception[0..*]A suite of codes indicating the cost category and associated amount which have been detailed in the policy and may have been included on the health cardcostToBeneficiary[0..*]

XML Template

<Coverage xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifier(s) for this coverage --></identifier>
 <status value="[code]"/><!-- 1..1 active | cancelled | draft | entered-in-error -->
 <kind value="[code]"/><!-- 1..1 insurance | self-pay | other -->
 <paymentBy>  <!-- 0..* Self-pay parties and responsibility -->
  <party><!-- 1..1 Reference(Organization|Patient|RelatedPerson) Parties performing self-payment --></party>
  <responsibility value="[string]"/><!-- 0..1 Party's responsibility -->
 </paymentBy>
 <type><!-- 0..1 CodeableConcept Coverage category such as medical or accident --></type>
 <policyHolder><!-- 0..1 Reference(Organization|Patient|RelatedPerson) Owner of the policy --></policyHolder>
 <subscriber><!-- 0..1 Reference(Patient|RelatedPerson) Subscriber to the policy --></subscriber>
 <subscriberId><!-- 0..* Identifier ID assigned to the subscriber --></subscriberId>
 <beneficiary><!-- 1..1 Reference(Patient) Plan beneficiary --></beneficiary>
 <dependent value="[string]"/><!-- 0..1 Dependent number -->
 <relationship><!-- 0..1 CodeableConcept Beneficiary relationship to the subscriber --></relationship>
 <period><!-- 0..1 Period Coverage start and end dates --></period>
 <insurer><!-- 0..1 Reference(Organization) Issuer of the policy --></insurer>
 <class>  <!-- 0..* Additional coverage classifications -->
  <type><!-- 1..1 CodeableConcept Type of class such as 'group' or 'plan' --></type>
  <value><!-- 1..1 Identifier Value associated with the type --></value>
  <name value="[string]"/><!-- 0..1 Human readable description of the type and value -->
 </class>
 <order value="[positiveInt]"/><!-- 0..1 Relative order of the coverage -->
 <network value="[string]"/><!-- 0..1 Insurer network -->
 <costToBeneficiary>  <!-- 0..* Patient payments for services/products -->
  <type><!-- 0..1 CodeableConcept Cost category --></type>
  <category><!-- 0..1 CodeableConcept Benefit classification --></category>
  <network><!-- 0..1 CodeableConcept In or out of network --></network>
  <unit><!-- 0..1 CodeableConcept Individual or family --></unit>
  <term><!-- 0..1 CodeableConcept Annual or lifetime --></term>
  <value[x]><!-- 0..1 Quantity(SimpleQuantity)|Money The amount or percentage due from the beneficiary --></value[x]>
  <exception>  <!-- 0..* Exceptions for patient payments -->
   <type><!-- 1..1 CodeableConcept Exception category --></type>
   <period><!-- 0..1 Period The effective period of the exception --></period>
  </exception>
 </costToBeneficiary>
 <subrogation value="[boolean]"/><!-- 0..1 Reimbursement to insurer -->
 <contract><!-- 0..* Reference(Contract) Contract details --></contract>
 <insurancePlan><!-- 0..1 Reference(InsurancePlan) Insurance plan details --></insurancePlan>
</Coverage>

JSON Template

{doco
  "resourceType" : "Coverage",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifier(s) for this coverage
  "status" : "<code>", // R!  active | cancelled | draft | entered-in-error
  "kind" : "<code>", // R!  insurance | self-pay | other
  "paymentBy" : [{ // Self-pay parties and responsibility
    "party" : { Reference(Organization|Patient|RelatedPerson) }, // R!  Parties performing self-payment
    "responsibility" : "<string>" // Party's responsibility
  }],
  "type" : { CodeableConcept }, // Coverage category such as medical or accident
  "policyHolder" : { Reference(Organization|Patient|RelatedPerson) }, // Owner of the policy
  "subscriber" : { Reference(Patient|RelatedPerson) }, // Subscriber to the policy
  "subscriberId" : [{ Identifier }], // ID assigned to the subscriber
  "beneficiary" : { Reference(Patient) }, // R!  Plan beneficiary
  "dependent" : "<string>", // Dependent number
  "relationship" : { CodeableConcept }, // Beneficiary relationship to the subscriber
  "period" : { Period }, // Coverage start and end dates
  "insurer" : { Reference(Organization) }, // Issuer of the policy
  "class" : [{ // Additional coverage classifications
    "type" : { CodeableConcept }, // R!  Type of class such as 'group' or 'plan'
    "value" : { Identifier }, // R!  Value associated with the type
    "name" : "<string>" // Human readable description of the type and value
  }],
  "order" : "<positiveInt>", // Relative order of the coverage
  "network" : "<string>", // Insurer network
  "costToBeneficiary" : [{ // Patient payments for services/products
    "type" : { CodeableConcept }, // Cost category
    "category" : { CodeableConcept }, // Benefit classification
    "network" : { CodeableConcept }, // In or out of network
    "unit" : { CodeableConcept }, // Individual or family
    "term" : { CodeableConcept }, // Annual or lifetime
    // value[x]: The amount or percentage due from the beneficiary. One of these 2:
    "valueQuantity" : { Quantity(SimpleQuantity) },
    "valueMoney" : { Money },
    "exception" : [{ // Exceptions for patient payments
      "type" : { CodeableConcept }, // R!  Exception category
      "period" : { Period } // The effective period of the exception
    }]
  }],
  "subrogation" : <boolean>, // Reimbursement to insurer
  "contract" : [{ Reference(Contract) }], // Contract details
  "insurancePlan" : { Reference(InsurancePlan) } // Insurance plan details
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:Coverage;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Business identifier(s) for this coverage
  fhir:status [ code ] ; # 1..1 active | cancelled | draft | entered-in-error
  fhir:kind [ code ] ; # 1..1 insurance | self-pay | other
  fhir:paymentBy ( [ # 0..* Self-pay parties and responsibility
    fhir:party [ Reference(Organization|Patient|RelatedPerson) ] ; # 1..1 Parties performing self-payment
    fhir:responsibility [ string ] ; # 0..1 Party's responsibility
  ] ... ) ;
  fhir:type [ CodeableConcept ] ; # 0..1 Coverage category such as medical or accident
  fhir:policyHolder [ Reference(Organization|Patient|RelatedPerson) ] ; # 0..1 Owner of the policy
  fhir:subscriber [ Reference(Patient|RelatedPerson) ] ; # 0..1 Subscriber to the policy
  fhir:subscriberId  ( [ Identifier ] ... ) ; # 0..* ID assigned to the subscriber
  fhir:beneficiary [ Reference(Patient) ] ; # 1..1 Plan beneficiary
  fhir:dependent [ string ] ; # 0..1 Dependent number
  fhir:relationship [ CodeableConcept ] ; # 0..1 Beneficiary relationship to the subscriber
  fhir:period [ Period ] ; # 0..1 Coverage start and end dates
  fhir:insurer [ Reference(Organization) ] ; # 0..1 Issuer of the policy
  fhir:class ( [ # 0..* Additional coverage classifications
    fhir:type [ CodeableConcept ] ; # 1..1 Type of class such as 'group' or 'plan'
    fhir:value [ Identifier ] ; # 1..1 Value associated with the type
    fhir:name [ string ] ; # 0..1 Human readable description of the type and value
  ] ... ) ;
  fhir:order [ positiveInt ] ; # 0..1 Relative order of the coverage
  fhir:network [ string ] ; # 0..1 Insurer network
  fhir:costToBeneficiary ( [ # 0..* Patient payments for services/products
    fhir:type [ CodeableConcept ] ; # 0..1 Cost category
    fhir:category [ CodeableConcept ] ; # 0..1 Benefit classification
    fhir:network [ CodeableConcept ] ; # 0..1 In or out of network
    fhir:unit [ CodeableConcept ] ; # 0..1 Individual or family
    fhir:term [ CodeableConcept ] ; # 0..1 Annual or lifetime
    # value[x] : 0..1 The amount or percentage due from the beneficiary. One of these 2
      fhir:value [  a fhir:SimpleQuantity ; Quantity(SimpleQuantity) ]
      fhir:value [  a fhir:Money ; Money ]
    fhir:exception ( [ # 0..* Exceptions for patient payments
      fhir:type [ CodeableConcept ] ; # 1..1 Exception category
      fhir:period [ Period ] ; # 0..1 The effective period of the exception
    ] ... ) ;
  ] ... ) ;
  fhir:subrogation [ boolean ] ; # 0..1 Reimbursement to insurer
  fhir:contract  ( [ Reference(Contract) ] ... ) ; # 0..* Contract details
  fhir:insurancePlan [ Reference(InsurancePlan) ] ; # 0..1 Insurance plan details
]

Changes from both R4 and R4B

Coverage
Coverage.kind
  • Added Mandatory Element
Coverage.paymentBy
  • Added Element
Coverage.paymentBy.party
  • Added Mandatory Element
Coverage.paymentBy.responsibility
  • Added Element
Coverage.subscriberId
  • Max Cardinality changed from 1 to *
  • Type changed from string to Identifier
Coverage.insurer
  • Added Element
Coverage.class.value
  • Type changed from string to Identifier
Coverage.costToBeneficiary.category
  • Added Element
Coverage.costToBeneficiary.network
  • Added Element
Coverage.costToBeneficiary.unit
  • Added Element
Coverage.costToBeneficiary.term
  • Added Element
Coverage.costToBeneficiary.value[x]
  • Min Cardinality changed from 1 to 0
Coverage.insurancePlan
  • Added Element
Coverage.payor
  • Deleted

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

 

Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis

Path ValueSet Type Documentation
Coverage.status FinancialResourceStatusCodes Required

This value set includes Status codes.

Coverage.kind Kind Required

The kind of coverage: insurance, selfpay or other.

Coverage.type CoverageTypeAndSelfPayCodes Preferred

This value set includes Coverage Type codes.

Coverage.relationship SubscriberRelationshipCodes (a valid code from SubscriberPolicyholder Relationship Codes icon) Extensible

This value set includes codes for the relationship between the Subscriber and the Beneficiary (insured/covered party/patient).

Coverage.class.type CoverageClassCodes Extensible

This value set includes Coverage Class codes.

Coverage.costToBeneficiary.type CoverageCopayTypeCodes Extensible

This value set includes sample Coverage Copayment Type codes.

Coverage.costToBeneficiary.category BenefitCategoryCodes Example

This value set includes examples of Benefit Category codes.

Coverage.costToBeneficiary.network NetworkTypeCodes Example

This value set includes a smattering of Network type codes.

Coverage.costToBeneficiary.unit UnitTypeCodes Example

This value set includes a smattering of Unit type codes.

Coverage.costToBeneficiary.term BenefitTermCodes Example

This value set includes a smattering of Benefit Term codes.

Coverage.costToBeneficiary.exception.type ExampleCoverageFinancialExceptionCodes Example

This value set includes Example Coverage Financial Exception Codes.

Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

Name Type Description Expression In Common
beneficiary reference Covered party Coverage.beneficiary
(Patient)
class-type token Coverage class (e.g. plan, group) Coverage.class.type
class-value token Value of the class (e.g. Plan number, group number) Coverage.class.value
dependent string Dependent number Coverage.dependent
identifier token The primary identifier of the insured and the coverage Coverage.identifier 65 Resources
insurer reference The identity of the insurer Coverage.insurer
(Organization)
patient reference Retrieve coverages for a patient Coverage.beneficiary
(Patient)
65 Resources
paymentby-party reference Parties who will pay for services Coverage.paymentBy.party
(Organization, Patient, RelatedPerson)
policy-holder reference Reference to the policyholder Coverage.policyHolder
(Organization, Patient, RelatedPerson)
status token The status of the Coverage Coverage.status
subscriber reference Reference to the subscriber Coverage.subscriber
(Patient, RelatedPerson)
subscriberid token Identifier of the subscriber Coverage.subscriberId
type token The kind of coverage (health plan, auto, Workers Compensation) Coverage.type 11 Resources