This page is part of the FHIR Specification (v3.5.0: R4 Ballot #2). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4
Financial Management Work Group | Maturity Level: 0 | Trial Use | 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:
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-organisational 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 indiviual ChargeItem resources that make 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
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Invoice | TU | DomainResource | Invoice containing ChargeItems from an Account Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business Identifier for item |
status | ?!Σ | 1..1 | code | draft | issued | balanced | cancelled | entered-in-error InvoiceStatus (Required) |
cancelledReason | 0..1 | string | Reason for cancellation of this Invoice | |
type | Σ | 0..1 | CodeableConcept | Type of Invoice |
subject | Σ | 0..1 | Reference(Patient | Group) | Recipient(s) of goods and services |
recipient | Σ | 0..1 | Reference(Organization | Patient | RelatedPerson) | Recipient of this invoice |
date | Σ | 0..1 | dateTime | Invoice date / posting date |
participant | 0..* | BackboneElement | Participant in creation of this Invoice | |
role | 0..1 | CodeableConcept | Type of involevent in creation of this Invoice | |
actor | 1..1 | Reference(Practitioner | Organization | Patient | Device | RelatedPerson) | Individual who was involved | |
issuer | 0..1 | Reference(Organization) | Issuing Organization of Invoice | |
account | 0..1 | Reference(Account) | Account that is being balanced | |
lineItem | 0..* | BackboneElement | Line items of this Invoice | |
sequence | 0..1 | positiveInt | Sequence number of line item | |
chargeItem[x] | 1..1 | Reference to ChargeItem containing details of this line item or an inline billing code | ||
chargeItemReference | Reference(ChargeItem) | |||
chargeItemCodeableConcept | CodeableConcept | |||
priceComponent | 0..* | BackboneElement | Components of total line item price | |
type | 1..1 | code | base | surcharge | deduction | discount | tax | informational InvoicePriceComponentType (Required) | |
code | 0..1 | CodeableConcept | Code identifying the specific component | |
factor | 0..1 | decimal | Factor used for calculating this component | |
amount | 0..1 | Money | Monetary amount associated with this component | |
totalPriceComponent | 0..* | see priceComponent | Components of Invoice total | |
totalNet | Σ | 0..1 | Money | Net total of this Invoice |
totalGross | Σ | 0..1 | Money | Gross total of this Invoice |
paymentTerms | 0..1 | markdown | Payment details | |
note | 0..* | Annotation | Comments made about the invoice | |
Documentation for this format |
UML Diagram (Legend)
XML Template
<Invoice xmlns="http://hl7.org/fhir"> <!-- 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(Patient|Group) Recipient(s) of goods and services --></subject> <recipient><!-- 0..1 Reference(Organization|Patient|RelatedPerson) Recipient of this invoice --></recipient> <date value="[dateTime]"/><!-- 0..1 Invoice date / posting date --> <participant> <!-- 0..* Participant in creation of this Invoice --> <role><!-- 0..1 CodeableConcept Type of involevent in creation of this Invoice --></role> <actor><!-- 1..1 Reference(Practitioner|Organization|Patient|Device| 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 --> <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..* Components of total line item price --> <type value="[code]"/><!-- 1..1 base | surcharge | deduction | discount | tax | informational --> <code><!-- 0..1 CodeableConcept Code identifying the specific component --></code> <factor value="[decimal]"/><!-- 0..1 Factor used for calculating this component --> <amount><!-- 0..1 Money Monetary amount associated with this component --></amount> </priceComponent> </lineItem> <totalPriceComponent><!-- 0..* Content as for Invoice.lineItem.priceComponent 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
{ "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(Patient|Group) }, // Recipient(s) of goods and services "recipient" : { Reference(Organization|Patient|RelatedPerson) }, // Recipient of this invoice "date" : "<dateTime>", // Invoice date / posting date "participant" : [{ // Participant in creation of this Invoice "role" : { CodeableConcept }, // Type of involevent in creation of this Invoice "actor" : { Reference(Practitioner|Organization|Patient|Device| 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 // 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" : [{ // Components of total line item price "type" : "<code>", // R! base | surcharge | deduction | discount | tax | informational "code" : { CodeableConcept }, // Code identifying the specific component "factor" : <decimal>, // Factor used for calculating this component "amount" : { Money } // Monetary amount associated with this component }] }], "totalPriceComponent" : [{ Content as for Invoice.lineItem.priceComponent }], // 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/> . [ 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:Invoice.identifier [ Identifier ], ... ; # 0..* Business Identifier for item fhir:Invoice.status [ code ]; # 1..1 draft | issued | balanced | cancelled | entered-in-error fhir:Invoice.cancelledReason [ string ]; # 0..1 Reason for cancellation of this Invoice fhir:Invoice.type [ CodeableConcept ]; # 0..1 Type of Invoice fhir:Invoice.subject [ Reference(Patient|Group) ]; # 0..1 Recipient(s) of goods and services fhir:Invoice.recipient [ Reference(Organization|Patient|RelatedPerson) ]; # 0..1 Recipient of this invoice fhir:Invoice.date [ dateTime ]; # 0..1 Invoice date / posting date fhir:Invoice.participant [ # 0..* Participant in creation of this Invoice fhir:Invoice.participant.role [ CodeableConcept ]; # 0..1 Type of involevent in creation of this Invoice fhir:Invoice.participant.actor [ Reference(Practitioner|Organization|Patient|Device|RelatedPerson) ]; # 1..1 Individual who was involved ], ...; fhir:Invoice.issuer [ Reference(Organization) ]; # 0..1 Issuing Organization of Invoice fhir:Invoice.account [ Reference(Account) ]; # 0..1 Account that is being balanced fhir:Invoice.lineItem [ # 0..* Line items of this Invoice fhir:Invoice.lineItem.sequence [ positiveInt ]; # 0..1 Sequence number of line item # Invoice.lineItem.chargeItem[x] : 1..1 Reference to ChargeItem containing details of this line item or an inline billing code. One of these 2 fhir:Invoice.lineItem.chargeItemReference [ Reference(ChargeItem) ] fhir:Invoice.lineItem.chargeItemCodeableConcept [ CodeableConcept ] fhir:Invoice.lineItem.priceComponent [ # 0..* Components of total line item price fhir:Invoice.lineItem.priceComponent.type [ code ]; # 1..1 base | surcharge | deduction | discount | tax | informational fhir:Invoice.lineItem.priceComponent.code [ CodeableConcept ]; # 0..1 Code identifying the specific component fhir:Invoice.lineItem.priceComponent.factor [ decimal ]; # 0..1 Factor used for calculating this component fhir:Invoice.lineItem.priceComponent.amount [ Money ]; # 0..1 Monetary amount associated with this component ], ...; ], ...; fhir:Invoice.totalPriceComponent [ See Invoice.lineItem.priceComponent ], ... ; # 0..* Components of Invoice total fhir:Invoice.totalNet [ Money ]; # 0..1 Net total of this Invoice fhir:Invoice.totalGross [ Money ]; # 0..1 Gross total of this Invoice fhir:Invoice.paymentTerms [ markdown ]; # 0..1 Payment details fhir:Invoice.note [ Annotation ], ... ; # 0..* Comments made about the invoice ]
Changes since R3
This resource did not exist in Release 2
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = Not Mapped)
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Invoice | TU | DomainResource | Invoice containing ChargeItems from an Account Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business Identifier for item |
status | ?!Σ | 1..1 | code | draft | issued | balanced | cancelled | entered-in-error InvoiceStatus (Required) |
cancelledReason | 0..1 | string | Reason for cancellation of this Invoice | |
type | Σ | 0..1 | CodeableConcept | Type of Invoice |
subject | Σ | 0..1 | Reference(Patient | Group) | Recipient(s) of goods and services |
recipient | Σ | 0..1 | Reference(Organization | Patient | RelatedPerson) | Recipient of this invoice |
date | Σ | 0..1 | dateTime | Invoice date / posting date |
participant | 0..* | BackboneElement | Participant in creation of this Invoice | |
role | 0..1 | CodeableConcept | Type of involevent in creation of this Invoice | |
actor | 1..1 | Reference(Practitioner | Organization | Patient | Device | RelatedPerson) | Individual who was involved | |
issuer | 0..1 | Reference(Organization) | Issuing Organization of Invoice | |
account | 0..1 | Reference(Account) | Account that is being balanced | |
lineItem | 0..* | BackboneElement | Line items of this Invoice | |
sequence | 0..1 | positiveInt | Sequence number of line item | |
chargeItem[x] | 1..1 | Reference to ChargeItem containing details of this line item or an inline billing code | ||
chargeItemReference | Reference(ChargeItem) | |||
chargeItemCodeableConcept | CodeableConcept | |||
priceComponent | 0..* | BackboneElement | Components of total line item price | |
type | 1..1 | code | base | surcharge | deduction | discount | tax | informational InvoicePriceComponentType (Required) | |
code | 0..1 | CodeableConcept | Code identifying the specific component | |
factor | 0..1 | decimal | Factor used for calculating this component | |
amount | 0..1 | Money | Monetary amount associated with this component | |
totalPriceComponent | 0..* | see priceComponent | Components of Invoice total | |
totalNet | Σ | 0..1 | Money | Net total of this Invoice |
totalGross | Σ | 0..1 | Money | Gross total of this Invoice |
paymentTerms | 0..1 | markdown | Payment details | |
note | 0..* | Annotation | Comments made about the invoice | |
Documentation for this format |
XML Template
<Invoice xmlns="http://hl7.org/fhir"> <!-- 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(Patient|Group) Recipient(s) of goods and services --></subject> <recipient><!-- 0..1 Reference(Organization|Patient|RelatedPerson) Recipient of this invoice --></recipient> <date value="[dateTime]"/><!-- 0..1 Invoice date / posting date --> <participant> <!-- 0..* Participant in creation of this Invoice --> <role><!-- 0..1 CodeableConcept Type of involevent in creation of this Invoice --></role> <actor><!-- 1..1 Reference(Practitioner|Organization|Patient|Device| 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 --> <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..* Components of total line item price --> <type value="[code]"/><!-- 1..1 base | surcharge | deduction | discount | tax | informational --> <code><!-- 0..1 CodeableConcept Code identifying the specific component --></code> <factor value="[decimal]"/><!-- 0..1 Factor used for calculating this component --> <amount><!-- 0..1 Money Monetary amount associated with this component --></amount> </priceComponent> </lineItem> <totalPriceComponent><!-- 0..* Content as for Invoice.lineItem.priceComponent 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
{ "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(Patient|Group) }, // Recipient(s) of goods and services "recipient" : { Reference(Organization|Patient|RelatedPerson) }, // Recipient of this invoice "date" : "<dateTime>", // Invoice date / posting date "participant" : [{ // Participant in creation of this Invoice "role" : { CodeableConcept }, // Type of involevent in creation of this Invoice "actor" : { Reference(Practitioner|Organization|Patient|Device| 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 // 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" : [{ // Components of total line item price "type" : "<code>", // R! base | surcharge | deduction | discount | tax | informational "code" : { CodeableConcept }, // Code identifying the specific component "factor" : <decimal>, // Factor used for calculating this component "amount" : { Money } // Monetary amount associated with this component }] }], "totalPriceComponent" : [{ Content as for Invoice.lineItem.priceComponent }], // 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/> . [ 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:Invoice.identifier [ Identifier ], ... ; # 0..* Business Identifier for item fhir:Invoice.status [ code ]; # 1..1 draft | issued | balanced | cancelled | entered-in-error fhir:Invoice.cancelledReason [ string ]; # 0..1 Reason for cancellation of this Invoice fhir:Invoice.type [ CodeableConcept ]; # 0..1 Type of Invoice fhir:Invoice.subject [ Reference(Patient|Group) ]; # 0..1 Recipient(s) of goods and services fhir:Invoice.recipient [ Reference(Organization|Patient|RelatedPerson) ]; # 0..1 Recipient of this invoice fhir:Invoice.date [ dateTime ]; # 0..1 Invoice date / posting date fhir:Invoice.participant [ # 0..* Participant in creation of this Invoice fhir:Invoice.participant.role [ CodeableConcept ]; # 0..1 Type of involevent in creation of this Invoice fhir:Invoice.participant.actor [ Reference(Practitioner|Organization|Patient|Device|RelatedPerson) ]; # 1..1 Individual who was involved ], ...; fhir:Invoice.issuer [ Reference(Organization) ]; # 0..1 Issuing Organization of Invoice fhir:Invoice.account [ Reference(Account) ]; # 0..1 Account that is being balanced fhir:Invoice.lineItem [ # 0..* Line items of this Invoice fhir:Invoice.lineItem.sequence [ positiveInt ]; # 0..1 Sequence number of line item # Invoice.lineItem.chargeItem[x] : 1..1 Reference to ChargeItem containing details of this line item or an inline billing code. One of these 2 fhir:Invoice.lineItem.chargeItemReference [ Reference(ChargeItem) ] fhir:Invoice.lineItem.chargeItemCodeableConcept [ CodeableConcept ] fhir:Invoice.lineItem.priceComponent [ # 0..* Components of total line item price fhir:Invoice.lineItem.priceComponent.type [ code ]; # 1..1 base | surcharge | deduction | discount | tax | informational fhir:Invoice.lineItem.priceComponent.code [ CodeableConcept ]; # 0..1 Code identifying the specific component fhir:Invoice.lineItem.priceComponent.factor [ decimal ]; # 0..1 Factor used for calculating this component fhir:Invoice.lineItem.priceComponent.amount [ Money ]; # 0..1 Monetary amount associated with this component ], ...; ], ...; fhir:Invoice.totalPriceComponent [ See Invoice.lineItem.priceComponent ], ... ; # 0..* Components of Invoice total fhir:Invoice.totalNet [ Money ]; # 0..1 Net total of this Invoice fhir:Invoice.totalGross [ Money ]; # 0..1 Gross total of this Invoice fhir:Invoice.paymentTerms [ markdown ]; # 0..1 Payment details fhir:Invoice.note [ Annotation ], ... ; # 0..* Comments made about the invoice ]
Changes since Release 3
This resource did not exist in Release 2
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = Not Mapped)
See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
Invoice.status | Codes identifying the lifecycle stage of an Invoice. | Required | InvoiceStatus |
Invoice.lineItem.priceComponent.type | Codes indicating the kind of the price component. | Required | InvoicePriceComponentType |
Search parameters for 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 |
account | reference | Account that is being balanced | Invoice.account (Account) | |
date | date | Invoice date / posting date | Invoice.date | |
identifier | token | Business Identifier for item | Invoice.identifier | |
issuer | reference | Issuing Organization of Invoice | Invoice.issuer (Organization) | |
participant | reference | Individual who was involved | Invoice.participant.actor (Practitioner, Organization, Device, Patient, RelatedPerson) | |
participant-role | token | Type of involevent in creation of this Invoice | Invoice.participant.role | |
patient | reference | Recipient(s) of goods and services | Invoice.subject.where(resolve() is Patient) (Patient) | |
recipient | reference | Recipient of this invoice | Invoice.recipient (Organization, Patient, RelatedPerson) | |
status | token | draft | issued | balanced | cancelled | entered-in-error | Invoice.status | |
subject | reference | Recipient(s) of goods and services | Invoice.subject (Group, Patient) | |
totalgross | quantity | Gross total of this Invoice | Invoice.totalGross | |
totalnet | quantity | Net total of this Invoice | Invoice.totalNet | |
type | token | Type of Invoice | Invoice.type |