CARIN Consumer Directed Payer Data Exchange (CARIN IG for Blue Button®)
2.1.0 - STU 2.1  flag

CARIN Consumer Directed Payer Data Exchange (CARIN IG for Blue Button®), published by HL7 International / Financial Management. This guide is not an authorized publication; it is the continuous build for version 2.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/carin-bb/ and changes regularly. See the Directory of published versions

Resource Profile: C4BB Explanation Of Benefit ( Abstract )

Official URL: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit Version: 2.1.0
Standards status: Trial-use Computable Name: C4BBExplanationOfBenefit

Abstract parent profile that includes constraints that are common to the four specific ExplanationOfBenefit (EOB) profiles defined in this Implementation Guide. All EOB instances should be from one of the four concrete EOB profiles defined in this Implementation Guide: Inpatient, Outpatient, Pharmacy, and Professional/NonClinician

Synonyms:

  • The Implementation Guide considers a health plan patient / beneficiary / member to be synonymous.  The subscriber is the member who carries the health coverage.  Subscriber synonyms include policy holder / insured.  The payer synonyms are insurer / health plan / payor
  • The practitioner functional roles of rendering, rendering and servicing are synonymous.  CPCDS uses rendering
  • The terms institutional and facility are synonymous.  CPCDS uses institutional
  • The terms allowed and eligible are synonymous.  CPCDS uses eligible
  • The terms disallowed and noncovered are synonymous.  CPCDS uses noncovered

Other Payer

CPCDS modified the concept of primary payer to other payer to accommodate situations when multiple prior payers are involved.  Each amount paid by the other payer should be listed separately.

Paths to the Patient Resource

There are two paths to get to the Patient Resource and the data elements represented inside the Patient Resource:  EOB.patient(Patient) and EOB.insurance.coverage(Coverage).beneficiary(Patient)

Notes on Fields

  • The EOB FHIR Resource defines a comprehensive set of data elements.  Many of them are not relevant to this use case.  When reviewing the Profile Snapshot, several data elements previously hidden are now exposed.  Fields intended for consideration to be provided in the API are marked as Must Support; i.e., a red S or have a minimum cardinality of 1.  All other data elements are not expected to be sent by a Responder; if they are sent a Requestor can choose to ignore them
  • .meta.lastUpdated: Payers SHALL provide the last time the data was updated or the date of creation in the payer’s system of record, whichever comes last.
  • .status:  value =Expected values are active or cancelled. To comply with the CMS rule, draft EOBs are not required. 
  • .type Defines the Claims profiles. Values from Claim Type Codes are required; data absent reason is not allowed
  • .use: The CMS rule applies to adjudicated claims; it does not require preauthorizations or predeterminations.
  • .patient  Additional required path:EOB.insurance.coverage(Coverage).beneficiary(Patient).identifier
  • .insurer  Same as insurance.coverage.organization.  Party responsible for reimbursing the provider
  • .outcome:  value = complete
  • .related:  .related: Adjustment requests are used to change an original ExplanationOfBenefit information. The original payment can be increased or decreased, billed units can be changed, or other changes may occur. ExplanationOfBenefit.related captures the identifier of the prior / new ExplanationOfBenefit. If the current adjusts a prior ExplanationOfBenefit, .related.reference = the prior ExplanationOfBenefit identifier and related.relationship value = 'prior'. If the current ExplanationOfBenefit has been adjusted; related.reference = the ExplanationOfBenefit.identifier of the adjusting ExplanationOfBenefit and related.relationship value = 'replacedby'. The .related.reference contains the identifier of the immediately preceding or following ExplanationOfBenefit, not the first or last.
  • .supportinginfo.sequence rule:  client app implementations should look-up supportingInfo elements based on category values instead of sequence values
  • .careTeam.sequence rule:  careTeam.sequence values uniquely identify careTeam members.  They do not necessarily indicate any order in which the patient was seen by the careTeam or identify any level of significance of the careTeam to the patient, etc.  Client app implementations should not assign any significance to the sequence values.   
  • .insurance:  Define an invariant:  Will have multiple occurrences on secondary / tertiary, etc. claims.  Up to one occurrence, that of the ExplanationOfBenefit.insurer, will have a boolean value = 'True'. 
  • .insurance.focal:  If there is an occurrence, with focal = true, EOB.insurance.coverage.payor =  EOB.insurer is the same as EOB.insurance.coverage.payor.   (Coverage.payor is 1..1).  There can be  0 or * occurrences with focal = false
  • .insurance.coverage:  When focal = true, Coverage.payer--> Organization.identifier.  When focal = false, EOB.insurance.coverage.display = [name of other carrier]  
  • .insurance.coverage:  Same as insurance.coverage.organization.  Party responsible for reimbursing the provider.
  • .item.noteNumber:  References number of the associated processNote entered
  • The CPCDS data elements are defined in the data element comments.  The numbers, e.g. (1), following the data element descriptions in the comments correlate to the MapID in the CPCDS Data Dictionary and the Mapping Worksheet as described here.
  • meta.profile is required as a matter of convenience of receiving systems. The meta.profile should be used by the Server to hint/assert/declare that this instance conforms to one (or more) stated profiles (with business versions). meta.profile does not capture any business logic, processing directives, or semantics (for example, inpatient or outpatient). Clients should not assume that the Server will exhaustively indicate all profiles with all versions that this instance conforms to. Clients can (and should) perform their own validation of conformance to the indicated profile(s) and to any other profiles of interest.

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraintsdoco
.. ExplanationOfBenefit 0..* ExplanationOfBenefit This is an abstractprofile. Childprofiles: C4BBExplanationOfBenefitInpatientInstitutionalBasis, C4BBExplanationOfBenefitOralBasis, C4BBExplanationOfBenefitOutpatientInstitutionalBasis, C4BBExplanationOfBenefitPharmacyBasis, C4BBExplanationOfBenefitProfessionalNonClinicianBasis
Explanation of Benefit resource
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... meta SΣ 1..1 Meta Metadata about the resource
ele-1: All FHIR elements must have a @value or children
.... lastUpdated SΣ 1..1 instant When the resource version last changed
ele-1: All FHIR elements must have a @value or children
.... profile Σ 1..* canonical(StructureDefinition) Profiles this resource claims to conform to
ele-1: All FHIR elements must have a @value or children
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... identifier:All Slices Content/Rules for all slices
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .


