PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.us.carin@bb-1.2.0
    http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Pharmacy
description: This profile is used for Explanation of Benefits (EOBs) based on claims submitted by retail pharmacies.\nThe claims data is based on submission standards adopted by the Department of Health and Human Services defined by NCPDP (National Council for Prescription Drug Program)
package_name: hl7.fhir.us.carin
derivation: constraint
name: C4BBExplanationOfBenefitPharmacy
type: ExplanationOfBenefit
elements:
  processNote:
    elements:
      text: {mustSupport: true, index: 66}
  meta:
    elements:
      profile:
        pattern: {type: Canonical, value: 'http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Pharmacy|1.2.0'}
        index: 0
        slicing:
          slices:
            supportedProfile:
              match: {}
              schema:
                pattern: {type: Canonical, value: 'http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Pharmacy|1.2.0'}
                index: 0
  adjudication: {index: 58}
  supportingInfo:
    array: true
    min: 5
    index: 5
    slicing:
      rules: open
      ordered: false
      description: Slice based on $this pattern
      discriminator:
      - {path: category, type: pattern}
      min: 5
      slices:
        refillsAuthorized:
          match:
            category:
              coding:
              - {code: refillsauthorized, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            _required: true
            index: 19
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: refillsauthorized, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 20
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 22
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 23}
            required: [value, valueQuantity]
        dayssupply:
          match:
            category:
              coding:
              - {code: dayssupply, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            mustSupport: true
            _required: true
            index: 6
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: dayssupply, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 7
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 9
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 10}
            required: [value, valueQuantity]
        billingnetworkcontractingstatus:
          match:
            category:
              coding:
              - {code: billingnetworkcontractingstatus, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            short: Billing provider contracting status
            mustSupport: true
            index: 24
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: billingnetworkcontractingstatus, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 25
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBPayerProviderContractingStatus'}
                mustSupport: true
                index: 26
            required: [code]
        rxoriginCode:
          match:
            category:
              coding:
              - {code: rxorigincode, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            mustSupport: true
            index: 30
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: rxorigincode, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 31
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/NCPDPPrescriptionOriginCode'}
                mustSupport: true
                index: 32
            required: [code]
        dawcode:
          match:
            category:
              coding:
              - {code: dawcode, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            mustSupport: true
            _required: true
            index: 11
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: dawcode, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 12
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/NCPDPDispensedAsWrittenOrProductSelectionCode'}
                mustSupport: true
                index: 13
            required: [code]
        brandgenericindicator:
          match:
            category:
              coding:
              - {code: brandgenericindicator, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            mustSupport: true
            index: 27
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: brandgenericindicator, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 28
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/NCPDPBrandGenericIndicator'}
                mustSupport: true
                index: 29
            required: [code]
        refillNum:
          match:
            category:
              coding:
              - {code: refillnum, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            mustSupport: true
            _required: true
            index: 14
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: refillnum, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 15
              value:
                mustSupport: true
                choices: [valueQuantity]
                index: 17
              valueQuantity: {type: Quantity, mustSupport: true, choiceOf: value, index: 18}
            required: [value, valueQuantity]
        compoundcode:
          match:
            category:
              coding:
              - {code: compoundcode, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            mustSupport: true
            index: 38
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: compoundcode, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 39
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/NCPDPCompoundCode'}
                mustSupport: true
                index: 40
            required: [code]
        clmrecvddate:
          match:
            category:
              coding:
              - {code: clmrecvddate, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            short: Claim received date
            mustSupport: true
            index: 33
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: clmrecvddate, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 34
              timing:
                mustSupport: true
                choices: [timingDate]
                index: 36
              timingDate: {type: date, mustSupport: true, choiceOf: timing, index: 37}
            required: [timingDate, timing]
        benefitpaymentstatus:
          match: {category: null}
          schema:
            short: Indicates the in network or out of network payment status of the claim. (142)
            mustSupport: true
            _required: true
            index: 41
            elements:
              category:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBPayerBenefitPaymentStatus'}
                index: 42
  payment:
    elements:
      date: {mustSupport: true, index: 65}
  item:
    elements:
      productOrService:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/FDANDCOrCompound'}
        mustSupport: true
        index: 43
      serviced:
        mustSupport: true
        choices: []
        index: 45
      quantity: {mustSupport: true, index: 46}
      adjudication:
        mustSupport: true
        index: 47
        elements:
          category:
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBAdjudicationCategoryDiscriminator'}
            index: 48
        slicing:
          rules: open
          ordered: false
          description: Slice based on value pattern
          discriminator:
          - {path: category, type: pattern}
          min: 1
          slices:
            adjudicationamounttype:
              match: {category: null}
              schema:
                short: Line level adjudication type and amount
                mustSupport: true
                array: true
                min: 1
                _required: true
                index: 49
                elements:
                  category:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBAdjudication'}
                    index: 50
                  amount: {mustSupport: true, index: 51}
                required: [amount]
            denialreason:
              match:
                category:
                  coding:
                  - {code: denialreason, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudicationDiscriminator'}
              schema:
                short: Reason codes used to interpret the Non-Covered Amount (92)
                mustSupport: true
                index: 52
                elements:
                  category:
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: denialreason, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudicationDiscriminator'}
                    index: 53
                  reason:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/NCPDPRejectCode'}
                    mustSupport: true
                    index: 54
                required: [reason]
      detail:
        mustSupport: true
        index: 55
        elements:
          productOrService:
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/FDANationalDrugCode'}
            mustSupport: true
            index: 56
          quantity: {mustSupport: true, index: 57}
    required: [adjudication, serviced]
  type:
    pattern:
      type: CodeableConcept
      value:
        coding:
        - {code: pharmacy, system: 'http://terminology.hl7.org/CodeSystem/claim-type'}
    index: 1
  created: {mustSupport: true, index: 2}
  total:
    index: 59
    elements:
      category:
        binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBTotalCategoryDiscriminator'}
        mustSupport: true
        index: 60
      amount: {mustSupport: true, index: 61}
    slicing:
      rules: open
      ordered: false
      description: Slice based on value pattern
      discriminator:
      - {path: category, type: pattern}
      min: null
      slices:
        adjudicationamounttype:
          match: {category: null}
          schema:
            short: Total adjudication type and amount
            mustSupport: true
            array: true
            min: 1
            _required: true
            index: 62
            elements:
              category:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBAdjudication'}
                index: 63
              amount: {mustSupport: true, index: 64}
  careTeam:
    constraint:
      EOB-pharm-careTeam-practitioner:
        human: 'Pharmacy EOB:  Careteam roles refer to a practitioner'
        source: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Pharmacy
        severity: error
        expression: |-
          (
          role.where(coding.where(code in ('primary' | 'prescribing' )).exists()).exists() implies
          role.where(coding.where(code in ('primary' | 'prescribing' )).exists()).exists().provider.all(resolve() is Organization)
          )
      EOB-pharm-careTeam-organization:
        human: 'Pharmacy EOB:  Careteam roles refer to an organization'
        source: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Pharmacy
        severity: error
        expression: |-
          (
          role.where(coding.where(code in ('performing' )).exists()).exists() implies
          role.where(coding.where(code in ('performing' )).exists()).exists().provider.all(resolve() is Organization)
          )
    index: 3
    elements:
      role:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBClaimPharmacyTeamRole'}
        index: 4
    required: [role]
package_version: bb-1.2.0
class: profile
kind: resource
url: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Pharmacy
base: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit
version: 1.2.0