openIMIS FHIR R4 Implementation Guide
1.0.0 - ci-build

openIMIS FHIR R4 Implementation Guide - Local Development build (v1.0.0). See the Directory of published versions

Resource Profile: openIMIS Payment Notice

Official URL: https://openimis.github.io/openimis_fhir_r4_ig/StructureDefinition/openimis-payment-notice Version: 1.0.0
Active as of 2022-05-31 Responsible: openIMIS Initiative Computable Name: OpenIMISPaymentNotice

Submit payment notice.

Usage:

  • This Resource Profile is not used by any profiles in this Implementation Guide

Formal Views of Profile Content

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

This structure is derived from PaymentNotice

NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentNotice 0..*PaymentNoticePaymentNotice request
... identifier 0..1IdentifierBusiness Identifier for the payment noctice
.... type 1..1CodeableConceptDescription of identifier
..... coding
...... code 0..1codePaymentNotice UUID
Required Pattern: UUID
.... value 1..1stringThe value that is unique
... request 0..1Reference(openIMIS Invoice | openIMIS Bill)Request reference
... response 0..0
... payment 1..1Reference(PaymentReconciliation)Payment Reconciliation
... paymentDate 1..1datePayment or clearing date
... payee 0..0
... recipient 1..1Reference(openIMIS Insurance Organization)Party being notified
... amount
.... value 1..1decimalNumerical value (with implicit precision)
... paymentStatus 1..1CodeableConceptIssued or cleared Status of the payment

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentNotice 0..*PaymentNoticePaymentNotice request
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..1IdentifierBusiness Identifier for the payment noctice
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ1..1CodeableConceptDescription 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.

..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ0..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ0..1codePaymentNotice UUID
Required Pattern: UUID
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
.... system Σ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ1..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!Σ1..1codeactive | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.

... request 0..1Reference(openIMIS Invoice | openIMIS Bill)Request reference
... created Σ1..1dateTimeCreation date
... payment Σ1..1Reference(PaymentReconciliation)Payment Reconciliation
... paymentDate 1..1datePayment or clearing date
... recipient Σ1..1Reference(openIMIS Insurance Organization)Party being notified
... amount Σ1..1MoneyMonetary amount of the payment
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ1..1decimalNumerical value (with implicit precision)
.... currency Σ0..1codeISO 4217 Currency Code
Binding: Currencies (required): A code indicating the currency, taken from ISO 4217.

... paymentStatus 1..1CodeableConceptIssued or cleared Status of the payment
Binding: PaymentStatusCodes (example): The payment conveyance status codes.


doco Documentation for this format

Differential View

This structure is derived from PaymentNotice

NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentNotice 0..*PaymentNoticePaymentNotice request
... identifier 0..1IdentifierBusiness Identifier for the payment noctice
.... type 1..1CodeableConceptDescription of identifier
..... coding
...... code 0..1codePaymentNotice UUID
Required Pattern: UUID
.... value 1..1stringThe value that is unique
... request 0..1Reference(openIMIS Invoice | openIMIS Bill)Request reference
... response 0..0
... payment 1..1Reference(PaymentReconciliation)Payment Reconciliation
... paymentDate 1..1datePayment or clearing date
... payee 0..0
... recipient 1..1Reference(openIMIS Insurance Organization)Party being notified
... amount
.... value 1..1decimalNumerical value (with implicit precision)
... paymentStatus 1..1CodeableConceptIssued or cleared Status of the payment

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. PaymentNotice 0..*PaymentNoticePaymentNotice request
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier 0..1IdentifierBusiness Identifier for the payment noctice
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ1..1CodeableConceptDescription 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.

..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ0..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ0..1codePaymentNotice UUID
Required Pattern: UUID
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... text Σ0..1stringPlain text representation of the concept
.... system Σ0..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value Σ1..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... status ?!Σ1..1codeactive | cancelled | draft | entered-in-error
Binding: FinancialResourceStatusCodes (required): A code specifying the state of the resource instance.

... request 0..1Reference(openIMIS Invoice | openIMIS Bill)Request reference
... created Σ1..1dateTimeCreation date
... payment Σ1..1Reference(PaymentReconciliation)Payment Reconciliation
... paymentDate 1..1datePayment or clearing date
... recipient Σ1..1Reference(openIMIS Insurance Organization)Party being notified
... amount Σ1..1MoneyMonetary amount of the payment
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... value Σ1..1decimalNumerical value (with implicit precision)
.... currency Σ0..1codeISO 4217 Currency Code
Binding: Currencies (required): A code indicating the currency, taken from ISO 4217.

... paymentStatus 1..1CodeableConceptIssued or cleared Status of the payment
Binding: PaymentStatusCodes (example): The payment conveyance status codes.


doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
PaymentNotice.languagepreferredCommonLanguages
Max Binding: AllLanguages
PaymentNotice.identifier.userequiredIdentifierUse
PaymentNotice.identifier.typeextensibleIdentifier Type Codes
PaymentNotice.statusrequiredFinancialResourceStatusCodes
PaymentNotice.amount.currencyrequiredCurrencies
PaymentNotice.paymentStatusexamplePaymentStatusCodes

Constraints

IdGradePathDetailsRequirements
dom-2errorPaymentNoticeIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPaymentNoticeIf 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-4errorPaymentNoticeIf 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-5errorPaymentNoticeIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6Best PracticePaymentNoticeA resource should have narrative for robust management
: text.`div`.exists()
ele-1errorPaymentNotice.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentNotice.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentNotice.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentNotice.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentNotice.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentNotice.identifier.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentNotice.identifier.useAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.type.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentNotice.identifier.type.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentNotice.identifier.type.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.type.coding.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentNotice.identifier.type.coding.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentNotice.identifier.type.coding.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.type.coding.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.type.coding.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.type.coding.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.type.coding.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.type.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.identifier.assignerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.requestAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.createdAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.paymentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.paymentDateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.recipientAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.amountAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.amount.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorPaymentNotice.amount.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorPaymentNotice.amount.valueAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.amount.currencyAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorPaymentNotice.paymentStatusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())