Tính tiền BHYT chi trả API
BHYT trả bao nhiêu cho một lần khám hoặc đợt điều trị: mức hưởng theo thẻ, đúng tuyến hay tự đi theo cấp cơ sở, quy tắc 5 năm liên tục và chi phí thấp.
Truyền chi phí trong phạm vi BHYT và mã thẻ (mức hưởng được đọc từ mã thẻ như bhyt-check) hoặc level 1–5, cùng loại khám (ngoại trú / nội trú), cấp cơ sở theo Luật Khám bệnh, chữa bệnh 2023 (primary cấp ban đầu, basic cấp cơ bản, specialized cấp chuyên sâu, kèm former_level tuyến huyện / tỉnh / trung ương trước đây) và hình thức (right đúng tuyến, self tự đi khám, emergency cấp cứu). API áp dụng Điều 22 Luật BHYT sửa đổi bởi Luật 51/2024/QH15 và NĐ 188/2025/NĐ-CP: mức hưởng theo thẻ 100 / 95 / 80 %; tự đi khám được 100 % tại cấp ban đầu và cơ sở tuyến huyện cũ, nội trú 100 % tại cơ sở tuyến tỉnh cũ, ngoại trú tại đó 50 % từ 1/7/2026 (trước đó 0 %), nội trú 40 % tại bệnh viện chuyên sâu khác, 100 % với bệnh trong danh mục của Bộ Y tế (listed_disease) và trường hợp vùng khó khăn (remote_area); cấp cứu luôn được coi là đúng tuyến.
API cũng áp dụng 100 % khi chi phí một lần dưới 15 % lương cơ sở (379.500 đ từ 1/7/2026), khi khám tại cấp ban đầu, và khi đủ 5 năm liên tục với số tiền cùng chi trả trong năm vượt 6 tháng lương cơ sở (15.180.000 đ; truyền five_years, copay_paid, và copay_h1 cho năm 2026 khi lương cơ sở thay đổi giữa năm). Kết quả gồm fund_pays, patient_pays và danh sách quy tắc đã áp dụng. Chưa tính tỷ lệ thanh toán riêng của thuốc, vật tư, dịch vụ kỹ thuật.
Tham số
| Tên | Vị trí | Kiểu | Bắt buộc | Mặc định | |
|---|---|---|---|---|---|
cost | query | number | có | Chi phí trong phạm vi BHYT (đ). | |
card | query | string | không | Mã thẻ BHYT 15 ký tự (đọc mức hưởng). | |
level | query | number | không | 4 | Mức hưởng 1–5 khi không có mã thẻ. |
visit | query | string | không | outpatient | outpatient (ngoại trú) hoặc inpatient (nội trú). |
facility | query | string | không | basic | primary (ban đầu), basic (cơ bản) hoặc specialized (chuyên sâu). |
former_level | query | string | không | district (huyện), provincial (tỉnh), central (TƯ), low_score (< 50 điểm) hoặc mid_score (50–< 70 điểm). | |
route | query | string | không | right | right (đúng tuyến), self (tự đi khám) hoặc emergency (cấp cứu). |
listed_disease | query | boolean | không | Bệnh thuộc danh mục TT 01/2025/TT-BYT. | |
remote_area | query | boolean | không | DTTS / hộ nghèo ở vùng đặc biệt khó khăn, hoặc người sống ở xã đảo. | |
five_years | query | boolean | không | Tham gia BHYT 5 năm liên tục. | |
copay_paid | query | number | không | Số tiền cùng chi trả đã đóng trong năm. | |
out_of_scope_cost | query | number | không | Chi phí ngoài phạm vi BHYT. | |
date | query | string | không | Ngày khám (mặc định hôm nay). |
Ví dụ
curl "https://apibox.io.vn/v1/vn-bhyt-cost?card=DN4797931234567&cost=1000000&facility=basic&former_level=provincial&route=self&date=2026-11-11" \
-H "Authorization: Bearer YOUR_API_KEY"const res = await fetch('https://apibox.io.vn/v1/vn-bhyt-cost?card=DN4797931234567&cost=1000000&facility=basic&former_level=provincial&route=self&date=2026-11-11', {
method: 'GET',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
},
});
const data = await res.json();
console.log(data);import requests
res = requests.get(
"https://apibox.io.vn/v1/vn-bhyt-cost?card=DN4797931234567&cost=1000000&facility=basic&former_level=provincial&route=self&date=2026-11-11",
headers={"Authorization": "Bearer YOUR_API_KEY"},
timeout=30,
)
print(res.json())<?php
$ch = curl_init('https://apibox.io.vn/v1/vn-bhyt-cost?card=DN4797931234567&cost=1000000&facility=basic&former_level=provincial&route=self&date=2026-11-11');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY'],
]);
$response = curl_exec($ch);
print_r(json_decode($response, true));Kết quả trả về
{
"date": "2026-11-11",
"cost": 1000000,
"out_of_scope_cost": 0,
"card": {
"normalized": "DN4797931234567",
"group": "DN",
"group_vi": "Người lao động làm việc theo hợp đồng lao động, người quản lý trong doanh nghiệp nhà nước",
"benefit_level": 4,
"valid": true,
"errors": [],
"warnings": []
},
"benefit_level": 4,
"visit": "outpatient",
"facility": "basic",
"former_level": "provincial",
"route": "self_referral",
"fund_pays": 400000,
"patient_pays": 600000,
"fund_share": 0.4,
"rate_applied": 0.4,
"route_factor": 0.5,
"card_rate": 0.8,
"thresholds": {
"base_salary": 2530000,
"base_salary_ref": "Nghị định 161/2026/NĐ-CP",
"small_visit": 379500,
"five_year_cap": 15180000
},
"rules_applied": [
"Card benefit level 4: 80% of covered costs (Luật BHYT Điều 22 k.1)",
"Self-referral, outpatient at these facilities from 01/07/2026: 50% of the card rate (NĐ 188/2025 Điều 19)"
],
"legal": [
{
"ref": "Luật BHYT 2008 sửa đổi bởi Luật 51/2024/QH15, Điều 22 (VBHN 40/VBHN-VPQH 16/03/2026)",
"effective_from": "2025-07-01"
},
{
"ref": "NĐ 188/2025/NĐ-CP Điều 17–19",
"effective_from": "2025-08-15"
}
],
"note": "Covered costs only (drugs and services on the BHYT lists, at the BHYT price). Payment caps on some drugs, supplies and services are not applied.",
"reviewed": "2026-11-11",
"disclaimer": "Reference calculation, not legal advice; check the official text."
}
Ứng dụng
- Hiển thị số tiền người bệnh dự kiến phải trả trong app bệnh viện
- Ước tính phần bảo hiểm sức khoẻ bổ sung chi trả
- Giải thích quy định tự đi khám tại bệnh viện tuyến chuyên sâu
- Theo dõi ngưỡng cùng chi trả 5 năm liên tục của người bệnh mạn tính
Hỏi đáp
“former_level” là gì?
Từ 2025 cơ sở KCB chia thành cấp ban đầu / cơ bản / chuyên sâu; mức hưởng khi tự đi khám vẫn phụ thuộc tuyến huyện, tỉnh, trung ương trước đây (hoặc điểm phân cấp) của cơ sở.
API có tra thẻ trên cổng BHXH không?
Không: mức hưởng được giải mã từ cấu trúc mã thẻ. Hạn thẻ và nơi đăng ký KCB ban đầu không được kiểm tra.
Có tính tỷ lệ thanh toán thuốc, vật tư không?
Không: chỉ truyền chi phí trong phạm vi BHYT theo giá BHYT; out_of_scope_cost do người bệnh trả, trừ thẻ mức 5.
API liên quan
Kiểm tra JSON
Kiểm tra cú pháp JSON, báo đúng dòng và cột bị lỗi, và validate dữ liệu theo JSON Schema (draft 4, 7, 2019-09 hoặc 2020-12).
{ }Định dạng JSON
Làm đẹp JSON với thụt lề 0-8 dấu cách hoặc tab, rút gọn (minify) hoặc sắp xếp key theo bảng chữ cái. Báo lỗi cú pháp kèm dòng và cột.
CSVCSV sang JSON
Chuyển CSV thành mảng object JSON theo dòng tiêu đề, tự nhận dấu phân cách, tự chuyển số và boolean, báo lỗi từng dòng.