ele-1: All FHIR elements must have a @value or children
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.


ele-1: All FHIR elements must have a @value or children
.... identifier:uniqueclaimid S 1..1 Identifier Unique Claim Identifier
ele-1: All FHIR elements must have a @value or children
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .


ele-1: All FHIR elements must have a @value or children
..... type Σ 1..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.


ele-1: All FHIR elements must have a @value or children
Required Pattern: At least the following
...... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
....... system 1..1 uri Identity of the terminology system
Fixed Value: http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType
....... code 1..1 code Symbol in syntax defined by the system
Fixed Value: uc
..... value SΣ 1..1 string Unique Claim Identifier
ele-1: All FHIR elements must have a @value or children
Example General: 123456
... status ?!SΣ 1..1 code active | cancelled | draft | entered-in-error
Binding: ExplanationOfBenefitStatus (required): A code specifying the state of the resource instance.


ele-1: All FHIR elements must have a @value or children
... type SΣ 1..1 CodeableConcept Category or discipline
Binding: ClaimTypeCodes (required)
ele-1: All FHIR elements must have a @value or children
... use SΣ 1..1 code claim | preauthorization | predetermination
Binding: Use (required): Complete, proposed, exploratory, other.


ele-1: All FHIR elements must have a @value or children
Required Pattern: claim
... patient SΣ 1..1 Reference(C4BB Patient) The recipient of the products and services
ele-1: All FHIR elements must have a @value or children
... billablePeriod SΣ 1..1 Period Relevant time frame for the claim
ele-1: All FHIR elements must have a @value or children
.... start SΣC 1..1 dateTime Starting time with inclusive boundary
ele-1: All FHIR elements must have a @value or children
.... end ΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
ele-1: All FHIR elements must have a @value or children
... created Σ 1..1 dateTime Response creation date
ele-1: All FHIR elements must have a @value or children
... insurer SΣ 1..1 Reference(C4BB Organization) Party responsible for reimbursement
ele-1: All FHIR elements must have a @value or children
... provider SΣ 1..1 Reference(C4BB Organization | C4BB Practitioner) Party responsible for the claim
ele-1: All FHIR elements must have a @value or children
... priority 0..1 CodeableConcept Desired processing urgency
Binding: ProcessPriorityCodes (required)
ele-1: All FHIR elements must have a @value or children
... related S 0..* BackboneElement Prior or corollary claims
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... relationship S 1..1 CodeableConcept How the reference claim is related
Binding: C4BB Related Claim Relationship Codes Value Set (required)
ele-1: All FHIR elements must have a @value or children
.... reference S 1..1 Identifier File or case reference
ele-1: All FHIR elements must have a @value or children
... payee SC 0..1 BackboneElement Recipient of benefits payable
ele-1: All FHIR elements must have a @value or children
EOB-payee-other-type-requires-party: Base EOB: if payee type is other, payee party is required
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... type S 1..1 CodeableConcept Category of recipient
Binding: C4BB Payee Type Value Set (required)
ele-1: All FHIR elements must have a @value or children
.... party S 0..1 Reference(C4BB Organization | C4BB Patient | C4BB Practitioner | C4BB RelatedPerson) Recipient reference
ele-1: All FHIR elements must have a @value or children
... outcome SΣ 1..1 code queued | complete | error | partial
Binding: ClaimProcessingCodes (required): The result of the claim processing.


ele-1: All FHIR elements must have a @value or children
... careTeam S 0..* BackboneElement Care Team members
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... sequence 1..1 positiveInt Order of care team
ele-1: All FHIR elements must have a @value or children
.... provider S 1..1 Reference(C4BB Organization | C4BB Practitioner) Practitioner or organization
ele-1: All FHIR elements must have a @value or children
.... role S 0..1 CodeableConcept Function within the team
Binding: ClaimCareTeamRoleCodes (example): The role codes for the care team members.


