HL7 Vietnam VN Core FHIR Implementation Guide

Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam
0.5.0 - Draft for Community Review

Bộ Hướng dẫn Triển khai Core FHIR cho Việt Nam - Local Development build (v0.5.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

## Hồ sơ tài nguyên: Endpoint cổng giám định BHYT — VN Core Endpoint BHYT Profile

URL chính thức: http://fhir.hl7.org.vn/core/StructureDefinition/vn-core-endpoint-bhyt | Phiên bản: 0.5.0 | Làm nổi bật phần thay đổi?
| Computable Name: VNCoreEndpointBHYT

Profile Endpoint biểu diễn cổng tiếp nhận hồ sơ giám định, thanh toán, quyết toán chi phí KCB BHYT (https://gdbhyt.baohiemxahoi.gov.vn) — endpoint điện tử của Bảo hiểm Xã hội Việt Nam mà cơ sở KCB ký hợp đồng BHXH phải gửi hồ sơ qua đó. Căn cứ:

- TT 12/2026/TT-BTC (Bộ Tài chính, 03/2026), Điều 2 — CSKCB gửi hồ sơ giám định/quyết toán BHYT qua cổng gdbhyt;
- NĐ 164/2025/NĐ-CP (29/06/2025) — giao dịch điện tử BHXH/BHYT;
- QĐ 3176/QĐ-BYT (29/10/2024) — chuẩn dữ liệu đầu ra KCB phục vụ BHXH (XML 4210).

Usages:

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

You can also check for usages in the FHIR IG Statistics

### Các dạng xem hình thức của nội dung hồ sơ

Mô tả profile, differential, snapshot và các biểu diễn liên quan.

- Bảng phần tử chính
- Bảng Differential
- Bảng Snapshot
- Thống kê/Tham chiếu
- Tất cả

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Endpoint |  | 0..* | Endpoint | The technical details of an endpoint that can be used for electronic services
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | Trạng thái endpoint (active/suspended/error/off/test) Binding: EndpointStatus (required): The status of the endpoint.
connectionType | S Σ | 1..1 | Coding | Loại kết nối (vd: hl7-fhir-rest, hl7-v2, hl7-v3, custom) Binding: EndpointConnectionType (extensible)
payloadType | Σ | 1..* | CodeableConcept | Loại payload trao đổi (vd: BHYT submission bundle, XML 4210) Binding: EndpointPayloadType (example)
address | S Σ | 1..1 | url | URL cổng gdbhyt BHXH (bắt đầu bằng https://gdbhyt.baohiemxahoi.gov.vn)
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Endpoint.status | Base | required | EndpointStatus | 📍4.0.1 | FHIR Std.
Endpoint.connectionType | Base | extensible | Endpoint Connection Type | 📍4.0.1 | FHIR Std.
Endpoint.payloadType | Base | example | Endpoint Payload Type | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Endpoint | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Endpoint | If 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-4 | error | Endpoint | If 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-5 | error | Endpoint | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Endpoint | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Endpoint |  | 0..* | Endpoint | The technical details of an endpoint that can be used for electronic services
status | S | 1..1 | code | Trạng thái endpoint (active/suspended/error/off/test)
connectionType | S | 1..1 | Coding | Loại kết nối (vd: hl7-fhir-rest, hl7-v2, hl7-v3, custom)
payloadType |  | 1..* | CodeableConcept | Loại payload trao đổi (vd: BHYT submission bundle, XML 4210)
address | S | 1..1 | url | URL cổng gdbhyt BHXH (bắt đầu bằng https://gdbhyt.baohiemxahoi.gov.vn)
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Endpoint |  | 0..* | Endpoint | The technical details of an endpoint that can be used for electronic services
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Identifies this endpoint across multiple systems
status | ?!S Σ | 1..1 | code | Trạng thái endpoint (active/suspended/error/off/test) Binding: EndpointStatus (required): The status of the endpoint.
connectionType | S Σ | 1..1 | Coding | Loại kết nối (vd: hl7-fhir-rest, hl7-v2, hl7-v3, custom) Binding: EndpointConnectionType (extensible)
name | Σ | 0..1 | string | A name that this endpoint can be identified by
managingOrganization | Σ | 0..1 | Reference(Organization) | Organization that manages this endpoint (might not be the organization that exposes the endpoint)
contact |  | 0..* | ContactPoint | Contact details for source (e.g. troubleshooting)
period | Σ | 0..1 | Period | Interval the endpoint is expected to be operational
payloadType | Σ | 1..* | CodeableConcept | Loại payload trao đổi (vd: BHYT submission bundle, XML 4210) Binding: EndpointPayloadType (example)
payloadMimeType | Σ | 0..* | code | Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
address | S Σ | 1..1 | url | URL cổng gdbhyt BHXH (bắt đầu bằng https://gdbhyt.baohiemxahoi.gov.vn)
header |  | 0..* | string | Usage depends on the channel type
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Endpoint.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
Endpoint.status | Base | required | EndpointStatus | 📍4.0.1 | FHIR Std.
Endpoint.connectionType | Base | extensible | Endpoint Connection Type | 📍4.0.1 | FHIR Std.
Endpoint.payloadType | Base | example | Endpoint Payload Type | 📍4.0.1 | FHIR Std.
Endpoint.payloadMimeType | Base | required | MimeType | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Endpoint | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Endpoint | If 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-4 | error | Endpoint | If 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-5 | error | Endpoint | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Endpoint | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Summary

Must-Support: 3 elements

Dạng xem phần tử chính

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Endpoint |  | 0..* | Endpoint | The technical details of an endpoint that can be used for electronic services
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!S Σ | 1..1 | code | Trạng thái endpoint (active/suspended/error/off/test) Binding: EndpointStatus (required): The status of the endpoint.
connectionType | S Σ | 1..1 | Coding | Loại kết nối (vd: hl7-fhir-rest, hl7-v2, hl7-v3, custom) Binding: EndpointConnectionType (extensible)
payloadType | Σ | 1..* | CodeableConcept | Loại payload trao đổi (vd: BHYT submission bundle, XML 4210) Binding: EndpointPayloadType (example)
address | S Σ | 1..1 | url | URL cổng gdbhyt BHXH (bắt đầu bằng https://gdbhyt.baohiemxahoi.gov.vn)
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Endpoint.status | Base | required | EndpointStatus | 📍4.0.1 | FHIR Std.
Endpoint.connectionType | Base | extensible | Endpoint Connection Type | 📍4.0.1 | FHIR Std.
Endpoint.payloadType | Base | example | Endpoint Payload Type | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Endpoint | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Endpoint | If 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-4 | error | Endpoint | If 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-5 | error | Endpoint | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Endpoint | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Dạng xem Differential

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Endpoint |  | 0..* | Endpoint | The technical details of an endpoint that can be used for electronic services
status | S | 1..1 | code | Trạng thái endpoint (active/suspended/error/off/test)
connectionType | S | 1..1 | Coding | Loại kết nối (vd: hl7-fhir-rest, hl7-v2, hl7-v3, custom)
payloadType |  | 1..* | CodeableConcept | Loại payload trao đổi (vd: BHYT submission bundle, XML 4210)
address | S | 1..1 | url | URL cổng gdbhyt BHXH (bắt đầu bằng https://gdbhyt.baohiemxahoi.gov.vn)
Documentation for this format

Dạng xem SnapshotView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Endpoint |  | 0..* | Endpoint | The technical details of an endpoint that can be used for electronic services
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..* | Identifier | Identifies this endpoint across multiple systems
status | ?!S Σ | 1..1 | code | Trạng thái endpoint (active/suspended/error/off/test) Binding: EndpointStatus (required): The status of the endpoint.
connectionType | S Σ | 1..1 | Coding | Loại kết nối (vd: hl7-fhir-rest, hl7-v2, hl7-v3, custom) Binding: EndpointConnectionType (extensible)
name | Σ | 0..1 | string | A name that this endpoint can be identified by
managingOrganization | Σ | 0..1 | Reference(Organization) | Organization that manages this endpoint (might not be the organization that exposes the endpoint)
contact |  | 0..* | ContactPoint | Contact details for source (e.g. troubleshooting)
period | Σ | 0..1 | Period | Interval the endpoint is expected to be operational
payloadType | Σ | 1..* | CodeableConcept | Loại payload trao đổi (vd: BHYT submission bundle, XML 4210) Binding: EndpointPayloadType (example)
payloadMimeType | Σ | 0..* | code | Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this) Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
address | S Σ | 1..1 | url | URL cổng gdbhyt BHXH (bắt đầu bằng https://gdbhyt.baohiemxahoi.gov.vn)
header |  | 0..* | string | Usage depends on the channel type
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Endpoint.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
Endpoint.status | Base | required | EndpointStatus | 📍4.0.1 | FHIR Std.
Endpoint.connectionType | Base | extensible | Endpoint Connection Type | 📍4.0.1 | FHIR Std.
Endpoint.payloadType | Base | example | Endpoint Payload Type | 📍4.0.1 | FHIR Std.
Endpoint.payloadMimeType | Base | required | MimeType | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | Endpoint | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | Endpoint | If 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-4 | error | Endpoint | If 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-5 | error | Endpoint | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | Endpoint | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Summary

Must-Support: 3 elements

Biểu diễn khác của hồ sơ: CSV, Excel, Schematron