Thu tiền & payment — ghi nhận tiền bệnh nhân
Thanh toán (payment) là khoản tiền bệnh nhân thực tế nộp vào phòng khám, phân biệt với công nợ (tiền phải thu). Hiểu rõ sự khác biệt này để tính toán số dư chính xác.
Charge vs Payment vs Outstanding
Ba khái niệm này hay bị nhầm lẫn, nhưng DentIQ tách biệt hoàn toàn:
| Khái niệm | Định nghĩa | Ví dụ |
|---|---|---|
| Charge | Số tiền phải thu từ dịch vụ / kế hoạch điều trị | Bệnh nhân khám nha khoa, BS kê đơn, tổng charge = 500 k |
| Payment | Tiền bệnh nhân thực tế đã nộp | BN trả ngay 300 k ngày đầu, 200 k ngày hôm sau |
| Outstanding | Tiền còn phải thu (= Charge − Payment) | Outstanding = 500 − 300 = 200 k |
Outstanding (công nợ) chỉ ảnh hưởng doanh số phải thu, không phải tiền mặt (cash) giữ. Tiền thực tế bệnh nhân nộp ghi vào cash ledger riêng. Source branch của payment lấy từ visit/charge gốc, không phải active branch trên header.
Cách ghi nhận thanh toán
Bước 1: Mở hóa đơn/charge
Thanh toán phải gắn với charge context (visit hoặc treatment plan đã được kê). Lễ tân hoặc bác sĩ mở Patient 360 → click bệnh nhân → tab "Tài chính".
Bước 2: Ghi nhận tiền
Nhấn nút "Ghi nhận thanh toán" (hoặc "Record payment"). Nhập:
- Số tiền (bắt buộc) — số VND bệnh nhân trả.
- Phương thức — cash (tiền mặt), bank (chuyển khoản), card (thẻ), Momo, Zalo Pay, VNPay, hoặc phương thức khác.
- Ghi chú (tuỳ chọn) — "trả lần đầu", "trả nợ cũ", etc.
Bước 3: Lưu và phát hành phiếu thu
Nhấn "Lưu" → hệ thống tạo phiếu thu (RECEIPT) tự động. Bạn có thể:
- Xem phiếu thu trên màn hình, in ngay hoặc lưu PDF.
- Gửi link phiếu thu cho bệnh nhân qua Zalo/email (nếu cấu hình).
- Phiếu thu có mã tra cứu để bệnh nhân xác minh.
Thanh toán một phần (partial)
Bệnh nhân không phải lúc nào cũng trả hết charge. DentIQ cho phép thanh toán từng phần:
- Lần 1: Bệnh nhân trả 50% (300 k) → Outstanding = 200 k.
- Lần 2: Ngày hôm sau trả 200 k còn lại → Outstanding = 0 k.
- Mỗi lần ghi payment, phiếu thu sinh ra riêng; history thanh toán lưu rõ ràng trong Patient 360.
Các phương thức thanh toán được hỗ trợ
| Phương thức | Ghi chú |
|---|---|
| Cash (tiền mặt) | Lập tức đưa vào cash ledger / sổ quỹ ca |
| Bank (ngân hàng) | Chuyển khoản; quầy lễ tân cần confirm khi thấy vào TK |
| Card (thẻ) | Pos/máy quẹt; pin khi có sẵn |
| Momo / Zalo Pay / VNPay | Hỗ trợ, quầy note thời gian confirm thanh toán |
Hoàn tiền / Hủy thanh toán
Nếu bệnh nhân muốn hoàn tiền hoặc lỗi ghi sai:
- Mở Payment detail.
- Nhấn "Hủy thanh toán" (cần quyền `payment.manage`).
- Confirm dialog sẽ cảnh báo: "Outstanding sẽ được khôi phục, tiền mặt/ngân hàng sẽ được void".
- Nếu ngày đã chốt quỹ → bị chặn cho đến khi reopen kỳ chốt.
- Nếu e-invoice đã phát hành → chặn cho đến khi xử lý cancel e-invoice trước.
- Lịch sử hủy vẫn giữ trong audit log.
Chỉ người có quyền payment.manage mới được ghi nhận / hủy thanh toán. Bác sĩ hoặc nhân viên khác có payment.read chỉ thấy tính năng đọc. Nếu thiếu quyền, số tiền sẽ hiển thị "Dữ liệu bị ẩn do thiếu quyền" — không bao giờ là 0 ₫ giả (CI-02).
Phiếu tra cứu công khai
DentIQ có tính năng phiếu tra cứu công khai (public lookup link) để bệnh nhân kiểm tra payment:
- Bệnh nhân nhận link (qua Zalo/email) → click vào → nhập SĐT hoặc mã BN → xem lịch sử thanh toán.
- Không lộ dữ liệu nhạy cảm — chỉ show lịch sử tiền, không show chẩn đoán hay ghi chú nội bộ.
- Giúp bệnh nhân tin tưởng phòng khám và dễ quản lý công nợ cá nhân.
Payment timeline
Trong Patient 360, tab "Tổng quan" hiển thị timeline tất cả sự kiện, bao gồm payment:
- Mỗi payment hiển thị: ngày/giờ, số tiền, phương thức, người ghi nhận.
- Status: COMPLETED (thành công) hoặc CANCELED (hủy/void).
- Bác sĩ mà không có `payment.read` sẽ không thấy timeline payment (CI-08).
Giá bao gồm VAT và giá chưa VAT
DentIQ hỗ trợ hai chế độ định giá dịch vụ:
| Chế độ | Ý nghĩa | Giá bệnh nhân trả |
|---|---|---|
| Giá đã bao gồm thuế (inclusive) | Giá niêm yết đã gồm VAT. Hệ thống tách ngược: doanh thu thuần = giá ÷ (1 + thuế suất). | = Giá niêm yết (không cộng thêm) |
| Giá chưa bao gồm thuế (exclusive) | Giá niêm yết chưa gồm VAT. Hệ thống cộng VAT vào để ra giá thanh toán. | = Giá niêm yết + VAT |
Mặc định phòng khám là chưa gồm thuế (exclusive). Chủ phòng khám có thể đặt mặc định cấp phòng khám (priceIncludesTaxDefault) và bật/tắt từng dịch vụ riêng. Dịch vụ y tế (KCT — miễn thuế) không có VAT, không đổi gì.
Dịch vụ "Bọc sứ" niêm yết 2.000.000 ₫ đã gồm VAT 5%:
→ Doanh thu thuần = 2.000.000 ÷ 1,05 ≈ 1.904.762 ₫
→ Thuế GTGT = 95.238 ₫
→ Giá bệnh nhân trả = 2.000.000 ₫ (không cộng thêm VAT lần nữa)
Phiếu thu và hóa đơn điện tử đều hiển thị đầy đủ ba dòng này.
Tách biệt Payment, Cash, và Revenue
Để tránh nhầm lẫn, DentIQ tách rõ các hệ thống:
- Payment = tiền bệnh nhân nộp (giá đã gồm thuế — gross), ghi charge outstanding.
- Cash = tiền mặt/ngân hàng phòng khám đang giữ → sổ quỹ ca riêng.
- Doanh thu thuần = doanh số (KPI dashboard) = payment collected trừ phần VAT.
- Thuế GTGT = phần thuế tách ra, hiển thị riêng trong báo cáo.
- Staff Earning = lương/hoa hồng nhân viên → tính trên doanh thu thuần từ stage completion hoặc điều chỉnh, không từ payment.
Các hệ thống này độc lập. Payment increase không tự động cộng cash hay earning — phải đi qua luồng riêng của từng hệ thống.
Cấp quyền cho nhân viên
| Vai trò | Quyền cần | Có thể làm |
|---|---|---|
| Lễ tân | payment.manage | Ghi nhận payment, in phiếu thu |
| Kế toán | payment.manage + payment.export | Quản lý, export Excel, hủy payment |
| Bác sĩ | payment.read | Xem thanh toán, outstanding (đọc) |