Gom đơn từ nhiều sàn thương mại điện tử và từ tin nhắn mạng xã hội vào một bảng chung đòi hỏi ba việc: một bảng chuẩn với bộ cột cố định, một bảng ánh xạ cho biết cột nào của mỗi kênh ứng với cột nào của bảng chuẩn, và một quy tắc chống trùng đơn. Khi ba thứ này có sẵn, việc mỗi ngày chỉ là tải tệp từ từng kênh về một thư mục rồi bấm làm mới.
Người bán nhỏ thường làm ngược: mở tệp của từng sàn, chép tay vài cột sang một trang tổng, đổi tên trạng thái theo trí nhớ. Cách đó chạy được khi mỗi ngày vài chục đơn, và vỡ khi qua mùa cao điểm. Bài này dùng ví dụ giả định một cửa hàng bán phụ kiện điện thoại trên hai sàn và nhận đơn qua tin nhắn, gọi chung là sàn A, sàn B và kênh nhắn tin, vì cấu trúc tệp từng sàn thay đổi theo thời gian và bạn cần tự kiểm tệp của mình.
Vì sao tệp xuất từ các sàn không ghép thẳng được
Mỗi sàn có cách đặt tên cột riêng: cùng là mã đơn nhưng một nơi gọi “Mã đơn hàng”, nơi khác gọi “Order ID”. Cùng là số tiền khách trả nhưng một nơi tách tiền hàng và phí vận chuyển, nơi khác gộp. Có nơi mỗi dòng là một đơn, có nơi mỗi dòng là một sản phẩm trong đơn, nên một đơn ba món chiếm ba dòng. Trạng thái đơn cũng mỗi nơi một bộ từ, và bộ từ ấy có thể đổi sau một lần cập nhật hệ thống.
Đơn từ tin nhắn còn khó hơn: không có tệp nào cả, chỉ có đoạn chat với tên, địa chỉ, món hàng viết tự do. Phần này AI giúp được nhiều nhất, nhưng cũng là phần cần kiểm kỹ nhất.
Vì vậy, bước đầu tiên không phải là gộp mà là quyết định bảng chuẩn của chính bạn trông thế nào. Mọi nguồn sẽ được đưa về hình dạng đó, chứ không phải ngược lại.
Bảng chuẩn và bảng ánh xạ cột
Bảng chuẩn nên ở mức chi tiết “mỗi dòng một sản phẩm trong một đơn”, vì đây là mức nhỏ nhất, gộp lên mức đơn thì dễ còn tách ra thì khó. Bảng ánh xạ ghi tên cột của từng nguồn ứng với cột chuẩn; khi sàn đổi tên cột, bạn chỉ sửa ở đây.
| Cột chuẩn | Sàn A (ví dụ giả định) | Sàn B (ví dụ giả định) | Kênh nhắn tin |
|---|---|---|---|
| Kenh | Gán cố định “SanA” | Gán cố định “SanB” | Gán cố định “Chat” |
| MaDon | Mã đơn hàng | Order ID | Mã tự đặt theo ngày và số thứ tự |
| NgayDat | Ngày đặt hàng | Created Time | Ngày nhận tin |
| MaSP | SKU phân loại | Seller SKU | Tra từ tên món qua bảng ánh xạ sản phẩm |
| SoLuong | Số lượng | Quantity | Đọc từ tin nhắn |
| TrangThaiGoc | Trạng thái đơn hàng | Order Status | Ghi tay: chờ gửi, đã gửi, huỷ |
| TinhThanh | Tỉnh/Thành phố | Province | Đọc từ địa chỉ |
Các tên cột của sàn A và sàn B trong bảng là ví dụ minh hoạ, không phải tên thật của sàn nào. Mở tệp thật bạn tải về, chép đúng tên cột vào bảng ánh xạ. Giữ thêm cột TrangThaiGoc bên cạnh cột trạng thái chuẩn, để khi có tranh chấp với sàn bạn còn thấy nguyên văn sàn ghi gì.
Gộp tệp tự động bằng Power Query với AI gợi bước
Power Query có sẵn trong Excel cho Windows từ bản 2016 trở đi (thẻ Data, nhóm Get và Transform). Nó cho phép lấy mọi tệp trong một thư mục, đổi tên cột, gộp lại và ghi nhớ các bước để lần sau chỉ cần làm mới. Bạn không cần biết viết mã; AI có thể hướng dẫn từng nút bấm hoặc viết sẵn đoạn lệnh để dán vào trình soạn thảo nâng cao.
- Tạo thư mục riêng cho mỗi kênh, mỗi ngày tải tệp xuất về đúng thư mục, không đổi tên cột trong tệp.
- Trong Excel, lấy dữ liệu từ thư mục của sàn A, chọn kết hợp các tệp. Power Query gộp mọi tệp cùng cấu trúc trong thư mục đó.
- Đổi tên cột theo bảng ánh xạ, thêm cột Kenh với giá trị cố định, bỏ các cột không dùng. Làm tương tự cho sàn B.
- Nối hai truy vấn bằng chức năng Append. Kết quả là một bảng có đúng các cột chuẩn.
- Thêm bước loại trùng theo cặp Kenh và MaDon cùng MaSP, vì cùng một đơn có thể nằm trong tệp xuất của hai ngày liền nhau.
- Khi muốn AI giúp, mô tả: “Power Query trong Excel, thư mục chứa nhiều tệp CSV cùng cấu trúc, cột tên Mã đơn hàng, Ngày đặt hàng, SKU phân loại, Số lượng. Hướng dẫn từng bước gộp, đổi tên cột sang MaDon, NgayDat, MaSP, SoLuong, thêm cột Kenh bằng SanA, và loại dòng trùng.”
Power Query không có trong một số bản Excel trên máy Mac cũ và tính năng có thể khác giữa các bản; kiểm phiên bản của bạn. Nếu dùng Google Sheets, có thể dán từng tệp vào các trang riêng rồi dùng mảng nối với hàm QUERY, hoặc nhờ AI viết đoạn Apps Script nhập tệp, và đọc hiểu trước khi chạy.
Thống nhất trạng thái và mã sản phẩm
Bảng ánh xạ trạng thái. Liệt kê mọi giá trị trạng thái gốc xuất hiện trong dữ liệu (dùng UNIQUE hoặc bộ lọc), rồi gán mỗi giá trị vào một trong vài trạng thái chuẩn của bạn như chờ xử lý, đang giao, đã giao, hoàn hàng, huỷ. AI có thể đề xuất cách gán, nhưng bạn phải quyết định những trường hợp mơ hồ, ví dụ trạng thái chờ khách xác nhận nhận hàng nên tính là đang giao hay đã giao.
Thêm cột báo trạng thái lạ. Mỗi lần làm mới, dòng nào có trạng thái gốc không nằm trong bảng ánh xạ phải hiện ra, thay vì lặng lẽ thành ô trống. Đây là cách bạn biết sàn vừa đổi bộ từ.
Mã sản phẩm chung cho mọi kênh. Cùng một chiếc ốp lưng, mỗi sàn có thể có mã phân loại riêng do bạn đặt lúc đăng sản phẩm. Bảng ánh xạ sản phẩm nối mã kênh với mã nội bộ; tồn kho và giá vốn luôn tính theo mã nội bộ.
Đơn có quà tặng hoặc combo. Một mã combo cần được tách ra thành các mã sản phẩm thành phần nếu bạn trừ tồn kho theo từng món. Ghi danh sách thành phần của mỗi combo vào một bảng riêng và nhờ AI viết bước tách trong Power Query.
Đưa đơn từ tin nhắn vào bảng với AI
Đơn qua tin nhắn là kênh mà nhiều cửa hàng nhỏ nhận nhiều nhất, và cũng là kênh không có tệp nào. AI có thể đọc đoạn tin nhắn và tách thành các trường, với vài điều kiện.
- Chỉ dán phần nội dung đơn, không dán ảnh đại diện, không dán cả đoạn hội thoại dài có thông tin riêng không liên quan.
- Yêu cầu trả về đúng các cột chuẩn của bạn, ô nào không có thông tin để trống, không đoán.
- Câu lệnh gợi ý: “Tách tin nhắn đặt hàng sau thành bảng có cột TenMon, SoLuong, TinhThanh, GhiChu. Nếu khách không ghi số lượng thì để trống. Không thêm món không có trong tin.”
- Đối chiếu tên món với bảng sản phẩm để ra mã nội bộ; tên món khách viết tự do, nên tra bằng bảng ánh xạ tên gọi quen thuộc, không để AI tự gán mã.
- Họ tên, số điện thoại, địa chỉ chi tiết của khách cần cho việc giao hàng, nhưng không cần đưa qua chatbot. Bạn có thể tự chép phần đó sang bảng, chỉ nhờ AI tách phần món và số lượng.
- Với địa chỉ ghi theo tên tỉnh, huyện cũ, thêm bảng ánh xạ tỉnh cũ sang 34 tỉnh, thành sau sắp xếp năm 2025, lấy danh sách từ nguồn chính thức, để cột TinhThanh thống nhất.
Nối bảng đơn với báo cáo tiền sàn chuyển về
Mỗi sàn định kỳ chuyển tiền bán hàng về tài khoản người bán, kèm một báo cáo liệt kê từng đơn: số tiền khách trả, các khoản phí sàn khấu trừ, số tiền thực nhận. Báo cáo này cũng là một nguồn dữ liệu cần gộp, với cấu trúc riêng của từng sàn và tên cột riêng. Cách làm giống hệt phần đơn hàng: một bảng chuẩn cho tiền về (Kenh, MaDon, NgayChuyen, TienKhachTra, TongPhi, ThucNhan), một bảng ánh xạ cột, một truy vấn gộp.
Khi đã có cả hai bảng chuẩn, nối chúng bằng cặp Kenh và MaDon. Mỗi đơn đã giao sau một khoảng thời gian phải xuất hiện trong báo cáo tiền về; đơn nào đã giao lâu mà chưa thấy là đơn cần hỏi sàn. Ngược lại, đơn có tiền về mà trong bảng đơn đang ghi huỷ là dấu hiệu trạng thái chưa cập nhật. AI viết giúp công thức XLOOKUP hoặc bước Merge trong Power Query nếu bạn mô tả rõ hai bảng.
Bài này chỉ dừng ở việc nối hai bảng để biết đơn nào đã có tiền, đơn nào chưa. Hạch toán doanh thu, phí, thuế của người bán online là nghiệp vụ kế toán, theo quy định hiện hành, nên hỏi người làm kế toán hoặc cơ quan thuế.
Kiểm số liệu sau khi gộp
Bảng gộp chỉ có ích khi khớp với từng nguồn. Sau mỗi lần làm mới, so ba con số cho từng kênh: số đơn khác nhau trong bảng gộp, tổng số lượng sản phẩm, và số đơn theo từng trạng thái chuẩn, với con số tương ứng trên trang quản lý của sàn trong cùng khoảng ngày. Lệch số đơn thường do loại trùng quá tay hoặc thiếu tệp một ngày; lệch số lượng thường do sàn xuất mỗi dòng một đơn chứ không phải mỗi dòng một sản phẩm.
Giữ một trang nhật ký làm mới: ngày làm, tệp nào được thêm, số dòng trước và sau. Khi có ngày lệch, trang này giúp bạn khoanh vùng nhanh. Đừng sửa tay trên bảng kết quả của Power Query vì lần làm mới sau sẽ xoá mất; muốn sửa thì sửa ở bảng ánh xạ hoặc ở bước xử lý.
Bảng đơn gộp sạch là đầu vào cho mọi thứ phía sau: trừ tồn kho, đối chiếu tiền sàn chuyển về, xem kênh nào bán món gì. Phần đọc số liệu bán hàng theo kênh, theo mùa thuộc về phân tích, có ở trang AI Phân Tích. Còn nếu muốn đơn tự chảy từ sàn sang bảng mà không cần tải tệp, đó là việc nối ứng dụng qua giao diện lập trình, có ở trang AI Kết Nối.
Câu hỏi thường gặp
Sàn đổi tên cột trong tệp xuất thì Power Query có hỏng không?
Có, bước đổi tên cột sẽ báo lỗi không tìm thấy cột. Mở bảng ánh xạ hoặc bước đổi tên, sửa theo tên mới, rồi làm mới lại. Đó là lý do nên giữ tệp gốc nguyên vẹn và không đổi tên cột tay trước khi gộp.
Một đơn có nhiều sản phẩm thì đếm số đơn thế nào?
Đếm số giá trị khác nhau của cặp kênh và mã đơn, không đếm số dòng. Trong Excel bản mới có thể dùng UNIQUE kết hợp COUNTA; trong bảng Pivot có tuỳ chọn đếm giá trị khác nhau khi thêm dữ liệu vào Data Model.
Có nên dán tệp đơn hàng của sàn vào chatbot để nó gộp hộ không?
Không nên với dữ liệu thật, vì tệp chứa tên, số điện thoại, địa chỉ khách. Nhờ AI hướng dẫn hoặc viết bước gộp dựa trên tên cột và vài dòng giả, còn việc gộp chạy trong bảng tính của bạn.
Người bán chỉ có điện thoại, không có máy tính thì làm sao?
Bảng tính trực tuyến trên điện thoại vẫn dùng được cho bảng chuẩn và đơn tin nhắn. Phần gộp tệp từ nhiều sàn thì nên làm trên máy tính, vài lần mỗi tuần, vì thao tác thư mục và Power Query trên điện thoại rất bất tiện.
Đơn huỷ và đơn hoàn có nên xoá khỏi bảng không?
Không xoá. Giữ lại với trạng thái chuẩn tương ứng, vì đơn hoàn ảnh hưởng tồn kho và tiền sàn đối soát. Khi cần xem đơn thành công, lọc theo trạng thái.