R6 Ballot (1st Draft)

This page is part of the FHIR Specification v6.0.0-ballot1: Release 6 Ballot (1st Draft) (see Ballot Notes). The current version is 5.0.0. For a full list of available versions, see the Directory of published versions

8.33 Resource Invoice - Content

Financial Management icon Work GroupMaturity Level: 0 Trial UseSecurity Category: Patient Compartments: Device, Patient, Practitioner, RelatedPerson

Invoice containing collected ChargeItems from an Account with calculated individual and total price for Billing purpose.

Tracking Financial information is vital in Patient Administration and Finance systems in most Healthcare Organizations. An invoice is a financial document issued by a healthcare provider to a patient or a payer indicating the goods and services (ChargeItems) performed with their quantities and prices.

Example implementations:

  • Any solution that tracks billing information and needs to issue invoices
  • Private Insurance Providers who want to deliver structured information to patients to increase cost transparency
  • Patient apps that want to include information on the amount and reason of the charged costs for the healthcare services a patient received

The existing Claim resource is constricted to use cases where Claims are sent to insurances for reimbursement, in a message-like style. It neither references ChargeItems nor Accounts.

Competing invoicing standards such as EDIFACT or X12 are aiming at inter-organizational exchange and do not offer human readable representations or traceable links to services rendered which is a requirement for invoicing towards patients. This resource is used where existing ChargeItems in an Account are collected to create an Invoice to be sent out to Individuals or Organizations in a structured way. The invoice is the hospital's view, whereas the Claim is the payer's view on the performed services.

Since the individual ChargeItem resources that make up the line items of the Invoice do not carry any pricing information, ChargeItemDefinitions will have to be applied to the ChargeItems in order to calculate the price components for the Invoice depending on the context of the ChargeItem

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Invoice TUDomainResourceInvoice containing ChargeItems from an Account

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierBusiness Identifier for item

... status ?!Σ1..1codedraft | issued | balanced | cancelled | entered-in-error
Binding: Invoice Status (Required)
... cancelledReason 0..1stringReason for cancellation of this Invoice
... subject Σ0..1Reference(Patient | Group)Recipient(s) of goods and services
... recipient Σ0..1Reference(Organization | Patient | RelatedPerson)Recipient of this invoice
... date 0..1dateTimeDEPRICATED
... creation Σ0..1dateTimeWhen posted
... period[x] Σ0..1Billing date or period
.... periodDatedate
.... periodPeriodPeriod
... participant 0..*BackboneElementParticipant in creation of this Invoice

.... role 0..1CodeableConceptType of involvement in creation of this Invoice
.... actor 1..1Reference(Practitioner | Organization | Patient | PractitionerRole | Device | RelatedPerson)Individual who was involved
... issuer 0..1Reference(Organization)Issuing Organization of Invoice
... account 0..1Reference(Account)Account that is being balanced
... lineItem 0..*BackboneElementLine items of this Invoice

.... sequence 0..1positiveIntSequence number of line item
.... serviced[x] 0..1Service data or period
..... servicedDatedate
..... servicedPeriodPeriod
.... chargeItem[x] 1..1Reference to ChargeItem containing details of this line item or an inline billing code
..... chargeItemReferenceReference(ChargeItem)
..... chargeItemCodeableConceptCodeableConcept
.... priceComponent 0..*MonetaryComponentComponents of total line item price

... totalPriceComponent 0..*MonetaryComponentComponents of Invoice total