ele-1: All FHIR elements must have a @value or children
... supportingInfo S 0..* BackboneElement Supporting information
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... sequence 1..1 positiveInt Information instance identifier
ele-1: All FHIR elements must have a @value or children
.... category 1..1 CodeableConcept Classification of the supplied information
Binding: C4BB SupportingInfo Type Value Set (extensible)
ele-1: All FHIR elements must have a @value or children
... insurance SΣC 1..* BackboneElement Patient insurance information
ele-1: All FHIR elements must have a @value or children
EOB-insurance-focal: EOB.insurance: at most one with focal = true
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... focal SΣ 1..1 boolean Coverage to be used for adjudication
ele-1: All FHIR elements must have a @value or children
.... coverage SΣ 1..1 Reference(C4BB Coverage) Insurance information
ele-1: All FHIR elements must have a @value or children
... item S 1..* BackboneElement Product or service provided
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... sequence S 1..1 positiveInt Item instance identifier
ele-1: All FHIR elements must have a @value or children
.... productOrService 1..1 CodeableConcept Billing, service, product, or drug code
Binding: USCLSCodes (example): Allowable service and product codes.


ele-1: All FHIR elements must have a @value or children
.... noteNumber S 0..* positiveInt Applicable note numbers
ele-1: All FHIR elements must have a @value or children
.... adjudication 0..* BackboneElement Adjudication details
ele-1: All FHIR elements must have a @value or children
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... category S 1..1 CodeableConcept Type of adjudication information
Binding: AdjudicationValueCodes (example): The adjudication codes.


ele-1: All FHIR elements must have a @value or children
... payment S 0..1 BackboneElement Payment Details
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... type S 0..1 CodeableConcept Partial or complete payment
Binding: C4BB Payer Claim Payment Status Code Value Set (required)
ele-1: All FHIR elements must have a @value or children
.... date 0..1 date Expected date of payment
ele-1: All FHIR elements must have a @value or children
... processNote S 0..* BackboneElement Note concerning adjudication
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... text 0..1 string Note explanatory text
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
ExplanationOfBenefit.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
ExplanationOfBenefit.identifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
ExplanationOfBenefit.identifier:uniqueclaimid.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
ExplanationOfBenefit.identifier:uniqueclaimid.typeextensiblePattern: uc
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
ExplanationOfBenefit.statusrequiredExplanationOfBenefitStatus
http://hl7.org/fhir/ValueSet/explanationofbenefit-status|4.0.1
from the FHIR Standard
ExplanationOfBenefit.typerequiredClaimTypeCodes
http://hl7.org/fhir/ValueSet/claim-type
from the FHIR Standard
ExplanationOfBenefit.userequiredPattern: claim
http://hl7.org/fhir/ValueSet/claim-use|4.0.1
from the FHIR Standard
ExplanationOfBenefit.priorityrequiredProcessPriorityCodes
http://hl7.org/fhir/ValueSet/process-priority
from the FHIR Standard
ExplanationOfBenefit.related.relationshiprequiredC4BBRelatedClaimRelationshipCodes
http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBRelatedClaimRelationshipCodes
from this IG
ExplanationOfBenefit.payee.typerequiredC4BBPayeeType
http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBPayeeType
from this IG
ExplanationOfBenefit.outcomerequiredClaimProcessingCodes
http://hl7.org/fhir/ValueSet/remittance-outcome|4.0.1
from the FHIR Standard
ExplanationOfBenefit.careTeam.roleexampleClaimCareTeamRoleCodes
http://hl7.org/fhir/ValueSet/claim-careteamrole
from the FHIR Standard
ExplanationOfBenefit.supportingInfo.categoryextensibleC4BBSupportingInfoType (a valid code from C4BB Supporting Info Type Code System)
http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBSupportingInfoType
from this IG
ExplanationOfBenefit.item.productOrServiceexampleUSCLSCodes
http://hl7.org/fhir/ValueSet/service-uscls
from the FHIR Standard
ExplanationOfBenefit.item.adjudication.categoryexampleAdjudicationValueCodes
http://hl7.org/fhir/ValueSet/adjudication
from the FHIR Standard
ExplanationOfBenefit.payment.typerequiredC4BBPayerClaimPaymentStatusCode
http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBPayerClaimPaymentStatusCode
from this IG

Constraints

IdGradePath(s)DetailsRequirements
EOB-insurance-focalerrorExplanationOfBenefit.insuranceEOB.insurance: at most one with focal = true
: select (focal = true).count() < 2
EOB-payee-other-type-requires-partyerrorExplanationOfBenefit.payeeBase EOB: if payee type is other, payee party is required
: type.coding.where(code = 'other' and system = 'http://terminology.hl7.org/CodeSystem/payeetype').exists() implies party.exists()

 

Other representations of profile: CSV, Excel, Schematron