Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide
0.10.0 - Draft for Community Review
Hướng dẫn triển khai FHIR cốt lõi Việt Nam — VN Core FHIR Implementation Guide - Draft for Community Review (v0.10.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| URL chính thức: http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info | Phiên bản: 0.10.0 | ||||
| Computable Name: VNCoreExtInsuranceCostInfo | |||||
| Định danh khác: OID:2.25.161089673617632664299011809196868855799.42.151 | |||||
Extension tái sử dụng cho thông tin chi phí BHYT trên từng item (thuốc/DVKT/VTYT).
Bao gồm: phạm vi BHYT (PHAM_VI), tỷ lệ thanh toán BHYT (TYLE_TT/TYLE_TT_BH), mức hưởng (MUC_HUONG), mức trần thanh toán BHYT (T_TRANTT),
tỷ lệ thanh toán dịch vụ (TYLE_TT_DV), đơn giá BHYT (DON_GIA_BH) và thành tiền BHYT (THANH_TIEN_BH).
Dùng trên Claim.item, Claim.item.detail, ExplanationOfBenefit.item, ExplanationOfBenefit.item.detail và Invoice.lineItem. Thông tin từ các resource lâm sàng hoặc dược được đưa vào dòng chi phí tương ứng; không gắn extension này trực tiếp lên những resource nguồn đó. Với thiết bị/vật tư, ưu tiên đặt trên Claim.item hoặc item.detail; không dùng trên DeviceUseStatement vì DeviceUseStatement là ghi nhận sử dụng lâm sàng. Theo QĐ 697/QĐ-BYT (các dòng hướng dẫn khoảng 389 và 407), component trong gói TBYT mang lossless các cột 5/6/8/9; chỉ các cột 10–13 được tính ở item tổng gói.
Mapping XML 3176: PHAM_VI, TYLE_TT, MUC_HUONG; DON_GIA_BH (Bảng 3 STT 15), TYLE_TT_DV (Bảng 3 STT 17), THANH_TIEN_BH (Bảng 2 STT 21, Bảng 3 STT 20), T_TRANTT (Bảng 3 STT 21).
Nguồn thiết kế: OHP Data Processor (medication-pham-vi, medication-payment-ratio, medication-benefit-level).
Căn cứ: QĐ 3176/QĐ-BYT đọc cùng QĐ 1931/QĐ-BYT (áp dụng từ 01/07/2026) cho trường MUC_HUONG/SO_DANG_KY; QĐ 697/QĐ-BYT cho các cột bảng kê; VBHN 14/VBHN-BYT (hợp nhất TT 04/2017/TT-BYT với TT 50/2017/TT-BYT và TT 24/2025/TT-BYT) cho mức thanh toán TBYT; NĐ 188/2025/NĐ-CP là bối cảnh quyền lợi/ngoại lệ, không phải nguồn duy nhất của mọi trần dòng chi phí.
English summary: Reusable BHYT cost information on Claim/EOB items and item details, and Invoice line items. Medication, procedure and service facts are represented on the corresponding financial line, not by placing this extension on the source clinical resource. On a medical-device package, each Claim/EOB item detail carries columns 5/6/8/9 losslessly, while columns 10–13 remain on the package item. insuranceLineAmount represents the insurance-eligible line amount (THANH_TIEN_BH/column 9), not the final BHYT fund allocation; on an EOB it aligns with adjudication eligible, while the fund allocation uses adjudication benefit.
Context of Use
This extension may be used on the following element(s)
Claim.item
Claim.item.detail
ExplanationOfBenefit.item
ExplanationOfBenefit.item.detail
Invoice.lineItem
Usage info
Usages:
You can also check for usages in the FHIR IG Statistics
Mô tả profile, differential, snapshot và các biểu diễn liên quan.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Thông tin chi phí BHYT — Insurance Cost Info Extension Constraints: vn-insurance-cost-ratio-and-lexical |
![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() |
0..1 | Extension | Phạm vi BHYT (PHAM_VI): 1=trong DM, 2=ngoài DM, 3=NĐ 70/2015/NĐ-CP | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "scope" | |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Value of extension Binding: Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet (extensible) | |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán BHYT (TYLE_TT) — VD: 100, 80, 50 | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Chuỗi tỷ lệ nguyên gốc từ nguồn (vd `33,33`) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatioSourceLexical" | |
![]() ![]() ![]() ![]() |
1..1 | string | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức hưởng BHYT (MUC_HUONG) — VD: 100, 80, 40 | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức trần thanh toán BHYT của dòng chi phí (T_TRANTT) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeiling" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Trần thanh toán BHYT (VND) | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() ![]() |
0..1 | Extension | Khoảng hiệu lực của mức trần thanh toán | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeilingPeriod" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
1..1 | dateTime | Starting time with inclusive boundary | |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán DVKT/giường/công khám (TYLE_TT_DV) — VD: 100, 50, 33 | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "servicePaymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Đơn giá do quỹ BHYT thanh toán (DON_GIA_BH) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceUnitPrice" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Đơn giá BHYT thanh toán (VND) | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() ![]() |
0..1 | Extension | Thành tiền BH đủ điều kiện của dòng, cột 9 (THANH_TIEN_BH) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceLineAmount" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Thành tiền BH đủ điều kiện (VND) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info" | |
![]() ![]() |
0..0 | Value of extension | ||
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Extension.extension:scope.value[x] | Base | extensible | Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet | 📦0.10.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| vn-insurance-cost-ratio-and-lexical | error | Extension | Các tỷ lệ phải nằm trong khoảng 0-100; chuỗi lexical gốc nếu có phải đi kèm paymentRatio; khoảng hiệu lực trần nếu có phải đi kèm paymentCeiling. Percentage values SHALL be within 0-100; a source lexical string SHALL accompany paymentRatio; a ceiling period SHALL accompany paymentCeiling. |
extension.where(url = 'paymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'servicePaymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100) and (extension.where(url = 'paymentRatioSourceLexical').empty() or extension.where(url = 'paymentRatio').exists()) and (extension.where(url = 'paymentCeilingPeriod').empty() or extension.where(url = 'paymentCeiling').exists())
|
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Thông tin chi phí BHYT — Insurance Cost Info Extension Constraints: vn-insurance-cost-ratio-and-lexical |
![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
0..1 | Extension | Phạm vi BHYT (PHAM_VI): 1=trong DM, 2=ngoài DM, 3=NĐ 70/2015/NĐ-CP | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "scope" | |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Value of extension Binding: Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet (extensible) | |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán BHYT (TYLE_TT) — VD: 100, 80, 50 | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Chuỗi tỷ lệ nguyên gốc từ nguồn (vd `33,33`) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatioSourceLexical" | |
![]() ![]() ![]() ![]() |
1..1 | string | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức hưởng BHYT (MUC_HUONG) — VD: 100, 80, 40 | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức trần thanh toán BHYT của dòng chi phí (T_TRANTT) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeiling" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Trần thanh toán BHYT (VND) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() ![]() |
0..1 | Extension | Khoảng hiệu lực của mức trần thanh toán | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeilingPeriod" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
ΣC | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán DVKT/giường/công khám (TYLE_TT_DV) — VD: 100, 50, 33 | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "servicePaymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Đơn giá do quỹ BHYT thanh toán (DON_GIA_BH) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceUnitPrice" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Đơn giá BHYT thanh toán (VND) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() ![]() |
0..1 | Extension | Thành tiền BH đủ điều kiện của dòng, cột 9 (THANH_TIEN_BH) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceLineAmount" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Thành tiền BH đủ điều kiện (VND) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info" | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Extension.extension:scope.value[x] | Base | extensible | Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet | 📦0.10.0 | This IG |
| Extension.extension:paymentCeiling.value[x].currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| Extension.extension:insuranceUnitPrice.value[x].currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| Extension.extension:insuranceLineAmount.value[x].currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| 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()
|
| vn-insurance-cost-ratio-and-lexical | error | Extension | Các tỷ lệ phải nằm trong khoảng 0-100; chuỗi lexical gốc nếu có phải đi kèm paymentRatio; khoảng hiệu lực trần nếu có phải đi kèm paymentCeiling. Percentage values SHALL be within 0-100; a source lexical string SHALL accompany paymentRatio; a ceiling period SHALL accompany paymentCeiling. |
extension.where(url = 'paymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'servicePaymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100) and (extension.where(url = 'paymentRatioSourceLexical').empty() or extension.where(url = 'paymentRatio').exists()) and (extension.where(url = 'paymentCeilingPeriod').empty() or extension.where(url = 'paymentCeiling').exists())
|
Summary
Complex Extension: Extension tái sử dụng cho thông tin chi phí BHYT trên từng item (thuốc/DVKT/VTYT).
Bao gồm: phạm vi BHYT (PHAM_VI), tỷ lệ thanh toán BHYT (TYLE_TT/TYLE_TT_BH), mức hưởng (MUC_HUONG), mức trần thanh toán BHYT (T_TRANTT),
tỷ lệ thanh toán dịch vụ (TYLE_TT_DV), đơn giá BHYT (DON_GIA_BH) và thành tiền BHYT (THANH_TIEN_BH).
Dùng trên Claim.item, Claim.item.detail, ExplanationOfBenefit.item, ExplanationOfBenefit.item.detail và Invoice.lineItem. Thông tin từ các resource lâm sàng hoặc dược được đưa vào dòng chi phí tương ứng; không gắn extension này trực tiếp lên những resource nguồn đó. Với thiết bị/vật tư, ưu tiên đặt trên Claim.item hoặc item.detail; không dùng trên DeviceUseStatement vì DeviceUseStatement là ghi nhận sử dụng lâm sàng. Theo QĐ 697/QĐ-BYT (các dòng hướng dẫn khoảng 389 và 407), component trong gói TBYT mang lossless các cột 5/6/8/9; chỉ các cột 10–13 được tính ở item tổng gói.
Mapping XML 3176: PHAM_VI, TYLE_TT, MUC_HUONG; DON_GIA_BH (Bảng 3 STT 15), TYLE_TT_DV (Bảng 3 STT 17), THANH_TIEN_BH (Bảng 2 STT 21, Bảng 3 STT 20), T_TRANTT (Bảng 3 STT 21).
Nguồn thiết kế: OHP Data Processor (medication-pham-vi, medication-payment-ratio, medication-benefit-level).
Căn cứ: QĐ 3176/QĐ-BYT đọc cùng QĐ 1931/QĐ-BYT (áp dụng từ 01/07/2026) cho trường MUC_HUONG/SO_DANG_KY; QĐ 697/QĐ-BYT cho các cột bảng kê; VBHN 14/VBHN-BYT (hợp nhất TT 04/2017/TT-BYT với TT 50/2017/TT-BYT và TT 24/2025/TT-BYT) cho mức thanh toán TBYT; NĐ 188/2025/NĐ-CP là bối cảnh quyền lợi/ngoại lệ, không phải nguồn duy nhất của mọi trần dòng chi phí.
English summary: Reusable BHYT cost information on Claim/EOB items and item details, and Invoice line items. Medication, procedure and service facts are represented on the corresponding financial line, not by placing this extension on the source clinical resource. On a medical-device package, each Claim/EOB item detail carries columns 5/6/8/9 losslessly, while columns 10–13 remain on the package item. insuranceLineAmount represents the insurance-eligible line amount (THANH_TIEN_BH/column 9), not the final BHYT fund allocation; on an EOB it aligns with adjudication eligible, while the fund allocation uses adjudication benefit.
coverage phải khai paymentRatio = 0 tường minh, KHÔNG dùng DAR và không để trống (QĐ 697/QĐ-BYT Phần Hai mục 2). The line's BHYT payment ratio (column 8). It is not mandatory on every line: absence denotes a line outside BHYT scope; use Data Absent Reason (DAR) when the reason for a missing value must be conveyed. EXCEPTION on VNCoreCostStatementInvoice: a line owned by a segment without Coverage SHALL declare paymentRatio = 0 explicitly, neither absent nor DAR.33,33 — trong khi QĐ 130/QĐ-BYT (chuỗi QĐ 130/QĐ-BYT → QĐ 4750/QĐ-BYT → QĐ 3176/QĐ-BYT) quy định TYLE_TT_BH là số NGUYÊN dương độ dài 3. Chuẩn hoá sang decimal làm mất chuỗi gốc, còn ép về số nguyên làm mất giá trị. Trường này KHÔNG thay paymentRatio: bên tính toán luôn đọc paymentRatio.paymentCeiling áp dụng. Cần thiết vì trần 45 tháng lương cơ sở là số tiền TÍNH RA từ mức lương cơ sở tại thời điểm, không phải hằng số: NĐ 161/2026/NĐ-CP Điều 3 khoản 2 đặt lương cơ sở 2.530.000 đồng/tháng từ 01/07/2026, nên trần tương ứng là 113.850.000 đồng. Một bảng kê lập trước mốc đó mang trần khác; không có khoảng hiệu lực thì không đối chiếu lại được.Dạng xem DifferentialDifferential View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Thông tin chi phí BHYT — Insurance Cost Info Extension Constraints: vn-insurance-cost-ratio-and-lexical |
![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() |
0..1 | Extension | Phạm vi BHYT (PHAM_VI): 1=trong DM, 2=ngoài DM, 3=NĐ 70/2015/NĐ-CP | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "scope" | |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Value of extension Binding: Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet (extensible) | |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán BHYT (TYLE_TT) — VD: 100, 80, 50 | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Chuỗi tỷ lệ nguyên gốc từ nguồn (vd `33,33`) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatioSourceLexical" | |
![]() ![]() ![]() ![]() |
1..1 | string | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức hưởng BHYT (MUC_HUONG) — VD: 100, 80, 40 | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức trần thanh toán BHYT của dòng chi phí (T_TRANTT) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeiling" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Trần thanh toán BHYT (VND) | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() ![]() |
0..1 | Extension | Khoảng hiệu lực của mức trần thanh toán | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeilingPeriod" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
1..1 | dateTime | Starting time with inclusive boundary | |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán DVKT/giường/công khám (TYLE_TT_DV) — VD: 100, 50, 33 | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "servicePaymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Đơn giá do quỹ BHYT thanh toán (DON_GIA_BH) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceUnitPrice" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Đơn giá BHYT thanh toán (VND) | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() ![]() |
0..1 | Extension | Thành tiền BH đủ điều kiện của dòng, cột 9 (THANH_TIEN_BH) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceLineAmount" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Thành tiền BH đủ điều kiện (VND) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() ![]() |
1..1 | code | ISO 4217 Currency Code Fixed Value: VND | |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info" | |
![]() ![]() |
0..0 | Value of extension | ||
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Extension.extension:scope.value[x] | Base | extensible | Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet | 📦0.10.0 | This IG |
| Id | Grade | Path(s) | Description | Expression |
| vn-insurance-cost-ratio-and-lexical | error | Extension | Các tỷ lệ phải nằm trong khoảng 0-100; chuỗi lexical gốc nếu có phải đi kèm paymentRatio; khoảng hiệu lực trần nếu có phải đi kèm paymentCeiling. Percentage values SHALL be within 0-100; a source lexical string SHALL accompany paymentRatio; a ceiling period SHALL accompany paymentCeiling. |
extension.where(url = 'paymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'servicePaymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100) and (extension.where(url = 'paymentRatioSourceLexical').empty() or extension.where(url = 'paymentRatio').exists()) and (extension.where(url = 'paymentCeilingPeriod').empty() or extension.where(url = 'paymentCeiling').exists())
|
Dạng xem Snapshot
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Thông tin chi phí BHYT — Insurance Cost Info Extension Constraints: vn-insurance-cost-ratio-and-lexical |
![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
0..1 | Extension | Phạm vi BHYT (PHAM_VI): 1=trong DM, 2=ngoài DM, 3=NĐ 70/2015/NĐ-CP | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "scope" | |
![]() ![]() ![]() ![]() |
1..1 | CodeableConcept | Value of extension Binding: Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet (extensible) | |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán BHYT (TYLE_TT) — VD: 100, 80, 50 | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Chuỗi tỷ lệ nguyên gốc từ nguồn (vd `33,33`) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentRatioSourceLexical" | |
![]() ![]() ![]() ![]() |
1..1 | string | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức hưởng BHYT (MUC_HUONG) — VD: 100, 80, 40 | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "benefitLevel" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Mức trần thanh toán BHYT của dòng chi phí (T_TRANTT) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeiling" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Trần thanh toán BHYT (VND) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() ![]() |
0..1 | Extension | Khoảng hiệu lực của mức trần thanh toán | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "paymentCeilingPeriod" | |
![]() ![]() ![]() ![]() |
1..1 | Period | Value of extension | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
ΣC | 1..1 | dateTime | Starting time with inclusive boundary |
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | dateTime | End time with inclusive boundary, if not ongoing |
![]() ![]() ![]() |
0..1 | Extension | Tỷ lệ thanh toán DVKT/giường/công khám (TYLE_TT_DV) — VD: 100, 50, 33 | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "servicePaymentRatio" | |
![]() ![]() ![]() ![]() |
1..1 | decimal | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Đơn giá do quỹ BHYT thanh toán (DON_GIA_BH) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceUnitPrice" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Đơn giá BHYT thanh toán (VND) | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() ![]() |
0..1 | Extension | Thành tiền BH đủ điều kiện của dòng, cột 9 (THANH_TIEN_BH) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "insuranceLineAmount" | |
![]() ![]() ![]() ![]() |
1..1 | Money | Thành tiền BH đủ điều kiện (VND) — Eligible insurance line amount | |
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | decimal | Numerical value (with implicit precision) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | code | ISO 4217 Currency Code Binding: Currencies (required): A code indicating the currency, taken from ISO 4217. Fixed Value: VND |
![]() ![]() |
1..1 | uri | "http://fhir.hl7.org.vn/core/StructureDefinition/vn-ext-insurance-cost-info" | |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| Extension.extension:scope.value[x] | Base | extensible | Phạm vi hưởng BHYT — Vietnam Insurance Scope ValueSet | 📦0.10.0 | This IG |
| Extension.extension:paymentCeiling.value[x].currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| Extension.extension:insuranceUnitPrice.value[x].currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| Extension.extension:insuranceLineAmount.value[x].currency | Base | required | CurrencyCode | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| 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()
|
| vn-insurance-cost-ratio-and-lexical | error | Extension | Các tỷ lệ phải nằm trong khoảng 0-100; chuỗi lexical gốc nếu có phải đi kèm paymentRatio; khoảng hiệu lực trần nếu có phải đi kèm paymentCeiling. Percentage values SHALL be within 0-100; a source lexical string SHALL accompany paymentRatio; a ceiling period SHALL accompany paymentCeiling. |
extension.where(url = 'paymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'servicePaymentRatio').value.ofType(decimal).all($this >= 0 and $this <= 100) and extension.where(url = 'benefitLevel').value.ofType(decimal).all($this >= 0 and $this <= 100) and (extension.where(url = 'paymentRatioSourceLexical').empty() or extension.where(url = 'paymentRatio').exists()) and (extension.where(url = 'paymentCeilingPeriod').empty() or extension.where(url = 'paymentCeiling').exists())
|
Summary
Complex Extension: Extension tái sử dụng cho thông tin chi phí BHYT trên từng item (thuốc/DVKT/VTYT).
Bao gồm: phạm vi BHYT (PHAM_VI), tỷ lệ thanh toán BHYT (TYLE_TT/TYLE_TT_BH), mức hưởng (MUC_HUONG), mức trần thanh toán BHYT (T_TRANTT),
tỷ lệ thanh toán dịch vụ (TYLE_TT_DV), đơn giá BHYT (DON_GIA_BH) và thành tiền BHYT (THANH_TIEN_BH).
Dùng trên Claim.item, Claim.item.detail, ExplanationOfBenefit.item, ExplanationOfBenefit.item.detail và Invoice.lineItem. Thông tin từ các resource lâm sàng hoặc dược được đưa vào dòng chi phí tương ứng; không gắn extension này trực tiếp lên những resource nguồn đó. Với thiết bị/vật tư, ưu tiên đặt trên Claim.item hoặc item.detail; không dùng trên DeviceUseStatement vì DeviceUseStatement là ghi nhận sử dụng lâm sàng. Theo QĐ 697/QĐ-BYT (các dòng hướng dẫn khoảng 389 và 407), component trong gói TBYT mang lossless các cột 5/6/8/9; chỉ các cột 10–13 được tính ở item tổng gói.
Mapping XML 3176: PHAM_VI, TYLE_TT, MUC_HUONG; DON_GIA_BH (Bảng 3 STT 15), TYLE_TT_DV (Bảng 3 STT 17), THANH_TIEN_BH (Bảng 2 STT 21, Bảng 3 STT 20), T_TRANTT (Bảng 3 STT 21).
Nguồn thiết kế: OHP Data Processor (medication-pham-vi, medication-payment-ratio, medication-benefit-level).
Căn cứ: QĐ 3176/QĐ-BYT đọc cùng QĐ 1931/QĐ-BYT (áp dụng từ 01/07/2026) cho trường MUC_HUONG/SO_DANG_KY; QĐ 697/QĐ-BYT cho các cột bảng kê; VBHN 14/VBHN-BYT (hợp nhất TT 04/2017/TT-BYT với TT 50/2017/TT-BYT và TT 24/2025/TT-BYT) cho mức thanh toán TBYT; NĐ 188/2025/NĐ-CP là bối cảnh quyền lợi/ngoại lệ, không phải nguồn duy nhất của mọi trần dòng chi phí.
English summary: Reusable BHYT cost information on Claim/EOB items and item details, and Invoice line items. Medication, procedure and service facts are represented on the corresponding financial line, not by placing this extension on the source clinical resource. On a medical-device package, each Claim/EOB item detail carries columns 5/6/8/9 losslessly, while columns 10–13 remain on the package item. insuranceLineAmount represents the insurance-eligible line amount (THANH_TIEN_BH/column 9), not the final BHYT fund allocation; on an EOB it aligns with adjudication eligible, while the fund allocation uses adjudication benefit.
coverage phải khai paymentRatio = 0 tường minh, KHÔNG dùng DAR và không để trống (QĐ 697/QĐ-BYT Phần Hai mục 2). The line's BHYT payment ratio (column 8). It is not mandatory on every line: absence denotes a line outside BHYT scope; use Data Absent Reason (DAR) when the reason for a missing value must be conveyed. EXCEPTION on VNCoreCostStatementInvoice: a line owned by a segment without Coverage SHALL declare paymentRatio = 0 explicitly, neither absent nor DAR.33,33 — trong khi QĐ 130/QĐ-BYT (chuỗi QĐ 130/QĐ-BYT → QĐ 4750/QĐ-BYT → QĐ 3176/QĐ-BYT) quy định TYLE_TT_BH là số NGUYÊN dương độ dài 3. Chuẩn hoá sang decimal làm mất chuỗi gốc, còn ép về số nguyên làm mất giá trị. Trường này KHÔNG thay paymentRatio: bên tính toán luôn đọc paymentRatio.paymentCeiling áp dụng. Cần thiết vì trần 45 tháng lương cơ sở là số tiền TÍNH RA từ mức lương cơ sở tại thời điểm, không phải hằng số: NĐ 161/2026/NĐ-CP Điều 3 khoản 2 đặt lương cơ sở 2.530.000 đồng/tháng từ 01/07/2026, nên trần tương ứng là 113.850.000 đồng. Một bảng kê lập trước mốc đó mang trần khác; không có khoảng hiệu lực thì không đối chiếu lại được.
Biểu diễn khác của hồ sơ: CSV, Excel, Schematron