chore: remove legacy specification documents and internal rules file
This commit is contained in:
96
docs/knowledge-cards/catalogue/item_price.md
Normal file
96
docs/knowledge-cards/catalogue/item_price.md
Normal file
@@ -0,0 +1,96 @@
|
||||
---
|
||||
card_id: "catalogue/item_price"
|
||||
title: "Định giá Vật phẩm (Item Price)"
|
||||
domain: "catalogue"
|
||||
related_cards:
|
||||
- "catalogue/item_master"
|
||||
- "campaign/pool_definition"
|
||||
- "campaign/account_type_group"
|
||||
tags: ["price", "redemption", "points", "cash", "partial redemption"]
|
||||
detail_refs:
|
||||
- "catalogue/redemption_pricing_detail"
|
||||
---
|
||||
|
||||
# Định giá Vật phẩm (Item Price)
|
||||
|
||||
## Mô tả ngắn
|
||||
|
||||
Item Price là mô-đun định nghĩa "giá bán" cho các vật phẩm (đã được tạo trong Item Master). Một vật phẩm có thể có nhiều mức giá khác nhau tùy thuộc vào các điều kiện (Criteria) như: hạng thẻ khách hàng (Account Level), loại tài khoản (Account Type), kênh đổi thưởng (Redemption Channel) hoặc các tiêu chí tuỳ chỉnh khác. Mô-đun hỗ trợ cả đổi bằng điểm toàn phần (Full Redemption) và đổi kết hợp điểm + tiền mặt (Partial Redemption).
|
||||
|
||||
## Thuật ngữ liên quan
|
||||
|
||||
- **Full Redemption**: Đổi vật phẩm thanh toán 100% bằng điểm.
|
||||
- **Partial Redemption**: Đổi vật phẩm thanh toán bằng kết hợp điểm (tối thiểu là một số lượng nhất định) và tiền mặt (bù cho phần điểm còn thiếu).
|
||||
- **Redemption Pool**: Nguồn lưu trữ (ví/tài khoản điểm) mà hệ thống sẽ trừ điểm khi khách hàng đổi vật phẩm này.
|
||||
- **Cash per point**: Tỉ lệ quy đổi (Ví dụ: 1 điểm thiếu = 100 VND). Dùng để tính toán số tiền mặt khách hàng phải trả bù trong giao dịch Partial Redemption.
|
||||
|
||||
## Cấu trúc dữ liệu (Data Schema)
|
||||
|
||||
### 1. Thông tin chung & Hạn mức áp dụng
|
||||
|
||||
| Field Name | Description | Constraints / Rules |
|
||||
|---|---|---|
|
||||
| Price Code / Name | Mã định danh và Tên của mức giá này | X(10) / X(100). |
|
||||
| Effective Start/End Date | Thời gian mức giá này có hiệu lực | Bắt buộc. Date. |
|
||||
| Redemption Channel | Kênh áp dụng mức giá (VD: Call Center, Mobile App, Internet Banking) | Bắt buộc chọn 1. |
|
||||
| Account Type Group / Level / Type | Giới hạn mức giá này chỉ dành cho một nhóm thẻ hoặc hạng thẻ cụ thể (VD: Chỉ dành cho thẻ Platinum) | Tùy chọn. Nếu Account Type Group được chọn thì Account Level/Type bị khoá và ngược lại. |
|
||||
| Redemption Pool | Ví điểm sẽ bị trừ khi khách hàng đổi quà với giá này | Bắt buộc chọn 1 Pool. |
|
||||
| Use Only Points from Selected PA Type | Bật: Chỉ cho phép dùng điểm kiếm được từ các loại tài khoản đã cấu hình ở trên để đổi | Switch. Mặc định OFF. |
|
||||
|
||||
### 2. Định giá (Pricing)
|
||||
|
||||
| Field Name | Description | Constraints / Rules |
|
||||
|---|---|---|
|
||||
| Face Value | Giá trị thực nhận của khách (VD: 500 Miles). Ghi đè lên Face Value cấu hình tại Item Master nếu có | 9(12,2). > 0. |
|
||||
| Price in point (Full redemption) | Giá của vật phẩm nếu đổi 100% bằng điểm | Bắt buộc. 9(12,2). > 0. |
|
||||
| Original price | Giá gốc (hiển thị để khách tham khảo giá trị thật của món quà) | 9(12,2). > 0. |
|
||||
|
||||
### 3. Đổi kết hợp điểm & tiền (Partial Redemption)
|
||||
|
||||
| Field Name | Description | Constraints / Rules |
|
||||
|---|---|---|
|
||||
| Partial Redemption Allowed | Bật chế độ cho phép thanh toán mix giữa điểm và tiền mặt | Switch. Mặc định OFF. |
|
||||
| Minimum Partial Redeem Points | (Chỉ hiện khi Allow = ON). Khách phải dùng TỐI THIỂU bao nhiêu điểm để được phép bù tiền | 9(12,2) >= 0. Nếu = 0 tức là cho phép đổi 100% bằng tiền mặt. |
|
||||
| Cash per point | (Chỉ hiện khi Allow = ON). Số tiền phải trả cho 1 điểm còn thiếu | 9(12,2) > 0. |
|
||||
| Applicable Taxes | Thuế áp dụng cho giao dịch tiền mặt | Tham chiếu từ "Tax Rate Maintenance". |
|
||||
|
||||
### 4. Điều kiện áp dụng tuỳ chỉnh (Item Criteria)
|
||||
|
||||
Giống như Campaign Rule, Item Price cho phép ghép thêm các nhóm điều kiện phức tạp (Logic AND/OR/NOT).
|
||||
- Giao diện kéo thả (Drag/Drop) các thuộc tính khách hàng, giao dịch để tạo thành bộ lọc.
|
||||
- **Ví dụ**: Giá A chỉ áp dụng nếu khách hàng là Nữ (Gender = Female) VÀ Điểm đổi quà > 10,000.
|
||||
|
||||
## Cách hoạt động (How It Works)
|
||||
|
||||
1. **Khởi tạo mức giá**: Admin chọn một Item Master và thiết lập `Item Price`. Một Item Master có thể thiết lập nhiều mức giá (Ví dụ: Giá cho thẻ hạng Vàng, Giá cho thẻ hạng Kim cương).
|
||||
2. **Quy trình truy vấn giá hợp lệ (Valid Price)**:
|
||||
- Khi có request truy vấn món đồ, hệ thống tìm tất cả các mức giá của món đồ đó.
|
||||
- Loại bỏ các mức giá ngoài khoảng `Effective Date`.
|
||||
- Kiểm tra `Account Type/Level` của khách hàng xem có khớp không.
|
||||
- Kiểm tra `Item Criteria` (điều kiện tuỳ chỉnh) xem khách hàng có thỏa mãn không.
|
||||
- Kết quả: Trả về danh sách các mức giá mà khách hàng ĐƯỢC PHÉP nhìn thấy và áp dụng.
|
||||
3. **Tính toán Partial Redemption**:
|
||||
- Nếu vật phẩm giá 5,000 điểm. Khách hàng chỉ có 3,000 điểm và muốn đổi một phần.
|
||||
- Minimum Partial Redeem = 2,000 điểm, Cash per point = 100 VND.
|
||||
- Khách muốn dùng 3,000 điểm. Số điểm còn thiếu: 5,000 - 3,000 = 2,000 điểm.
|
||||
- Vì 3,000 > 2,000 (Min allowed) -> Hợp lệ.
|
||||
- Số tiền mặt phải bù: 2,000 điểm thiếu * 100 VND/điểm = 200,000 VND (+ Thuế nếu có).
|
||||
|
||||
## Mối quan hệ với modules khác
|
||||
|
||||
- **Item Master**: Item Price không thể tồn tại độc lập mà phải luôn được gắn với một Item Master cụ thể.
|
||||
- **Pool Definition**: Item Price chỉ định chính xác trừ điểm ở Pool nào (ví dụ: điểm thưởng, điểm hoàn tiền).
|
||||
- **Account Type Group**: Dùng để phân quyền truy cập giá (chỉ hạng thẻ cao mới thấy giá rẻ hơn).
|
||||
|
||||
## Ví dụ thực tế
|
||||
|
||||
**Item: Mã Voucher vé xem phim (Item Master)**
|
||||
- **Mức giá 1 (Dành cho thành viên thường)**:
|
||||
- Account Level: Standard
|
||||
- Price in point: 1,500 điểm
|
||||
- Partial Redemption: OFF (Chỉ được đổi 100% bằng 1,500 điểm).
|
||||
- **Mức giá 2 (Dành cho thành viên VIP - Ưu đãi lớn)**:
|
||||
- Account Level: Platinum
|
||||
- Price in point: 1,000 điểm
|
||||
- Partial Redemption: ON (Tối thiểu 500 điểm, phần thiếu tính 1 điểm = 50 VND).
|
||||
- **Trải nghiệm**: Khách VIP vào App sẽ thấy món quà giá 1,000 điểm. Khách đang có 800 điểm -> Có thể dùng 800 điểm và trả thêm 200 * 50 = 10,000 VND để lấy Voucher. Khách Standard vào App sẽ thấy món quà giá 1,500 điểm và không có tùy chọn bù tiền mặt.
|
||||
Reference in New Issue
Block a user