Hướng Dẫn Toàn Diện: Quản Lý Chuỗi Cửa Hàng Thời Trang Với Google Sheets

Tuân HoangTuân Hoang
21 tháng 11, 2026
15 phút đọc
Hướng Dẫn Toàn Diện: Quản Lý Chuỗi Cửa Hàng Thời Trang Với Google Sheets

Hướng Dẫn Toàn Diện: Quản Lý Chuỗi Cửa Hàng Thời Trang Với Google Sheets

Ngành thời trang Việt Nam đang phát triển với tốc độ vũ bão — theo báo cáo 2026, thị trường bán lẻ thời trang đạt hơn 4 tỷ USD, với hàng nghìn chuỗi cửa hàng vừa và nhỏ đang mở rộng. Tuy nhiên, quản lý chuỗi cửa hàng thời trang phức tạp hơn nhiều so với cửa hàng đơn lẻ: tồn kho theo size, màu sắc, mẫu mã, kiểm soát nhiều chi nhánh cùng lúc, phân tích doanh thu từng điểm bán...

Bài viết này sẽ hướng dẫn bạn xây dựng hệ thống quản lý chuỗi cửa hàng thời trang hoàn chỉnh bằng Google Sheets — đủ mạnh cho chuỗi 2-10 cửa hàng mà không tốn chi phí phần mềm đắt tiền.

1. Thách Thức Đặc Thù Ngành Thời Trang

Quản lý chuỗi cửa hàng thời trang khác với bán lẻ thông thường ở nhiều điểm:

Phức tạp SKU (Stock Keeping Unit)

Một sản phẩm áo phông đơn giản có thể tạo ra hàng chục SKU khác nhau:

  • Màu sắc: Trắng, đen, xám, xanh navy, đỏ đô, hồng pastel → 6 màu
  • Size: XS, S, M, L, XL, XXL → 6 size
  • Tổng SKU: 6 × 6 = 36 biến thể chỉ cho 1 mẫu áo

Với 50 mẫu sản phẩm, bạn có thể có đến 1.800 SKU cần quản lý.

Vòng đời sản phẩm ngắn

Thời trang theo mùa vụ, xu hướng thay đổi nhanh:

  • Bộ sưu tập xuân-hè, thu-đông ra mới mỗi 6 tháng
  • Sản phẩm cũ cần markdown giá, thanh lý tồn kho
  • Dự báo nhu cầu cho mùa tiếp theo dựa trên data lịch sử

Điều chuyển hàng giữa chi nhánh

Chi nhánh A thừa size M, chi nhánh B thiếu — cần hệ thống điều chuyển minh bạch, có chứng từ đầy đủ.

Khuyến mãi phức tạp

Mua 2 giảm 10%, Flash sale cuối tuần, giảm giá theo nhóm sản phẩm, coupon riêng từng chi nhánh...

2. Kiến Trúc Hệ Thống Google Sheets Cho Chuỗi

Cấu trúc khuyến nghị gồm 1 Master File + N Branch Files:

Master File (Trụ sở)

Sheet TabMô tảCập nhật
PRODUCTSDanh mục sản phẩm + SKU masterKhi có SP mới
INVENTORY_MASTERTổng tồn kho toàn chuỗiTự động từ branches
SALES_CONSOLIDATEDDoanh thu tổng hợp tất cả CNHàng ngày
TRANSFER_LOGLịch sử điều chuyển hàngKhi có transfer
PROMOTIONSChương trình khuyến mãiKhi có KM
STAFF_KPIKPI nhân viên toàn chuỗiCuối tuần/tháng
REPORTSDashboard báo cáo tổng hợpAuto

Branch File (Mỗi chi nhánh)

Sheet TabMô tả
SALES_DAILYDoanh số bán hàng từng ngày
INVENTORY_LOCALTồn kho tại chi nhánh
RETURNSHàng đổi trả
STAFFCa làm việc, doanh số theo nhân viên
CASH_REGISTERĐối soát tiền mặt / chuyển khoản

Sơ đồ luồng dữ liệu

Branch 1 File ──┐
Branch 2 File ──┤──→ Master File (IMPORTRANGE) ──→ Dashboard Báo Cáo
Branch 3 File ──┘

