VuaNem Executive Intelligence
Mọi câu hỏi kinh doanh → câu trả lời có con số + hành động đề xuất
Tạo lúc: 2026-07-30 17:30 • Mở mục “Chi tiết dữ liệu & cách tính” trong từng thẻ để xem bảng/biểu đồ/phương pháp
| Báo cáo | Hỏi & Đáp điều hành — tất cả câu hỏi kinh doanh được trả lời trong một file |
| Dùng để | Trả lời tất cả câu hỏi kinh doanh trong một báo cáo thống nhất để xem xét của các bên liên quan đa chức năng. |
| Tạo lúc | 2026-07-30 17:30 |
| Dữ liệu đến ngày | 2026-07-30 |
Phương pháp tính (kỹ thuật)
Đọc mọi CSV đầu ra pipeline và xây dựng báo cáo HTML toàn diện với 9 phần (Bán hàng & Dự báo, Tồn kho, Lập kế hoạch Nhu cầu, Khách hàng, Thông tin Khách hàng, Chuỗi cung ứng, Thông tin Dự báo Nhu cầu, Điều hành, Phương pháp luận). Mỗi hàng câu hỏi bao gồm thẻ nhân vật, tần suất, nội dung câu hỏi, câu trả lời với bảng nội dòng và biểu đồ matplotlib (PNG base64). Thẻ KPI tóm tắt ở đầu.
⚡ Hành động đề xuất (4)
- Vận hành: 8 SKU tồn dư (AMANDO_180, TEMPUR_160) — lên phương án xả hàng tuần này.
- Marketing: 67 khách nguy cơ rồi bỏ — chạy win-back tuần này.
- Marketing: 5 khách cần chăm sóc ngay (PRICE_SENSITIVE_LEAD: 5).
- Vận hành: 7 SKU quay chậm/chết (AMANDO_180, TEMPUR_160, BEDGEAR_X) — cần phương án thanh lý.
Doanh số & Dự báo (Q1–Q18)
Q1Bán hàngHàng tháng🟡 Theo dõi
“Tháng tới dự kiến bán được bao nhiêu sản phẩm, theo từng nhóm hàng × kênh?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q1
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Mọi quyết định phía dưới — nhập hàng, ngân sách, marketing — đều bắt đầu từ con số này.
Cách tính: AutoARIMA + AutoETS (StatsForecast), dự báo 3 tháng, khoảng tin cậy 80%/95%. Độ chính xác kiểm chứng bằng MAPE trên 3 tháng holdout.
Q4Bán hàngHàng tuần🟡 Theo dõi
“Yếu tố nào đang ảnh hưởng nhiều nhất đến doanh số 7 ngày tới?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q4
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Biết đòn bẩy nào quyết định doanh số để hành động, thay vì coi dự báo là hộp đen.
Cách tính: LightGBM với đặc trưng trễ (lag), trung bình trượt, lịch. SHAP phân tách đóng góp của từng yếu tố vào dự báo.
Nguồn: forecast_ml.csv, forecast_ml_shap.csv • cập nhật 30/07 17:30
Q5Bán hàngTheo yêu cầu🟡 Theo dõi
“Sản phẩm mới chưa có lịch sử bán — dự báo nhu cầu thế nào?”
⚠️ Chưa có dữ liệu (cần API key TimeGPT, hoặc bước q5 sẽ dùng seasonal naive). → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q5
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: SKU mới không có quá khứ để học — nhập kho sai ngay từ đầu là rủi ro tồn kho lớn nhất.
Cách tính: TimeGPT zero-shot theo metadata (nhóm, kênh). Fallback: seasonal naive theo trung bình nhóm hàng.
Q7Tài chínhHàng tháng🟢 Ổn
“Con số dự báo ở cấp nhóm hàng và cấp SKU có khớp nhau không?”
✅ 7 chuỗi đã được đồng bộ — số cấp nhóm cộng lại khớp với cấp tổng. Tổng kỳ gần nhất (07/2026): 286 sp.
Tài chính→ Hành động: Khi lập ngân sách, dùng bộ số reconciled này thay vì tự tổng hợp thủ công.
Chi tiết dữ liệu & cách tính
| Nhóm × Kênh | Kỳ | y |
|---|
| total | 2025-08-01 | 241.0 |
| total | 2025-09-01 | 269.0 |
| total | 2025-10-01 | 255.0 |
| total | 2025-11-01 | 283.0 |
| total | 2025-12-01 | 320.0 |
| total | 2026-01-01 | 379.0 |
| total | 2026-02-01 | 219.0 |
| total | 2026-03-01 | 201.0 |
| total | 2026-04-01 | 250.0 |
| total | 2026-05-01 | 238.0 |
Hiển thị 10/84 dòng
Tại sao quan trọng: Các phòng ban phải dùng chung một bộ số — lệch nhau gây tranh cãi khi lập ngân sách.
Cách tính: MinTrace reconciliation: ỷ = S(S'Σ⁻¹S)⁻¹S'Σ⁻¹ŷ — điều chỉnh để tổng cấp dưới cộng lại đúng bằng cấp trên.
Nguồn: forecast_reconciled.csv • cập nhật 30/07 17:30
Q8aBán hàngHàng tháng🟢 Ổn
“Nhu cầu tháng tới của từng nhóm hàng là bao nhiêu?”
Tháng 08/2026 nhu cầu dự kiến ~265 sp trên 2 nhóm hàng. Lớn nhất: Gummi (~147 sp).
Chi tiết dữ liệu & cách tính
| Nhóm hàng | Kỳ | SL dự báo |
|---|
| Comfy | 2026-08-01 | 118 |
| Comfy | 2026-09-01 | 118 |
| Comfy | 2026-10-01 | 118 |
| Gummi | 2026-08-01 | 147 |
| Gummi | 2026-09-01 | 147 |
| Gummi | 2026-10-01 | 147 |
Tại sao quan trọng: Nhập hàng và phân bổ ngân sách theo nhóm hàng.
Cách tính: Rolling average 12 tuần theo nhóm hàng (class).
Nguồn: forecast_category.csv • cập nhật 30/07 17:30
Q8bBán hàngHàng tháng🟢 Ổn
“Nhu cầu tháng tới của từng SKU là bao nhiêu?”
Tháng 08/2026 nhu cầu dự kiến ~265 sp trên 2 SKU. Top 3: GUMMI_160 (147), COMFY_160 (118).
Chi tiết dữ liệu & cách tính
| SKU | Kỳ | SL dự báo |
|---|
| COMFY_160 | 2026-08-01 | 118 |
| COMFY_160 | 2026-09-01 | 118 |
| COMFY_160 | 2026-10-01 | 118 |
| GUMMI_160 | 2026-08-01 | 147 |
| GUMMI_160 | 2026-09-01 | 147 |
| GUMMI_160 | 2026-10-01 | 147 |
Tại sao quan trọng: Đặt hàng chi tiết theo SKU.
Cách tính: Rolling average 12 tuần theo SKU.
Nguồn: forecast_product.csv • cập nhật 30/07 17:30
Q9Bán hàngHàng tháng🟡 Theo dõi
“Tháng nào trong năm bán chạy nhất, tháng nào thấp nhất?”
Đỉnh mùa: tháng 1 (cao hơn 42% so với TB). Thấp nhất: tháng 3 (thấp hơn 25%).
Thu mua→ Hành động: Tích lũy tồn kho cho tháng 1 từ trước 6-8 tuần; tháng 3 hạn chế nhập hàng, ưu tiên xả tồn.
Chi tiết dữ liệu & cách tính
| Tháng | Hệ số mùa vụ | Tăng trưởng YoY |
|---|
| 1.0 | ×1.42 | — |
| 2.0 | ×0.82 | — |
| 3.0 | ×0.75 | — |
| 4.0 | ×0.93 | — |
| 5.0 | ×0.89 | — |
| 6.0 | ×1.01 | — |
| 7.0 | ×1.07 | — |
| 8.0 | ×0.90 | -100.0% |
| 9.0 | ×1.00 | -100.0% |
| 10.0 | ×0.95 | -100.0% |
| 11.0 | ×1.06 | -100.0% |
| 12.0 | ×1.20 | -100.0% |
Tại sao quan trọng: Chuẩn bị tồn kho, nhân sự và lịch marketing cho mùa cao điểm.
Cách tính: seasonal_factor = doanh số TB tháng / TB chung. >1 = trên TB, <1 = dưới TB. YoY = (năm nay - năm trước) / năm trước × 100%.
Nguồn: monthly_analysis.csv • cập nhật 30/07 17:30
Q10Bán hàngHàng tuần🟢 Ổn
“Kênh nào đang bán chạy nhất? Kho nào xuất hàng nhiều nhất?”
Đóng góp theo kênh: Offline 41%, Ecom 35%, Online 23%.
Kho xuất nhiều nhất: BDI01-KC (429 sp).
Bán hàng→ Hành động: Ưu tiên ngân sách marketing và nhân sự cho kênh Offline; xem lại hiệu quả chi phí các kênh nhỏ.
Chi tiết dữ liệu & cách tính
| Kênh/Kho | Sản lượng | Loại |
|---|
| Ecom | 1,140 | sales |
| Offline | 1,323 | sales |
| Online | 749 | sales |
| BDI01-KC | 429 | inventory |
| BNI03-KC | 326 | inventory |
| HMIKT-TM | 275 | inventory |
| HNIKT-TM | 6 | inventory |
Tại sao quan trọng: Ngân sách marketing, diện tích kho và nhân sự nên phân bổ theo đóng góp của kênh.
Cách tính: channel_pct = doanh thu kênh / tổng doanh thu × 100%. Xếp hạng kho theo tổng sản lượng.
Nguồn: location_analysis.csv • cập nhật 30/07 17:30
Q18Tài chínhTheo yêu cầu🟡 Theo dõi
“Giá bán ảnh hưởng thế nào đến sản lượng? Tăng giá bao nhiêu thì an toàn?”
6/6 nhóm hàng × kênh ít nhạy giá (|e|<1) — tăng giá 3-5% gần như không làm giảm sản lượng. Nhạy giá nhất: Gummi / Offline (e=1.00).
Tài chính→ Hành động: Ưu tiên tăng giá ở nhóm ít nhạy giá; giữ giá hoặc dùng khuyến mãi cho Gummi/Offline.
Chi tiết dữ liệu & cách tính
| Nhóm hàng | Độ co giãn giá | R² | Giá TB | SL TB/ngày | Nhạy giá? | Số điểm dữ liệu | Kênh |
|---|
| Comfy | 0.00 | — | 2 tr | 1.0 | False | 11 | Offline |
| Comfy | 0.00 | -0.00 | 2 tr | 1.1 | False | 28 | Online |
| Gummi | 0.02 | 0.00 | 2 tr | 1.4 | False | 30 | Online |
| Gummi | 0.05 | 0.00 | 2 tr | 2.3 | False | 30 | Ecom |
| Comfy | 0.09 | 0.00 | 2 tr | 3.6 | False | 30 | Ecom |
| Gummi | 1.00 | 0.03 | 2 tr | 2.7 | False | 30 | Offline |
Tại sao quan trọng: Quyết định tăng giá hay khuyến mãi mà không mất khách hoặc mỏng biên lãi.
Cách tính: Log-log regression: ln(qty) = α + β×ln(price). |β|>1 = nhạy giá (tăng giá mất nhiều sản lượng), |β|<1 = ít nhạy giá.
Nguồn: price_elasticity.csv • cập nhật 30/07 17:30
Tồn kho & Nhập hàng (Q2–Q13) (1 cần hành động)
Q2Thu muaHàng ngày🟢 Ổn
“SKU nào sắp hết hàng hoặc đang tồn quá nhiều?”
✅ Tất cả 0 SKU đều đủ hàng đến cuối tháng.
Chi tiết dữ liệu & cách tính
| SKU | Tồn kho | Bán TB/ngày | Số ngày đủ bán | Leadtime (ngày) | Trạng thái | Ghi chú |
|---|
| COMFY_160 | 210 | 5.0 | 42.0 | 20.0 | TỒN DƯ | Tồn DƯ — 42 ngày |
| GUMMI_160 | 295 | 6.4 | 46.3 | 15.0 | TỒN DƯ | Tồn DƯ — 46 ngày |
| AMANDO_180 | 505 | 0.0 | inf | 60.0 | TỒN DƯ | Tồn DƯ — ∞ ngày |
| BEDGEAR_X | 3 | 0.0 | inf | 75.0 | TỒN DƯ | Tồn DƯ — ∞ ngày |
| SAFFRON_K | 13 | 0.0 | inf | 45.0 | TỒN DƯ | Tồn DƯ — ∞ ngày |
| TEMPUR_160 | 10 | 0.0 | inf | 120.0 | TỒN DƯ | Tồn DƯ — ∞ ngày |
Tại sao quan trọng: Hết hàng = mất doanh thu và mất khách. Phát hiện sớm để đặt hàng kịp trước khi cháy kho.
Cách tính: days_of_inventory = tồn kho / bán TB ngày. SHORTAGE nếu số ngày đủ bán < số ngày còn lại trong tháng; CRITICAL nếu < leadtime.
Nguồn: shortage_alerts.csv • cập nhật 30/07 17:30
Q3Thu muaHàng tuần🟢 Ổn
“Cần đặt hàng thêm những SKU nào, số lượng bao nhiêu?”
✅ Chưa cần đặt thêm — tất cả SKU đang trên điểm đặt hàng (reorder point).
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Đặt đúng lượng để không hết hàng cũng không chôn vốn vào kho.
Cách tính: reorder_point = nhu cầu ngày × leadtime + tồn an toàn (z=1.65). order_qty = max(MOQ, reorder_point + nhu cầu kỳ - tồn hiện tại).
Nguồn: reorder_suggestions.csv • cập nhật 30/07 17:30
Q13Vận hànhHàng tuần🔴 Cần hành động
“SKU nào đang tồn kho dư so với tốc độ bán?”
🟡 8 SKU tồn dư — tồn kho vượt mức cần thiết. Nặng nhất: AMANDO_180 (inf ngày), TEMPUR_160 (inf ngày).
Vận hành→ Hành động: Xả tồn bằng khuyến mãi/bundle cho các SKU trên; tạm dừng nhập thêm cho đến khi về mức an toàn.
Chi tiết dữ liệu & cách tính
| SKU | Số ngày đủ bán | Tình trạng tồn | Leadtime (ngày) |
|---|
| GUMMI_160 | 87.2 | overstock | 15 |
| AMANDO_180 | inf | overstock | 60 |
| AMANDO_180 | inf | overstock | 60 |
| TEMPUR_160 | inf | overstock | 120 |
| TEMPUR_160 | inf | overstock | 120 |
| BEDGEAR_X | inf | overstock | 75 |
| BEDGEAR_X | inf | overstock | 75 |
| SAFFRON_K | inf | overstock | 45 |
Tại sao quan trọng: Tồn dư chôn vốn lưu động, tốn chi phí kho, rủi ro lỗi mốt — cần xả sớm.
Cách tính: OVERSTOCK nếu days_of_inventory > leadtime + tồn an toàn + kỳ mua hàng. excess_qty = tồn - bán TB × ngưỡng.
Nguồn: overstock_analysis.csv • cập nhật 30/07 17:30
Q12MarketingHàng tuần🟡 Theo dõi
“Khi chạy flash sale, cần gấp bao nhiêu lần tồn kho ngày thường?”
⚡ Khi chạy promo, GUMMI_160 bán gấp 1.1 lần ngày thường (TB 2.1 → 2.4 sp/ngày).
Marketing→ Hành động: Chuẩn bị tồn kho tối thiểu ×1 cho SKU trên trước flash sale.
Chi tiết dữ liệu & cách tính
| SKU | SL ngày thường | SL ngày promo | Hệ số uplift |
|---|
| COMFY_160 | 1.7 | 0.0 | 0.00 |
| GUMMI_160 | 2.1 | 2.4 | 1.14 |
Tại sao quan trọng: Chuẩn bị kho cho flash sale: thiếu hàng mất doanh thu, thừa hàng phải xả lỗ sau chiến dịch.
Cách tính: uplift = bán TB ngày promo / bán TB ngày thường. Tồn cần chuẩn bị = nhu cầu thường × uplift.
Nguồn: stocking_analysis.csv • cập nhật 30/07 17:30
Kế hoạch & Cảnh báo (dp1–dp3) (1 cần hành động)
dp1Bán hàngHàng ngày🟢 Ổn
“Doanh số tháng này đang vượt hay hụt so với chỉ tiêu?”
Tháng 2026-07: ✅ tất cả 0 nhóm đang đúng tiến độ chỉ tiêu.
Chi tiết dữ liệu & cách tính
| Nhóm hàng | Kênh | Doanh số thực | Chỉ tiêu | Lệch so chỉ tiêu | Trạng thái | Ghi chú |
|---|
| Gummi | Offline | 5,970,000 | 119,400,000 | 55.0% | VƯỢT | Vượt target 55% |
| Comfy | Ecom | 9,960,000 | 136,950,000 | 125.5% | VƯỢT | Vượt target 125% |
| Gummi | Online | 1,990,000 | 63,680,000 | -3.1% | ĐÚNG | Đúng target |
| Gummi | Ecom | 3,980,000 | 109,450,000 | 12.7% | ĐÚNG | Đúng target |
| Comfy | Online | 2,490,000 | 74,700,000 | 3.3% | ĐÚNG | Đúng target |
| Comfy | Offline | 0 | 136,950,000 | -100.0% | HỤT | Under Target 100% |
Tại sao quan trọng: Phát hiện hụt chỉ tiêu giữa tháng để còn kịp xử lý — đợi cuối tháng là quá muộn.
Cách tính: expected_MTD = target tháng / số ngày × ngày đã qua. variance% = (actual - expected) / expected. Cảnh báo khi |variance| > 30%.
Nguồn: target_actual_alerts.csv • cập nhật 30/07 17:30
dp3Thu muaHàng ngày🔴 Cần hành động
“Hôm nay có bao nhiêu cảnh báo cần xử lý?”
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Một màn hình duy nhất mỗi sáng: gộp cảnh báo doanh số và tồn kho, xếp theo mức độ ưu tiên.
Cách tính: Gộp alerts từ dp1 (target vs actual) và q2 (tồn kho), sắp xếp theo severity.
Nguồn: target_actual_alerts.csv, shortage_alerts.csv • cập nhật 30/07 17:30
Khách hàng & Gợi ý (Q11–Q17) (1 cần hành động)
Q11MarketingHàng tuần🟢 Ổn
“Khách hàng đang được chia thành những nhóm nào, nhóm nào đông nhất?”
👥 6 khách hàng trong 2 nhóm (new_starter: 5, deal_hunter: 1).
Chi tiết dữ liệu & cách tính
| Phân khúc | Số KH | Cảm xúc chính | Vòng đứng chính | Lý do mua chính |
|---|
| deal_hunter | 1 | neutral | new | general |
| new_starter | 5 | neutral | new | general |
Tại sao quan trọng: Marketing một kiểu cho mọi khách là lãng phí — chiến dịch theo nhóm có ROI cao gấp 3-5 lần.
Cách tính: Phân nhóm theo luật trên 10 tiêu chí (tần suất, độ mới, cảm xúc, vòng đứng, lý do mua...) → 9 nhóm hành vi.
Nguồn: customer_segments.csv, customer_criteria_tags.csv • cập nhật 30/07 17:30
Q14MarketingHàng tuần🟡 Theo dõi
“Nên gợi ý sản phẩm nào cho từng nhóm khách hàng?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q14
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Gợi ý đúng sản phẩm tăng giá trị đơn hàng 10-30% nhờ cross-sell đúng nhu cầu.
Cách tính: Điểm = 0.40×affinity + 0.25×phù hợp nhóm + 0.20×nhu cầu dự báo + 0.15×tồn kho. Top-N mỗi khách hàng.
Q16Tài chínhHàng tháng🟡 Theo dõi
“Nhóm khách hàng nào khỏe mạnh nhất, nhóm nào đang yếu? Ước tính doanh thu?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q16
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Biết nhóm nào đang khỏe/yếu để ưu tiên ngân sách giữ chân và phát triển đúng chỗ.
Cách tính: health_score = TB có trọng số(cảm xúc, khả năng chuyển đổi, hoạt động), thang 0-100. <40 = critical, <60 = warning.
Q17MarketingHàng tuần🔴 Cần hành động
“Phân nhóm khách theo giá trị mua hàng (RFM) — chạy chiến dịch gì cho từng nhóm?”
🛒 301 khách có lịch sử mua, tổng chi tiêu 3.0 tỷ. ⭐ Champions: 60 • ⚠️ Nhóm nguy cơ (At Risk+Hibernating+Lost): 67.
Marketing→ Hành động: Chạy chiến dịch win-back cho 67 khách nguy cơ tuần này; giữ chân 60 Champions bằng ưu đãi VIP (xem bảng chiến dịch).
🔗 Cặp cross-sell mạnh nhất: BEDGEAR_X → GUMMI_160 (affinity 0.61, 25 lần mua cùng).
Chi tiết dữ liệu & cách tính
Chiến dịch đề xuất:| Phân khúc | Chiến lược | Chiến dịch | Ưu đãi | Thởi điểm | KPI |
|---|
| Champions | Retention & Advocacy | Chương trình Khách hàng VIP | Giảm 15% cho đơn hàng tiếp theo + quà tặng bộ ga gối cao cấp | Hàng quý (sinh nhật KH, dịp lễ) | Retention rate > 85%, AOV tăng 20% |
| Champions | Retention & Advocacy | Referral Program | Tặng 1.000.000đ cho mỗi người bạn giới thiệu mua thành công | Liên tục | 3-5 referrals/Champion/năm |
| Loyal Customers | Upsell & Cross-sell | Nâng cấp lên dòng Cao cấp | Thu cũ đổi mới — giảm đến 30% khi nâng cấp lên dòng Premium | Sau 18-24 tháng từ lần mua gần nhất | Upsell conversion > 15% |
| Loyal Customers | Upsell & Cross-sell | Combo Phụ kiện Cao cấp | Combo phụ kiện giảm 25% khi mua kèm | Sau 3-6 tháng mua nệm | Cross-sell rate > 20% |
| Potential Loyalist | Engagement & Conversion | Chương trình Tích điểm Thành viên | Đăng ký thành viên — tặng 500 điểm (tương đương 500.000đ) | Sau lần mua thứ 2 | Membership signup > 40% |
| Potential Loyalist | Engagement & Conversion | Gợi ý sản phẩm dựa trên lịch sử mua | Miễn phí giao hàng + tư vấn 1-1 qua video call | Hàng tháng | CTR email > 25% |
| At Risk | Re-engagement & Win-back | Chúng tôi nhớ bạn! | Giảm 20% + miễn phí giao hàng + quà tặng bộ chăm sóc nệm | Ngay lập tức, nhắc lại sau 14 ngày | Re-activation rate > 15% |
| At Risk | Re-engagement & Win-back | Khảo sát trải nghiệm | Hoàn thành khảo sát — nhận voucher 200.000đ | Sau 6 tháng không mua | Survey completion > 10%, insights cho cải thiện |
Hiển thị 8/9 dòng
Cross-sell:| SP A | SP B | Điểm affinity | Lift | Lý do |
|---|
| BEDGEAR_X | GUMMI_160 | 0.61 | 0.89 | Khách hàng mua Bedgear cũng quan tâm Gummi |
| BEDGEAR_X | AMANDO_180 | 0.44 | 0.75 | Khách mua Bedgear quan tâm thêm dòng Amando cùng phân khúc |
| SAFFRON_K | COMFY_160 | 0.40 | 0.51 | Khách hàng mua Saffron cũng quan tâm Comfy |
| AMANDO_180 | GUMMI_160 | 0.39 | 0.57 | Khách hàng mua Amando cũng quan tâm Gummi |
| BEDGEAR_X | COMFY_160 | 0.37 | 0.46 | Khách hàng mua Bedgear cũng quan tâm Comfy |
| AMANDO_180 | COMFY_160 | 0.35 | 0.45 | Khách hàng mua Amando cũng quan tâm Comfy |
| BEDGEAR_X | SAFFRON_K | 0.32 | 0.57 | Khách mua Bedgear quan tâm thêm dòng Saffron cùng phân khúc |
| TEMPUR_160 | COMFY_160 | 0.29 | 0.37 | Khách hàng mua Tempur cũng quan tâm Comfy |
Hiển thị 8/25 dòng
Tại sao quan trọng: RFM là chuẩn phân loại giá trị khách hàng: ai cần giữ, ai cần phát triển, ai cần kéo lại.
Cách tính: R = ngày từ lần mua cuối, F = số đơn, M = tổng chi tiêu; chấm 1-5 theo quintile → 555 = Champions, 111 = Lost. Cross-sell: lift(A→B) = P(A∩B)/(P(A)×P(B)).
Nguồn: purchase_segments.csv, campaign_recommendations.csv, product_affinity.csv • cập nhật 30/07 17:30
Customer Intelligence (chi tiết) (CI-1–CI-4) (1 cần hành động)
CI-1MarketingHàng tuần🟡 Theo dõi
“Sức khỏe chi tiết từng phân khúc khách hàng — phân khúc nào cần chú ý?”
→ Đã trả lời chi tiết tại
Q16 (cùng dữ liệu, tránh trùng lặp).
CI-2MarketingHàng tuần🔴 Cần hành động
“Chi tiết chiến dịch marketing theo phân khúc — strategy, offer, timing, KPI?”
→ Đã trả lời chi tiết tại
Q17 (cùng dữ liệu, tránh trùng lặp).
CI-3MarketingHàng tuần🔴 Cần hành động
“Cặp sản phẩm nào hay được mua cùng nhau (cross-sell)?”
→ Đã trả lời chi tiết tại
Q17 (cùng dữ liệu, tránh trùng lặp).
CI-4MarketingHàng ngày🔴 Cần hành động
“Khách hàng nào cần được chăm sóc ngay hôm nay?”
🔔 5 khách hàng cần chăm sóc (PRICE_SENSITIVE_LEAD: 5).
Marketing→ Hành động: Gửi chương trình khuyến mãi, trả góp 0%, quà tặng kèm — ưu tiên khách có điểm ưu tiên cao nhất (xem bảng).
Chi tiết dữ liệu & cách tính
| Khách hàng | Trạng thái | Ưu tiên | Lý do | Hành động gợi ý |
|---|
| KH001 | PRICE_SENSITIVE_LEAD | medium | Price sensitivity: rất_nhạy (score: 1.00) | Gửi chương trình khuyến mãi, trả góp 0%, quà tặng kèm |
| KH002 | PRICE_SENSITIVE_LEAD | medium | Price sensitivity: hơi_nhạy (score: 0.60) | Gửi chương trình khuyến mãi, trả góp 0%, quà tặng kèm |
| KH004 | PRICE_SENSITIVE_LEAD | medium | Price sensitivity: rất_nhạy (score: 1.00) | Gửi chương trình khuyến mãi, trả góp 0%, quà tặng kèm |
| KH005 | PRICE_SENSITIVE_LEAD | medium | Price sensitivity: hơi_nhạy (score: 0.60) | Gửi chương trình khuyến mãi, trả góp 0%, quà tặng kèm |
| KH009 | PRICE_SENSITIVE_LEAD | medium | Price sensitivity: hơi_nhạy (score: 0.60) | Gửi chương trình khuyến mãi, trả góp 0%, quà tặng kèm |
Tại sao quan trọng: Cảnh báo khách sắp rồi trong ngày giúp can thiệp trước khi mất khách hẳn.
Cách tính: churn_risk: >90 ngày không mua. complaint: cảm xúc < -0.5. value_drop: chi tiêu gần đây < 50% TB. Ưu tiên theo điểm rủi ro tổng hợp.
Nguồn: alerts.csv • cập nhật 30/07 17:30
Supply Chain (chi tiết) (SC-1–SC-3)
SC-1Thu muaHàng ngày🟢 Ổn
“SKU nào có nguy cơ hết hàng trước cuối tháng? Cần đặt hàng khẩn không?”
→ Đã trả lời chi tiết tại
Q2 (cùng dữ liệu, tránh trùng lặp).
SC-2Vận hànhHàng tuần🔴 Cần hành động
“SKU nào đang tồn dư? Cần giải phóng tồn kho không?”
→ Đã trả lời chi tiết tại
Q13 (cùng dữ liệu, tránh trùng lặp).
SC-3Thu muaHàng tuần🟢 Ổn
“Cần đặt thêm những SKU nào? Số lượng bao nhiêu? Đã tạo PO chưa?”
→ Đã trả lời chi tiết tại
Q3 (cùng dữ liệu, tránh trùng lặp).
Demand Forecast Intelligence (chi tiết) (DF-1–DF-5)
DF-1Bán hàngHàng ngày🟢 Ổn
“Doanh số thực tế có đạt kế hoạch tháng không? Bao nhiêu % vượt/dưới?”
→ Đã trả lời chi tiết tại
dp1 (cùng dữ liệu, tránh trùng lặp).
DF-2Bán hàngHàng tháng🟡 Theo dõi
“Dự báo 3 tháng tới theo nhóm hàng × kênh, kèm khoảng tin cậy?”
→ Đã trả lời chi tiết tại
Q1 (cùng dữ liệu, tránh trùng lặp).
DF-3Vận hànhHàng ngày🟡 Theo dõi
“Có ngày nào doanh số bất thường cần điều tra không?”
⚠️ 4 ngày doanh số bất thường: 2026-07-05, 2026-07-06, 2026-07-19, 2026-07-20.
Vận hành→ Hành động: Đối chiếu các ngày trên với sự kiện marketing/lỗi nhập liệu trước khi tin vào dự báo.
Chi tiết dữ liệu & cách tính
| Kỳ | Điểm bất thường | Bất thường? | SKU |
|---|
| 2026-07-05 | 2.41 | 1 | COMFY_160 |
| 2026-07-06 | 2.38 | 1 | COMFY_160 |
| 2026-07-19 | 3.80 | 1 | GUMMI_160 |
| 2026-07-20 | 3.81 | 1 | GUMMI_160 |
Tại sao quan trọng: Ngày bất thường có thể là lỗi dữ liệu, gian lận, hoặc sự kiện viral — tất cả đều cần điều tra.
Cách tính: Isolation Forest trên doanh thu ngày; 5% điểm bất thường cao nhất bị gắn cờ (contamination=5%).
Nguồn: anomaly_scores.csv • cập nhật 30/07 17:30
DF-4Bán hàngHàng tháng🟡 Theo dõi
“Mùa nào bán chạy nhất? Xu hướng năm-qua-năm ra sao?”
→ Đã trả lời chi tiết tại
Q9 (cùng dữ liệu, tránh trùng lặp).
DF-5Bán hàngHàng tuần🟢 Ổn
“Doanh số phân bổ theo kênh/kho như thế nào?”
→ Đã trả lời chi tiết tại
Q10 (cùng dữ liệu, tránh trùng lặp).
Executive (CEO/CFO) (Q21–fp1) (1 cần hành động)
Q21Tài chínhHàng tuần🟡 Theo dõi
“Tình hình kinh doanh tổng quan tháng này ra sao?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q21
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Lãnh đạo cần một trang duy nhất để nắm sức khỏe kinh doanh mỗi tuần.
Cách tính: Tổng hợp KPI từ mọi bước pipeline (doanh số, tồn kho, cảnh báo, phân khúc).
Q22Tài chínhHàng tuần🟡 Theo dõi
“8 tuần tới tiền về và tiền ra dự kiến bao nhiêu? Có nguy cơ thiếu tiền không?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q22
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Thiếu tiền mặt là nguyên nhân số 1 khiến doanh nghiệp thất bại — phải nhìn trước 8 tuần.
Cách tính: inflow = dự báo × giá × tỷ lệ thu tiền. outflow = COGS × tỷ lệ trả + mua hàng bổ sung. Số dư lũy kế 8 tuần, 3 kịch bản.
Q23Thu muaHàng tháng🟡 Theo dõi
“Nhà cung cấp nào đang giao hàng tốt, nhà nào cần đàm phán lại?”
📋 Nhà cung cấp tốt nhất: DeNhat (hạng A, 80đ — Duy trì + mở rộng). Thấp nhất: Saffron (hạng D, 29đ).
Thu mua→ Hành động: Đàm phán lại hoặc tìm nhà cung cấp thay thế cho Saffron (hạng D).
Chi tiết dữ liệu & cách tính
| Nhà cung cấp | Số SKU | Leadtime TB | Leadtime dao động | MOQ TB | Tổng SL bán | SKU rủi ro hết hàng | price_tier_avg | Điểm tổng | Hạng | Khuyến nghị |
|---|
| DeNhat | 1 | 15.0 | 0.0 | 40.0 | 1,773 | 1 | 2.0 | 80.00 | A | Duy trì + mở rộng |
| Vinatech | 1 | 20.0 | 0.0 | 40.0 | 1,439 | 1 | 2.0 | 72.90 | B | Duy trì + mở rộng |
| Bedgear | 1 | 75.0 | 0.0 | 1.0 | 0 | 0 | 3.0 | 52.90 | C | Mở rộng nếu có thể |
| Tempur | 1 | 120.0 | 0.0 | 1.0 | 0 | 0 | 4.0 | 40.00 | C | Mở rộng nếu có thể |
| Saffron | 2 | 52.5 | 10.6 | 20.5 | 0 | 0 | 3.0 | 29.30 | D | Cân nhắc thay thế |
Tại sao quan trọng: Nhà cung cấp trễ hàng làm hỏng cả chuỗi đặt hàng — cần số liệu để đàm phán hoặc thay thế.
Cách tính: composite = 0.4×đúng hẹn + 0.3×chất lượng + 0.3×ổn định leadtime → hạng A/B/C/D.
Nguồn: supplier_scorecard.csv • cập nhật 30/07 17:30
Q24Vận hànhHàng tháng🔴 Cần hành động
“Hàng tồn kho quay bao nhiêu vòng? SKU nào 'chết' (không bán được)?”
🔄 Vòng quay tồn kho TB: 2.1 vòng/năm. Chậm/chết: 7 SKU trên tổng 11 dòng.
Vận hành→ Hành động: Thanh lý/đẩy bán 7 SKU quay chậm: AMANDO_180, TEMPUR_160, BEDGEAR_X — giải phóng vốn chôn trong kho.
Chi tiết dữ liệu & cách tính
| SKU | Nhóm hàng | Kho | SL bán | Tồn TB | Vòng quay/năm | Số ngày tồn kho | Đánh giá | Điểm hiệu quả |
|---|
| GUMMI_160 | Gummi | BDI01-KC | 665.0 | 120 | 5.54 | 66.0 | excellent | 95.40 |
| GUMMI_160 | Gummi | BNI03-KC | 1,108 | 200 | 5.54 | 66.0 | excellent | 95.40 |
| COMFY_160 | Comfy | BDI01-KC | 501.0 | 80 | 6.26 | 58.0 | excellent | 90.00 |
| COMFY_160 | Comfy | BNI03-KC | 938.0 | 150 | 6.26 | 58.0 | excellent | 90.00 |
| AMANDO_180 | Amando | BDI01-KC | 0.0 | 250 | 0.00 | inf | dead | 0.00 |
| AMANDO_180 | Amando | HMIKT-TM | 0.0 | 300 | 0.00 | inf | dead | 0.00 |
| TEMPUR_160 | Tempur | BDI01-KC | 0.0 | 5 | 0.00 | inf | dead | 0.00 |
| TEMPUR_160 | Tempur | HNIKT-TM | 0.0 | 8 | 0.00 | inf | dead | 0.00 |
| BEDGEAR_X | Bedgear | BDI01-KC | 0.0 | 0 | 0.00 | inf | dead | 0.00 |
| BEDGEAR_X | Bedgear | BNI03-KC | 0.0 | 3 | 0.00 | inf | dead | 0.00 |
Hiển thị 10/11 dòng
Tại sao quan trọng: Vòng quay thấp = tiền nằm chết trong kho thay vì sinh lợi.
Cách tính: turnover = COGS năm / giá trị tồn TB. DIO = 365/turnover. dead = 90 ngày không bán mà vẫn còn tồn.
Nguồn: inventory_turnover.csv • cập nhật 30/07 17:30
Q25Tài chínhHàng tháng🟡 Theo dõi
“Doanh thu tháng này đạt bao nhiêu % chỉ tiêu?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps q25
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Theo dõi tiến độ doanh thu để điều chỉnh kịp trong tháng (MTD/QTD/YTD).
Cách tính: pct_achieved = actual / target đã phân bổ × 100%. So với cùng kỳ năm trước khi có dữ liệu.
fp1Tài chínhTheo yêu cầu🟡 Theo dõi
“Với dự báo hiện tại, doanh thu và lãi gộp tuần/tháng/quý/năm tới là bao nhiêu?”
⚠️ Chưa có dữ liệu. → Tạo dữ liệu: python run_pipeline.py --pipeline forecasting --steps fp1
Chi tiết dữ liệu & cách tính
Tại sao quan trọng: Lập kế hoạch tiền mặt và ngân sách theo nhiều kịch bản (cơ sở/lạc quan/bi quan).
Cách tính: revenue = SL dự báo × giá × hệ số kịch bản. COGS = revenue × tỷ lệ giá vốn. margin = revenue - COGS. 4 kịch bản × 5 kỳ (W/M/Q/HY/Y).
VuaNem Executive Intelligence — mọi câu hỏi kinh doanh trong một file
×