... totalNet Σ0..1MoneyNet total of this Invoice
... totalGross Σ0..1MoneyGross total of this Invoice
... paymentTerms 0..1markdownPayment details
... note 0..*AnnotationComments made about the invoice


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Invoice (DomainResource)Identifier of this Invoice, often used for reference in correspondence about this invoice or for tracking of paymentsidentifier : Identifier [0..*]The current state of the Invoice (this element modifies the meaning of other elements)status : code [1..1] « null (Strength=Required)InvoiceStatus! »In case of Invoice cancellation a reason must be given (entered in error, superseded by corrected invoice etc.)cancelledReason : string [0..1]Type of Invoice depending on domain, realm an usage (e.g. internal/external, dental, preliminary)type : CodeableConcept [0..1]The individual or set of individuals receiving the goods and services billed in this invoicesubject : Reference [0..1] « Patient|Group »The individual or Organization responsible for balancing of this invoicerecipient : Reference [0..1] « Organization|Patient|RelatedPerson »Depricared by the element belowdate : dateTime [0..1]Date/time(s) of when this Invoice was postedcreation : dateTime [0..1]Date/time(s) range of services included in this invoiceperiod[x] : DataType [0..1] « date|Period »The organizationissuing the Invoiceissuer : Reference [0..1] « Organization »Account which is supposed to be balanced with this Invoiceaccount : Reference [0..1] « Account »The total amount for the Invoice may be calculated as the sum of the line items with surcharges/deductions that apply in certain conditions. The priceComponent element can be used to offer transparency to the recipient of the Invoice of how the total price was calculatedtotalPriceComponent : MonetaryComponent [0..*]Invoice total , taxes excludedtotalNet : Money [0..1]Invoice total, tax includedtotalGross : Money [0..1]Payment details such as banking details, period of payment, deductibles, methods of paymentpaymentTerms : markdown [0..1]Comments made about the invoice by the issuer, subject, or other participantsnote : Annotation [0..*]ParticipantDescribes the type of involvement (e.g. transcriptionist, creator etc.). If the invoice has been created automatically, the Participant may be a billing engine or another kind of devicerole : CodeableConcept [0..1]The device, practitioner, etc. who performed or participated in the serviceactor : Reference [1..1] « Practitioner|Organization|Patient| PractitionerRole|Device|RelatedPerson »LineItemSequence in which the items appear on the invoicesequence : positiveInt [0..1]Date/time(s) range when this service was delivered or completedserviced[x] : DataType [0..1] « date|Period »The ChargeItem contains information such as the billing code, date, amount etc. If no further details are required for the lineItem, inline billing codes can be added using the CodeableConcept data type instead of the ReferencechargeItem[x] : DataType [1..1] « Reference(ChargeItem)| CodeableConcept »The price for a ChargeItem may be calculated as a base price with surcharges/deductions that apply in certain conditions. A ChargeItemDefinition resource that defines the prices, factors and conditions that apply to a billing code is currently under development. The priceComponent element can be used to offer transparency to the recipient of the Invoice as to how the prices have been calculatedpriceComponent : MonetaryComponent [0..*]Indicates who or what performed or participated in the charged serviceparticipant[0..*]Each line item represents one charge for goods and services rendered. Details such.ofType(date), code and amount are found in the referenced ChargeItem resourcelineItem[0..*]

XML Template

<Invoice 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 for item --></identifier>
 <status value="[code]"/><!-- 1..1 draft | issued | balanced | cancelled | entered-in-error -->
 <cancelledReason value="[string]"/><!-- 0..1 Reason for cancellation of this Invoice -->
 <type><!-- 0..1 CodeableConcept Type of Invoice --></type>
 <subject><!-- 0..1 Reference(Group|Patient) Recipient(s) of goods and services --></subject>
 <recipient><!-- 0..1 Reference(Organization|Patient|RelatedPerson) Recipient of this invoice --></recipient>
 <date value="[dateTime]"/><!-- 0..1 DEPRICATED -->
 <creation value="[dateTime]"/><!-- 0..1 When posted -->
 <period[x]><!-- 0..1 date|Period Billing date or period --></period[x]>
 <participant>  <!-- 0..* Participant in creation of this Invoice -->
  <role><!-- 0..1 CodeableConcept Type of involvement in creation of this Invoice --></role>
  <actor><!-- 1..1 Reference(Device|Organization|Patient|Practitioner|
    PractitionerRole|RelatedPerson) Individual who was involved --></actor>
 </participant>
 <issuer><!-- 0..1 Reference(Organization) Issuing Organization of Invoice --></issuer>
 <account><!-- 0..1 Reference(Account) Account that is being balanced --></account>
 <lineItem>  <!-- 0..* Line items of this Invoice -->
  <sequence value="[positiveInt]"/><!-- 0..1 Sequence number of line item -->
  <serviced[x]><!-- 0..1 date|Period Service data or period --></serviced[x]>
  <chargeItem[x]><!-- 1..1 Reference(ChargeItem)|CodeableConcept Reference to ChargeItem containing details of this line item or an inline billing code --></chargeItem[x]>
  <priceComponent><!-- 0..* MonetaryComponent Components of total line item price --></priceComponent>
 </lineItem>
 <totalPriceComponent><!-- 0..* MonetaryComponent Components of Invoice total --></totalPriceComponent>
 <totalNet><!-- 0..1 Money Net total of this Invoice --></totalNet>
 <totalGross><!-- 0..1 Money Gross total of this Invoice --></totalGross>
 <paymentTerms value="[markdown]"/><!-- 0..1 Payment details -->
 <note><!-- 0..* Annotation Comments made about the invoice --></note>
