FHIR Implementation Guide for HCX
0.7.0 - CI Build

FHIR Implementation Guide for HCX - Local Development build (v0.7.0). See the Directory of published versions

Resource Profile: HCX Payment Reconciliation

Defining URL:https://swasth-digital-health-foundation.github.io/standards/v0.7/StructureDefinition-PaymentReconciliation.html
Version:0.7.0
Name:PaymentReconciliation
Status:Draft as of 2021-08-16 10:29:23+1100 (Standards Status: Trial Use)
Definition:

This resource provides the details including amount of a payment and allocates the payment items being paid.

Publisher:HCX Open Community
Committee:Financial Management
Maturity:0
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

https://swasth-digital-health-foundation.github.io/standards/v0.7/StructureDefinition-PaymentReconciliation.html

Formal Views of Profile Content

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

This structure is derived from PaymentReconciliation

NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentReconciliation 0..*PaymentReconciliationPaymentReconciliation resource
... identifier 0..*IdentifierBusiness Identifier for a payment reconciliation
... paymentIssuer Σ0..1Reference(Organization)Party generating payment
... requestor 1..1Reference(Practitioner | PractitionerRole | Organization)Responsible practitioner
... paymentIdentifier 1..1IdentifierBusiness identifier for the payment
... detail
.... submitter 0..1Reference(Practitioner | PractitionerRole | Organization)Submitter of the request
.... responsible 0..1Reference(PractitionerRole)Contact for the response
.... payee 0..1Reference(Practitioner | PractitionerRole | Organization)Recipient of the payment

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentReconciliation 0..*PaymentReconciliationPaymentReconciliation resource
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierBusiness Identifier for a payment reconciliation
... status ?!Σ1..1codeactive | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.

... period Σ0..1PeriodPeriod covered
... created Σ1..1dateTimeCreation date
... paymentIssuer Σ0..1Reference(Organization)Party generating payment
... request 0..1Reference(Task)Reference to requesting resource
... requestor 1..1Reference(Practitioner | PractitionerRole | Organization)Responsible practitioner
... outcome 1..1codequeued | complete | error | partial
Binding: ClaimProcessingCodes (required): The outcome of the processing.

... disposition 0..1stringDisposition message
... paymentDate Σ1..1dateWhen payment issued
... paymentAmount Σ1..1MoneyTotal amount of Payment
... paymentIdentifier 1..1IdentifierBusiness identifier for the payment
... detail 0..*BackboneElementSettlement particulars
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... identifier 0..1IdentifierBusiness identifier of the payment detail
.... predecessor 0..1IdentifierBusiness identifier of the prior payment detail
.... type 1..1CodeableConceptCategory of payment
Binding: PaymentTypeCodes (example): The reason for the amount: payment, adjustment, advance.

.... request 0..1Reference(Resource)Request giving rise to the payment
.... submitter 0..1Reference(Practitioner | PractitionerRole | Organization)Submitter of the request
.... response 0..1Reference(Resource)Response committing to a payment
.... date 0..1dateDate of commitment to pay
.... responsible 0..1Reference(PractitionerRole)Contact for the response
.... payee 0..1Reference(Practitioner | PractitionerRole | Organization)Recipient of the payment
.... amount 0..1MoneyAmount allocated to this payable
... formCode 0..1CodeableConceptPrinted form identifier
Binding: Form Codes (example): The forms codes.

... processNote 0..*BackboneElementNote concerning processing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1codedisplay | print | printoper
Binding: NoteType (required): The presentation types of notes.

.... text 0..1stringNote explanatory text

doco Documentation for this format

Differential View

This structure is derived from PaymentReconciliation

NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentReconciliation 0..*PaymentReconciliationPaymentReconciliation resource
... identifier 0..*IdentifierBusiness Identifier for a payment reconciliation
... paymentIssuer Σ0..1Reference(Organization)Party generating payment
... requestor 1..1Reference(Practitioner | PractitionerRole | Organization)Responsible practitioner
... paymentIdentifier 1..1IdentifierBusiness identifier for the payment
... detail
.... submitter 0..1Reference(Practitioner | PractitionerRole | Organization)Submitter of the request
.... responsible 0..1Reference(PractitionerRole)Contact for the response
.... payee 0..1Reference(Practitioner | PractitionerRole | Organization)Recipient of the payment

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentReconciliation 0..*PaymentReconciliationPaymentReconciliation resource
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..*IdentifierBusiness Identifier for a payment reconciliation
... status ?!Σ1..1codeactive | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.

... period Σ0..1PeriodPeriod covered
... created Σ1..1dateTimeCreation date
... paymentIssuer Σ0..1Reference(Organization)Party generating payment
... request 0..1Reference(Task)Reference to requesting resource
... requestor 1..1Reference(Practitioner | PractitionerRole | Organization)Responsible practitioner
... outcome 1..1codequeued | complete | error | partial
Binding: ClaimProcessingCodes (required): The outcome of the processing.

... disposition 0..1stringDisposition message
... paymentDate Σ1..1dateWhen payment issued
... paymentAmount Σ1..1MoneyTotal amount of Payment
... paymentIdentifier 1..1IdentifierBusiness identifier for the payment
... detail 0..*BackboneElementSettlement particulars
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... identifier 0..1IdentifierBusiness identifier of the payment detail
.... predecessor 0..1IdentifierBusiness identifier of the prior payment detail
.... type 1..1CodeableConceptCategory of payment
Binding: PaymentTypeCodes (example): The reason for the amount: payment, adjustment, advance.

.... request 0..1Reference(Resource)Request giving rise to the payment
.... submitter 0..1Reference(Practitioner | PractitionerRole | Organization)Submitter of the request
.... response 0..1Reference(Resource)Response committing to a payment
.... date 0..1dateDate of commitment to pay
.... responsible 0..1Reference(PractitionerRole)Contact for the response
.... payee 0..1Reference(Practitioner | PractitionerRole | Organization)Recipient of the payment
.... amount 0..1MoneyAmount allocated to this payable
... formCode 0..1CodeableConceptPrinted form identifier
Binding: Form Codes (example): The forms codes.

... processNote 0..*BackboneElementNote concerning processing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1codedisplay | print | printoper
Binding: NoteType (required): The presentation types of notes.

.... text 0..1stringNote explanatory text

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
PaymentReconciliation.languagepreferredCommonLanguages
Max Binding: AllLanguages
PaymentReconciliation.statusrequiredFinancialResourceStatusCodes
PaymentReconciliation.outcomerequiredClaimProcessingCodes
PaymentReconciliation.detail.typeexamplePaymentTypeCodes
PaymentReconciliation.formCodeexampleForm Codes
PaymentReconciliation.processNote.typerequiredNoteType

Constraints

IdGradePathDetailsRequirements
dom-2errorPaymentReconciliationIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPaymentReconciliationIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPaymentReconciliationIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPaymentReconciliationIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticePaymentReconciliationA resource should have narrative for robust management
: text.`div`.exists()
ele-1errorPaymentReconciliation.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentReconciliation.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentReconciliation.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentReconciliation.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentReconciliation.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.createdAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.paymentIssuerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.requestAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.requestorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.outcomeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.dispositionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.paymentDateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.paymentAmountAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.paymentIdentifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detailAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentReconciliation.detail.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentReconciliation.detail.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentReconciliation.detail.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentReconciliation.detail.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.predecessorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.requestAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.submitterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.responseAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.responsibleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.payeeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.detail.amountAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.formCodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.processNoteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.processNote.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentReconciliation.processNote.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentReconciliation.processNote.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentReconciliation.processNote.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentReconciliation.processNote.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentReconciliation.processNote.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())