Dùng hàm IMPORTRANGE để kéo dữ liệu từ các branch file vào master tự động.

3. Quản Lý Tồn Kho Theo Size & Màu Sắc

Cấu trúc bảng PRODUCTS

Thiết kế bảng danh mục sản phẩm với đầy đủ thông tin SKU:

CộtDữ liệu mẫuGhi chú
SKUAT001-TRG-MMã duy nhất: [MaSP]-[Màu]-[Size]
Product_CodeAT001Mã sản phẩm gốc
Product_NameÁo Thun BasicTên sản phẩm
CategoryÁoDanh mục
ColorTrắngMàu sắc
SizeMKích cỡ
Cost_Price85000Giá nhập
Selling_Price199000Giá bán lẻ
SeasonXH2026Bộ sưu tập
StatusActiveActive/Discontinued/Clearance

Công thức tạo SKU tự động

=B2&"-"&LEFT(D2,3)&"-"&E2
'Kết quả: AT001-TRG-M (Áo Thun 001 - Trắng - M)

Ma trận tồn kho Size × Màu

Tạo pivot table động để xem tồn kho theo dạng ma trận trực quan:

'Sheet INVENTORY_MATRIX
'Hàng: Màu sắc | Cột: Size (XS, S, M, L, XL, XXL)

=COUNTIFS(INVENTORY!$C:$C, B$1, INVENTORY!$D:$D, $A2, INVENTORY!$E:$E, ">0")

'Hoặc dùng SUMIF để tính tổng số lượng:
=SUMIFS(INVENTORY!$F:$F, INVENTORY!$C:$C, B$1, INVENTORY!$D:$D, $A2)

Cảnh báo tồn kho thấp

'Conditional Formatting: Format cells where value is less than 3
'Rule: =F2<3 → màu đỏ (hết hàng nguy cơ)
'Rule: =F2<10 → màu vàng (cần đặt thêm)

'Công thức cột ALERT:
=IF(F2=0,"HẾT HÀNG",IF(F2<3,"NGUY HIỂM",IF(F2<10,"CẢNH BÁO","OK")))

4. Kiểm Soát Tồn Kho Nhiều Chi Nhánh

Bảng tổng hợp tồn kho toàn chuỗi

Tại Master File, tạo sheet INVENTORY_MASTER kéo dữ liệu từ tất cả chi nhánh:

'Kéo dữ liệu từ Branch 1:
=IMPORTRANGE("URL_BRANCH_1","INVENTORY_LOCAL!A2:G500")

'Kéo dữ liệu từ Branch 2 (vào dòng tiếp theo):
=IMPORTRANGE("URL_BRANCH_2","INVENTORY_LOCAL!A2:G500")

Tổng tồn kho theo SKU toàn chuỗi

'Sheet INVENTORY_CONSOLIDATED
'Cột A: SKU (unique)
'Cột B: CN1
'Cột C: CN2
'Cột D: CN3
'Cột E: Tổng toàn chuỗi

=SUMIF(INVENTORY_MASTER!$A:$A, A2, INVENTORY_MASTER!$F:$F)  'CN1
=SUMIF(INVENTORY_MASTER!$A:$A, A2, INVENTORY_MASTER!$G:$G)  'CN2
=SUM(B2:D2)  'Tổng

Quản lý điều chuyển hàng giữa chi nhánh

Mỗi phiếu điều chuyển cần ghi đầy đủ:

CộtMô tả
Transfer_IDMã phiếu duy nhất (VD: TR-20261115-001)
DateNgày điều chuyển
From_BranchChi nhánh xuất
To_BranchChi nhánh nhận
SKUMã sản phẩm
QuantitySố lượng
StatusPending/Confirmed/Received
Approved_ByNgười duyệt
NoteGhi chú

Kiểm kê định kỳ (Stocktake)

'Công thức tính chênh lệch tồn kho (Variance):
=Physical_Count - System_Stock

'Tỷ lệ chính xác tồn kho:
=COUNTIF(Variance_Column,"0")/COUNTA(SKU_Column)

'Target: >98% accuracy

5. Báo Cáo Doanh Thu Theo Cửa Hàng