</Invoice>

JSON Template

{doco
  "resourceType" : "Invoice",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business Identifier for item
  "status" : "<code>", // R!  draft | issued | balanced | cancelled | entered-in-error
  "cancelledReason" : "<string>", // Reason for cancellation of this Invoice
  "type" : { CodeableConcept }, // Type of Invoice
  "subject" : { Reference(Group|Patient) }, // Recipient(s) of goods and services
  "recipient" : { Reference(Organization|Patient|RelatedPerson) }, // Recipient of this invoice
  "date" : "<dateTime>", // DEPRICATED
  "creation" : "<dateTime>", // When posted
  // period[x]: Billing date or period. One of these 2:
  "periodDate" : "<date>",
  "periodPeriod" : { Period },
  "participant" : [{ // Participant in creation of this Invoice
    "role" : { CodeableConcept }, // Type of involvement in creation of this Invoice
    "actor" : { Reference(Device|Organization|Patient|Practitioner|
    PractitionerRole|RelatedPerson) } // R!  Individual who was involved
  }],
  "issuer" : { Reference(Organization) }, // Issuing Organization of Invoice
  "account" : { Reference(Account) }, // Account that is being balanced
  "lineItem" : [{ // Line items of this Invoice
    "sequence" : "<positiveInt>", // Sequence number of line item
    // serviced[x]: Service data or period. One of these 2:
    "servicedDate" : "<date>",
    "servicedPeriod" : { Period },
    // chargeItem[x]: 
      Reference to ChargeItem containing details of this line item or an inline billing code. One of these 2:
    "chargeItemReference" : { Reference(ChargeItem) },
    "chargeItemCodeableConcept" : { CodeableConcept },
    "priceComponent" : [{ MonetaryComponent }] // Components of total line item price
  }],
  "totalPriceComponent" : [{ MonetaryComponent }], // Components of Invoice total
  "totalNet" : { Money }, // Net total of this Invoice
  "totalGross" : { Money }, // Gross total of this Invoice
  "paymentTerms" : "<markdown>", // Payment details
  "note" : [{ Annotation }] // Comments made about the invoice
}

Turtle Template

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