Bảng ghi nhận doanh số ngày (Branch File)

DateInvoice_NoSKUProduct_NameQtyUnit_PriceDiscountTotalStaffPayment
2026-11-15INV-001AT001-TRG-MÁo Thun Basic Trắng M21990000398000Nguyễn AQR
2026-11-15INV-001QJ002-DEN-LQuần Jean Slim Đen L145900020000439000Nguyễn AQR

Dashboard doanh thu theo chi nhánh

'Doanh thu hôm nay (mỗi chi nhánh):
=SUMIF(SALES_DAILY!$A:$A,TODAY(),SALES_DAILY!$H:$H)

'So sánh với cùng kỳ tháng trước:
=SUMIFS(SALES_DAILY!$H:$H,SALES_DAILY!$A:$A,">="&DATE(YEAR(TODAY()),MONTH(TODAY())-1,1),SALES_DAILY!$A:$A,"<="&EOMONTH(TODAY(),-1))

'% tăng trưởng:
=(ThisMonth-LastMonth)/LastMonth*100

Phân tích Top sản phẩm bán chạy

'Dùng QUERY để lấy top 10 SKU bán chạy nhất:
=QUERY(SALES_DAILY!A:H,
  "SELECT C, D, SUM(E), SUM(H)
   WHERE A >= date '"&TEXT(DATE(YEAR(TODAY()),MONTH(TODAY()),1),"yyyy-mm-dd")&"'
   GROUP BY C, D
   ORDER BY SUM(H) DESC
   LIMIT 10
   LABEL SUM(E) 'SL Bán', SUM(H) 'Doanh Thu'")

Phân tích theo danh mục sản phẩm

'Doanh thu theo category:
=QUERY({SALES_DAILY!C:H,PRODUCTS!B:B},
  "SELECT Col6, SUM(Col6) GROUP BY Col6 ORDER BY SUM(Col6) DESC")

6. Quản Lý Hoạt Động Khuyến Mãi

Bảng quản lý chương trình KM

CộtMô tảVí dụ
Promo_CodeMã chương trìnhSALE1121
Promo_NameTên chương trìnhBlack Friday 11/11
Start_DateNgày bắt đầu2026-11-11
End_DateNgày kết thúc2026-11-13
TypeLoại KMPercentage/Fixed/Buy2Get1
ValueGiá trị giảm30 (30% hoặc 30K)
Min_OrderĐơn hàng tối thiểu500000
Apply_ToÁp dụng choALL/Category/SKU
BranchChi nhánh áp dụngALL/CN1/CN2
BudgetNgân sách KM50000000
Used_AmountĐã dùngAuto
StatusTrạng tháiActive/Expired/Paused

Công thức tính giá sau khuyến mãi

'Tính giá sau KM (áp dụng KM đang active):
=IF(TODAY()>=PROMOTIONS!C2,IF(TODAY()<=PROMOTIONS!D2,
  IF(PROMOTIONS!E2="Percentage", Price*(1-PROMOTIONS!F2/100),
  IF(PROMOTIONS!E2="Fixed", Price-PROMOTIONS!F2, Price)),
Price), Price)

'Kiểm tra KM đang active:
=IF(AND(TODAY()>=C2,TODAY()<=D2,F2>0),"ACTIVE","INACTIVE")

Phân tích hiệu quả khuyến mãi

'Doanh thu trong kỳ KM vs. cùng kỳ không KM:
'Tính doanh thu trung bình ngày không có KM:
Avg_Daily_NoPromo = AVERAGEIFS(SALES!Revenue, SALES!Date, "<"&Promo_Start)

'Doanh thu trung bình ngày có KM:
Avg_Daily_WithPromo = (Total_Promo_Revenue / Promo_Days)

'Lift factor:
Lift = Avg_Daily_WithPromo / Avg_Daily_NoPromo

'ROI khuyến mãi:
ROI = (Incremental_Revenue - Promo_Cost) / Promo_Cost * 100

7. KPI Nhân Viên Bán Hàng

Khung KPI cho nhân viên thời trang

KPIMô tảTargetTrọng số
Doanh số cá nhânTổng doanh thu do NV tạo ra15M/tháng40%
Số đơn hàngSố hóa đơn xử lý80 đơn/tháng15%
Giá trị trung bình/đơnAOV - Average Order Value400K+15%
Tỷ lệ upsell% đơn hàng có thêm sản phẩm>30%15%
Chuyên cầnTỷ lệ đi làm đúng giờ>95%10%
Customer satisfactionĐiểm đánh giá từ khách>4.5/55%

Bảng tracking KPI tự động

'Doanh số cá nhân trong tháng:
=SUMIFS(SALES_DAILY!$H:$H,
  SALES_DAILY!$I:$I, Staff_Name,
  SALES_DAILY!$A:$A, ">="&DATE(YEAR(TODAY()),MONTH(TODAY()),1),
  SALES_DAILY!$A:$A, "<="&TODAY())

'Số đơn hàng:
=COUNTIFS(SALES_DAILY!$I:$I, Staff_Name,
  SALES_DAILY!$A:$A, ">="&DATE(YEAR(TODAY()),MONTH(TODAY()),1))

'AOV (Average Order Value):
=IFERROR(Doanh_So/So_Don, 0)

'KPI score tổng hợp (0-100):
=MIN(Doanh_So/Target_DS,1)*40 + MIN(So_Don/Target_Don,1)*15 + 
 MIN(AOV/Target_AOV,1)*15 + Upsell_Rate*15 + Chuyen_Can*10 + CSAT*5

Bảng xếp hạng nhân viên

'Xếp hạng trong chi nhánh:
=RANK(KPI_Score, KPI_Range, 0)

'Top performer badge:
=IF(RANK(KPI_Score,KPI_Range,0)=1,"🥇 Champion",
  IF(RANK(KPI_Score,KPI_Range,0)=2,"🥈 Runner-up",
  IF(RANK(KPI_Score,KPI_Range,0)=3,"🥉 3rd","")))

8. Báo Cáo Tuần & Tháng Tự Động

Dashboard báo cáo tuần

'Tuần hiện tại (Thứ 2 - Chủ nhật):
Week_Start = TODAY()-WEEKDAY(TODAY(),2)+1
Week_End = Week_Start + 6

'Doanh thu tuần này toàn chuỗi:
=SUMPRODUCT((SALES!Date>=Week_Start)*(SALES!Date<=Week_End)*SALES!Revenue)

'So với tuần trước:
Prev_Week_Start = Week_Start - 7
Prev_Week_End = Week_End - 7
=SUMPRODUCT((SALES!Date>=Prev_Week_Start)*(SALES!Date<=Prev_Week_End)*SALES!Revenue)

'% thay đổi:
=(This_Week - Prev_Week) / Prev_Week * 100

Báo cáo tháng tự động

Tạo sheet MONTHLY_REPORT với các section:

  1. Executive Summary: Tổng doanh thu, lợi nhuận gộp, so sánh tháng trước, % hoàn thành KPI
  2. Doanh thu theo chi nhánh: Bảng so sánh, biểu đồ cột
  3. Top sản phẩm: Top 10 bán chạy, top 10 doanh thu cao nhất
  4. Tồn kho: Hàng chậm luân chuyển, cảnh báo hết hàng, đề xuất nhập
  5. Nhân sự: Bảng xếp hạng KPI, doanh số theo nhân viên
  6. Khuyến mãi: Hiệu quả các chương trình KM trong tháng

Gửi báo cáo qua email tự động (Google Apps Script)

// Gửi báo cáo tóm tắt cuối ngày qua email:
function sendDailyReport() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const report = ss.getSheetByName('DAILY_REPORT');
  
  const today = Utilities.formatDate(new Date(), 'Asia/Ho_Chi_Minh', 'dd/MM/yyyy');
  const totalRevenue = report.getRange('B2').getValue();
  const branchBreakdown = report.getRange('A5:C10').getValues();
  
  let body = `Báo cáo ngày ${today}

Tổng doanh thu: ${formatCurrency(totalRevenue)}

Theo chi nhánh:
`;
  branchBreakdown.forEach(row => {
    body += `- ${row[0]}: ${formatCurrency(row[1])} (${row[2]}%)
`;
  });
  
  MailApp.sendEmail({
    to: 'manager@company.com',
    subject: `[SheetStore] Báo cáo ngày ${today}`,
    body: body
  });
}

// Trigger: Mỗi ngày lúc 23:00
// ScriptApp.newTrigger('sendDailyReport').timeBased().atHour(23).everyDays(1).create();

9. Công Thức Và Automation Key

Các công thức quan trọng nhất

Công thứcMục đích
IMPORTRANGEKéo dữ liệu từ branch files vào master
QUERY với GROUP BYTổng hợp doanh thu theo nhiều chiều
SUMPRODUCTTính toán có nhiều điều kiện phức tạp
ARRAYFORMULAÁp dụng công thức cho toàn cột tự động
SPARKLINEMini chart xu hướng trong ô
CONDITIONAL FORMATTINGCảnh báo tồn kho, KPI thấp

Sparkline xu hướng doanh thu 7 ngày

=SPARKLINE(
  QUERY(SALES!A:H,
    "SELECT SUM(H) WHERE A >= date '"&TEXT(TODAY()-6,"yyyy-mm-dd")&"' GROUP BY A ORDER BY A"),
  {"charttype","line";"color","#4CAF50";"linewidth",2}
)

Công thức dự báo tồn kho cần nhập

'Số ngày tồn kho còn lại (Days of Stock):
=Current_Stock / Avg_Daily_Sales

'Số lượng cần đặt nhập (nếu lead time = 7 ngày):
=MAX(0, (Avg_Daily_Sales * (Lead_Time + Safety_Days)) - Current_Stock)