[ a fhir:Invoice;
  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 for item
  fhir:status [ code ] ; # 1..1 draft | issued | balanced | cancelled | entered-in-error
  fhir:cancelledReason [ string ] ; # 0..1 Reason for cancellation of this Invoice
  fhir:type [ CodeableConcept ] ; # 0..1 Type of Invoice
  fhir:subject [ Reference(Group|Patient) ] ; # 0..1 Recipient(s) of goods and services
  fhir:recipient [ Reference(Organization|Patient|RelatedPerson) ] ; # 0..1 Recipient of this invoice
  fhir:date [ dateTime ] ; # 0..1 DEPRICATED
  fhir:creation [ dateTime ] ; # 0..1 When posted
  # period[x] : 0..1 Billing date or period. One of these 2
    fhir:period [  a fhir:date ; date ]
    fhir:period [  a fhir:Period ; Period ]
  fhir:participant ( [ # 0..* Participant in creation of this Invoice
    fhir:role [ CodeableConcept ] ; # 0..1 Type of involvement in creation of this Invoice
    fhir:actor [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 1..1 Individual who was involved
  ] ... ) ;
  fhir:issuer [ Reference(Organization) ] ; # 0..1 Issuing Organization of Invoice
  fhir:account [ Reference(Account) ] ; # 0..1 Account that is being balanced
  fhir:lineItem ( [ # 0..* Line items of this Invoice
    fhir:sequence [ positiveInt ] ; # 0..1 Sequence number of line item
    # serviced[x] : 0..1 Service data or period. One of these 2
      fhir:serviced [  a fhir:date ; date ]
      fhir:serviced [  a fhir:Period ; Period ]
    # chargeItem[x] : 1..1 Reference to ChargeItem containing details of this line item or an inline billing code. One of these 2
      fhir:chargeItem [  a fhir:Reference ; Reference(ChargeItem) ]
      fhir:chargeItem [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:priceComponent  ( [ MonetaryComponent ] ... ) ; # 0..* Components of total line item price
  ] ... ) ;
  fhir:totalPriceComponent  ( [ MonetaryComponent ] ... ) ; # 0..* Components of Invoice total
  fhir:totalNet [ Money ] ; # 0..1 Net total of this Invoice
  fhir:totalGross [ Money ] ; # 0..1 Gross total of this Invoice
  fhir:paymentTerms [ markdown ] ; # 0..1 Payment details
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Comments made about the invoice
]

Changes from both R4 and R4B

Invoice
Invoice.creation
  • Added Element
Invoice.period[x]
  • Added Element
Invoice.lineItem.serviced[x]
  • Added Element
Invoice.lineItem.priceComponent
  • Type changed from BackboneElement to MonetaryComponent
Invoice.totalPriceComponent
  • Add Type MonetaryComponent
Invoice.lineItem.priceComponent.type
  • Deleted
Invoice.lineItem.priceComponent.code
  • Deleted
Invoice.lineItem.priceComponent.factor
  • Deleted
Invoice.lineItem.priceComponent.amount
  • 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
.. Invoice TUDomainResourceInvoice containing ChargeItems from an Account

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierBusiness Identifier for item

... status ?!Σ1..1codedraft | issued | balanced | cancelled | entered-in-error
Binding: Invoice Status (Required)
... cancelledReason 0..1stringReason for cancellation of this Invoice
... subject Σ0..1Reference(Patient | Group)Recipient(s) of goods and services
... recipient Σ0..1Reference(Organization | Patient | RelatedPerson)Recipient of this invoice
... date 0..1dateTimeDEPRICATED
... creation Σ0..1dateTimeWhen posted
... period[x] Σ0..1Billing date or period
.... periodDatedate
.... periodPeriodPeriod
... participant 0..*BackboneElementParticipant in creation of this Invoice

.... role 0..1CodeableConceptType of involvement in creation of this Invoice
.... actor 1..1Reference(Practitioner | Organization | Patient | PractitionerRole | Device | RelatedPerson)Individual who was involved
... issuer 0..1Reference(Organization)Issuing Organization of Invoice
... account 0..1Reference(Account)Account that is being balanced
... lineItem 0..*BackboneElementLine items of this Invoice

.... sequence 0..1positiveIntSequence number of line item
.... serviced[x] 0..1Service data or period
..... servicedDatedate
..... servicedPeriodPeriod
.... chargeItem[x] 1..1Reference to ChargeItem containing details of this line item or an inline billing code
..... chargeItemReferenceReference(ChargeItem)
..... chargeItemCodeableConceptCodeableConcept
.... priceComponent 0..*MonetaryComponentComponents of total line item price

... totalPriceComponent 0..*MonetaryComponentComponents of Invoice total

... totalNet Σ0..1MoneyNet total of this Invoice
... totalGross Σ0..1MoneyGross total of this Invoice
... paymentTerms 0..1markdownPayment details
... note 0..*AnnotationComments made about the invoice


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Invoice (DomainResource)Identifier of this Invoice, often used for reference in correspondence about this invoice or for tracking of paymentsidentifier : Identifier [0..*]The current state of the Invoice (this element modifies the meaning of other elements)status : code [1..1] « null (Strength=Required)InvoiceStatus! »In case of Invoice cancellation a reason must be given (entered in error, superseded by corrected invoice etc.)cancelledReason : string [0..1]Type of Invoice depending on domain, realm an usage (e.g. internal/external, dental, preliminary)type : CodeableConcept [0..1]The individual or set of individuals receiving the goods and services billed in this invoicesubject : Reference [0..1] « Patient|Group »The individual or Organization responsible for balancing of this invoicerecipient : Reference [0..1] « Organization|Patient|RelatedPerson »Depricared by the element belowdate : dateTime [0..1]Date/time(s) of when this Invoice was postedcreation : dateTime [0..1]Date/time(s) range of services included in this invoiceperiod[x] : DataType [0..1] « date|Period »The organizationissuing the Invoiceissuer : Reference [0..1] « Organization »Account which is supposed to be balanced with this Invoiceaccount : Reference [0..1] « Account »The total amount for the Invoice may be calculated as the sum of the line items with surcharges/deductions that apply in certain conditions. The priceComponent element can be used to offer transparency to the recipient of the Invoice of how the total price was calculatedtotalPriceComponent : MonetaryComponent [0..*]Invoice total , taxes excludedtotalNet : Money [0..1]Invoice total, tax includedtotalGross : Money [0..1]Payment details such as banking details, period of payment, deductibles, methods of paymentpaymentTerms : markdown [0..1]Comments made about the invoice by the issuer, subject, or other participantsnote : Annotation [0..*]ParticipantDescribes the type of involvement (e.g. transcriptionist, creator etc.). If the invoice has been created automatically, the Participant may be a billing engine or another kind of devicerole : CodeableConcept [0..1]The device, practitioner, etc. who performed or participated in the serviceactor : Reference [1..1] « Practitioner|Organization|Patient| PractitionerRole|Device|RelatedPerson »LineItemSequence in which the items appear on the invoicesequence : positiveInt [0..1]Date/time(s) range when this service was delivered or completedserviced[x] : DataType [0..1] « date|Period »The ChargeItem contains information such as the billing code, date, amount etc. If no further details are required for the lineItem, inline billing codes can be added using the CodeableConcept data type instead of the ReferencechargeItem[x] : DataType [1..1] « Reference(ChargeItem)| CodeableConcept »The price for a ChargeItem may be calculated as a base price with surcharges/deductions that apply in certain conditions. A ChargeItemDefinition resource that defines the prices, factors and conditions that apply to a billing code is currently under development. The priceComponent element can be used to offer transparency to the recipient of the Invoice as to how the prices have been calculatedpriceComponent : MonetaryComponent [0..*]Indicates who or what performed or participated in the charged serviceparticipant[0..*]Each line item represents one charge for goods and services rendered. Details such.ofType(date), code and amount are found in the referenced ChargeItem resourcelineItem[0..*]

XML Template

<Invoice 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 for item --></identifier>
 <status value="[code]"/><!-- 1..1 draft | issued | balanced | cancelled | entered-in-error -->
 <cancelledReason value="[string]"/><!-- 0..1 Reason for cancellation of this Invoice -->
 <type><!-- 0..1 CodeableConcept Type of Invoice --></type>
 <subject><!-- 0..1 Reference(Group|Patient) Recipient(s) of goods and services --></subject>
 <recipient><!-- 0..1 Reference(Organization|Patient|RelatedPerson) Recipient of this invoice --></recipient>
 <date value="[dateTime]"/><!-- 0..1 DEPRICATED -->
 <creation value="[dateTime]"/><!-- 0..1 When posted -->
 <period[x]><!-- 0..1 date|Period Billing date or period --></period[x]>
 <participant>  <!-- 0..* Participant in creation of this Invoice -->
  <role><!-- 0..1 CodeableConcept Type of involvement in creation of this Invoice --></role>
  <actor><!-- 1..1 Reference(Device|Organization|Patient|Practitioner|
    PractitionerRole|RelatedPerson) Individual who was involved --></actor>
 </participant>
 <issuer><!-- 0..1 Reference(Organization) Issuing Organization of Invoice --></issuer>
 <account><!-- 0..1 Reference(Account) Account that is being balanced --></account>
 <lineItem>  <!-- 0..* Line items of this Invoice -->
  <sequence value="[positiveInt]"/><!-- 0..1 Sequence number of line item -->
  <serviced[x]><!-- 0..1 date|Period Service data or period --></serviced[x]>
  <chargeItem[x]><!-- 1..1 Reference(ChargeItem)|CodeableConcept Reference to ChargeItem containing details of this line item or an inline billing code --></chargeItem[x]>
  <priceComponent><!-- 0..* MonetaryComponent Components of total line item price --></priceComponent>
 </lineItem>
 <totalPriceComponent><!-- 0..* MonetaryComponent Components of Invoice total --></totalPriceComponent>
 <totalNet><!-- 0..1 Money Net total of this Invoice --></totalNet>
 <totalGross><!-- 0..1 Money Gross total of this Invoice --></totalGross>
 <paymentTerms value="[markdown]"/><!-- 0..1 Payment details -->
 <note><!-- 0..* Annotation Comments made about the invoice --></note>
</Invoice>

JSON Template

{doco
  "resourceType" : "Invoice",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business Identifier for item
  "status" : "<code>", // R!  draft | issued | balanced | cancelled | entered-in-error
  "cancelledReason" : "<string>", // Reason for cancellation of this Invoice
  "type" : { CodeableConcept }, // Type of Invoice
  "subject" : { Reference(Group|Patient) }, // Recipient(s) of goods and services
  "recipient" : { Reference(Organization|Patient|RelatedPerson) }, // Recipient of this invoice
  "date" : "<dateTime>", // DEPRICATED
  "creation" : "<dateTime>", // When posted
  // period[x]: Billing date or period. One of these 2:
  "periodDate" : "<date>",
  "periodPeriod" : { Period },
  "participant" : [{ // Participant in creation of this Invoice
    "role" : { CodeableConcept }, // Type of involvement in creation of this Invoice
    "actor" : { Reference(Device|Organization|Patient|Practitioner|
    PractitionerRole|RelatedPerson) } // R!  Individual who was involved
  }],
  "issuer" : { Reference(Organization) }, // Issuing Organization of Invoice
  "account" : { Reference(Account) }, // Account that is being balanced
  "lineItem" : [{ // Line items of this Invoice
    "sequence" : "<positiveInt>", // Sequence number of line item
    // serviced[x]: Service data or period. One of these 2:
    "servicedDate" : "<date>",
    "servicedPeriod" : { Period },
    // chargeItem[x]: 
      Reference to ChargeItem containing details of this line item or an inline billing code. One of these 2:
    "chargeItemReference" : { Reference(ChargeItem) },
    "chargeItemCodeableConcept" : { CodeableConcept },
    "priceComponent" : [{ MonetaryComponent }] // Components of total line item price
  }],
  "totalPriceComponent" : [{ MonetaryComponent }], // Components of Invoice total
  "totalNet" : { Money }, // Net total of this Invoice
  "totalGross" : { Money }, // Gross total of this Invoice
  "paymentTerms" : "<markdown>", // Payment details
  "note" : [{ Annotation }] // Comments made about the invoice
}

Turtle Template

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


[ a fhir:Invoice;
  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 for item
  fhir:status [ code ] ; # 1..1 draft | issued | balanced | cancelled | entered-in-error
  fhir:cancelledReason [ string ] ; # 0..1 Reason for cancellation of this Invoice
  fhir:type [ CodeableConcept ] ; # 0..1 Type of Invoice
  fhir:subject [ Reference(Group|Patient) ] ; # 0..1 Recipient(s) of goods and services
  fhir:recipient [ Reference(Organization|Patient|RelatedPerson) ] ; # 0..1 Recipient of this invoice
  fhir:date [ dateTime ] ; # 0..1 DEPRICATED
  fhir:creation [ dateTime ] ; # 0..1 When posted
  # period[x] : 0..1 Billing date or period. One of these 2
    fhir:period [  a fhir:date ; date ]
    fhir:period [  a fhir:Period ; Period ]
  fhir:participant ( [ # 0..* Participant in creation of this Invoice
    fhir:role [ CodeableConcept ] ; # 0..1 Type of involvement in creation of this Invoice
    fhir:actor [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 1..1 Individual who was involved
  ] ... ) ;
  fhir:issuer [ Reference(Organization) ] ; # 0..1 Issuing Organization of Invoice
  fhir:account [ Reference(Account) ] ; # 0..1 Account that is being balanced
  fhir:lineItem ( [ # 0..* Line items of this Invoice
    fhir:sequence [ positiveInt ] ; # 0..1 Sequence number of line item
    # serviced[x] : 0..1 Service data or period. One of these 2
      fhir:serviced [  a fhir:date ; date ]
      fhir:serviced [  a fhir:Period ; Period ]
    # chargeItem[x] : 1..1 Reference to ChargeItem containing details of this line item or an inline billing code. One of these 2
      fhir:chargeItem [  a fhir:Reference ; Reference(ChargeItem) ]
      fhir:chargeItem [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:priceComponent  ( [ MonetaryComponent ] ... ) ; # 0..* Components of total line item price
  ] ... ) ;
  fhir:totalPriceComponent  ( [ MonetaryComponent ] ... ) ; # 0..* Components of Invoice total
  fhir:totalNet [ Money ] ; # 0..1 Net total of this Invoice
  fhir:totalGross [ Money ] ; # 0..1 Gross total of this Invoice
  fhir:paymentTerms [ markdown ] ; # 0..1 Payment details
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Comments made about the invoice
]

Changes from both R4 and R4B

Invoice
Invoice.creation
  • Added Element
Invoice.period[x]
  • Added Element
Invoice.lineItem.serviced[x]
  • Added Element
Invoice.lineItem.priceComponent
  • Type changed from BackboneElement to MonetaryComponent
Invoice.totalPriceComponent
  • Add Type MonetaryComponent
Invoice.lineItem.priceComponent.type
  • Deleted
Invoice.lineItem.priceComponent.code
  • Deleted
Invoice.lineItem.priceComponent.factor
  • Deleted
Invoice.lineItem.priceComponent.amount
  • 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

PathValueSetTypeDocumentation
Invoice.status InvoiceStatus Required

Codes identifying the lifecycle stage of an Invoice.

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.

NameTypeDescriptionExpressionIn Common
accountreferenceAccount that is being balancedInvoice.account
(Account)
datedateInvoice date / posting dateInvoice.date26 Resources
identifiertokenBusiness Identifier for itemInvoice.identifier65 Resources
issuerreferenceIssuing Organization of InvoiceInvoice.issuer
(Organization)
participantreferenceIndividual who was involvedInvoice.participant.actor
(Practitioner, Organization, Device, Patient, PractitionerRole, RelatedPerson)
participant-roletokenType of involvement in creation of this InvoiceInvoice.participant.role
patientreferenceRecipient(s) of goods and servicesInvoice.subject.where(resolve() is Patient)
(Patient)
66 Resources
recipientreferenceRecipient of this invoiceInvoice.recipient
(Organization, Patient, RelatedPerson)
statustokendraft | issued | balanced | cancelled | entered-in-errorInvoice.status
subjectreferenceRecipient(s) of goods and servicesInvoice.subject
(Group, Patient)
totalgrossquantityGross total of this InvoiceInvoice.totalGross
totalnetquantityNet total of this InvoiceInvoice.totalNet
typetokenType of InvoiceInvoice.type11 Resources