'Ví dụ: Tồn 20, bán TB 5/ngày, lead time 7 ngày, safety 3 ngày:
=MAX(0, (5 * (7+3)) - 20) = MAX(0, 50-20) = 30 → Cần đặt 30 cái

10. Khi Nào Cần Nâng Cấp Lên Phần Mềm Chuyên Nghiệp?

Google Sheets hoạt động tốt cho chuỗi 2-5 cửa hàng với 100-200 giao dịch/ngày. Khi nào cần chuyển lên phần mềm chuyên nghiệp?

Dấu hiệu cần nâng cấp

  • Sheets bị chậm, lag khi mở (>50.000 dòng dữ liệu)
  • Hơn 10 chi nhánh, IMPORTRANGE bắt đầu không ổn định
  • Cần tích hợp với máy POS, máy in hóa đơn
  • Yêu cầu barcode scanning cho nhập/xuất kho
  • Cần phân quyền chi tiết hơn (nhân viên chỉ xem CN của mình)
  • Audit trail và compliance nghiêm ngặt
  • Muốn app mobile native cho nhân viên

Giải pháp chuyên nghiệp cho chuỗi thời trang

Phần mềmPhù hợp choChi phí/tháng
KiotVietChuỗi 5-50 cửa hàngtừ 500K
SapoChuỗi + online (Shopee, TikTok)từ 299K
HaravanFashion brand có ecommercetừ 500K
MISA AMISChuỗi lớn cần ERP đầy đủtừ 1.5M

Kết Luận

Google Sheets là công cụ mạnh mẽ và tiết kiệm chi phí để quản lý chuỗi cửa hàng thời trang giai đoạn đầu. Với hệ thống thiết kế đúng — Master File + Branch Files + IMPORTRANGE automation — bạn có thể kiểm soát tồn kho, doanh thu, KPI nhân viên và khuyến mãi của 5-7 cửa hàng mà không cần đầu tư phần mềm đắt tiền.

Hãy bắt đầu từ một chi nhánh, hoàn thiện quy trình, rồi nhân rộng ra toàn chuỗi. Khi dữ liệu bắt đầu chậm hoặc yêu cầu tính năng phức tạp hơn, đó là lúc chuyển sang phần mềm chuyên nghiệp tại SheetStore.

Tài Nguyên Bổ Sung

Chia sẻ bài viết:

Tuân Hoang

Tuân Hoang

Đội ngũ SheetStore

Bạn thấy bài viết hữu ích?

Đăng ký nhận thông báo khi có bài viết mới.

Nhận thông báo khi có bài viết mới. Không spam, hứa luôn! 😊

Bình luận (0)

Vui lòng đăng nhập để tham gia thảo luận