Mô hình: bạn không thuê kho. Bạn đăng ký nhà mình, một phòng trống, hoặc một ô mini-storage làm điểm lấy hàng ViettelPost, giữ hàng luôn sẵn, và để phần mềm xử lý mọi thứ giữa "khách bấm mua" và "shipper cầm kiện hàng đi". Việc của bạn thu gọn còn hai thứ: marketing, và đảm bảo kệ có hàng. Mọi thứ còn lại — đặt lấy hàng, vận đơn, đếm tồn kho, cảnh báo sắp hết hàng, kích hoạt đặt hàng lại — tự chạy. Với shop một hoặc hai người, đây không phải một sự thỏa hiệp; đây là kiến trúc đúng cho đến khi sản lượng thực sự đòi hỏi nhiều hơn.
Tầng phần mềm thực sự làm gì
- Đặt lấy hàng theo lô đơn. Đơn mới dồn lại; trước mỗi khung giờ gom hàng, hệ thống đặt một lượt ViettelPost lấy hàng tại địa chỉ đã đăng ký của bạn cho cả lô, tạo vận đơn, và in ra máy in nhiệt. Cơ chế API nằm trong bài phân tích chuyên sâu ViettelPost của chúng tôi — đặt lấy hàng, tạo vận đơn và các webhook tracking chảy ngược về.
- Tồn kho đồng bộ lên gian hàng. Số lượng trên kệ nằm trong một dịch vụ tồn kho nhỏ; gian hàng (và TikTok Shop, nếu bạn chạy cả hai — xem bài viết về hai gian hàng) hiển thị tình trạng còn hàng suy ra từ đó. Kệ hết hàng thì trang sản phẩm tự tạm ngưng.
- Cảnh báo sắp hết hàng về điện thoại. Ngưỡng theo từng SKU dựa trên tốc độ bán, gửi qua Zalo — chính kênh mà khách của bạn nhận mã vận đơn (hướng dẫn tự động hóa Zalo).
- Kích hoạt đặt hàng lại nhà cung cấp. Khi số ngày tồn kho dự phóng xuống dưới thời gian giao của nhà cung cấp cộng một khoảng đệm, hệ thống soạn sẵn đơn đặt lại — số lượng điền trước từ tốc độ bán — và bạn duyệt bằng một cú chạm. Việc duyệt vẫn thuộc con người; phép tính thì không.
Đăng ký điểm lấy hàng: làm chuẩn một lần
Xác minh địa chỉ là điểm ma sát đầu tiên. Địa chỉ bạn đăng ký phải khớp với thứ hệ thống của shipper có thể định vị và định tuyến — phường, quận và tỉnh đúng như sổ địa chỉ của họ, không phải như cách bạn viết trên phong bì. Đăng ký cẩu thả sinh ra dạng lỗi tệ nhất trong logistics: lượt lấy hàng được đặt thành công vào hư không, nơi không shipper nào được điều đến. Hãy kiểm chứng bằng vài lượt đặt thử trước khi đưa đơn thật vào, và giữ thông tin địa chỉ đã đăng ký trong cấu hình có quản lý phiên bản để một lần "sửa nhanh" không âm thầm phá vỡ định tuyến.
Giờ cut-off quyết định lời hứa của bạn với khách
Mỗi quận có thực tế giờ chốt lấy hàng riêng: đặt sau khung gom hàng cuối thì kiện hàng mai mới đi. Hệ thống tự động của bạn phải biết giờ cut-off, và — quan trọng hơn — lời hứa giao hàng trên gian hàng phải được suy ra từ đó. Nếu trang thanh toán ghi "gửi hàng hôm nay" lúc 16:40 mà lượt lấy hàng thực tế cuối cùng của quận bạn là 16:00, bạn vừa tự động hóa sự thất vọng. Hãy mã hóa giờ cut-off, gom đơn theo nó, và tự động chuyển lời hứa sang ngày kế tiếp sau khi khung giờ đóng.
Giữ gian hàng trung thực: bài toán "kệ hàng gia đình"
Thất bại kinh điển của mô hình không kho chẳng liên quan gì đến API. Kệ hàng nằm trong nhà bạn, và ai đó trong gia đình lấy hai món gì đó cho người thân — với ý tốt nhất và không nhập liệu gì cả. Gian hàng giờ bán vượt hai đơn vị. Bạn không thể vá hành vi con người bằng webhook, nên bạn vá bằng quy trình:
- Kiểm kê định kỳ. Một tác vụ lặp lại — hàng tuần cho hàng bán nhanh, hàng tháng cho phần còn lại — bạn đếm một nhóm SKU luân phiên và nhập số thực tế. Hệ thống đối chiếu số đếm với số kỳ vọng và điều chỉnh.
- Ghi nhận xuất kho. Một thao tác một chạm "đã lấy N món X" trên điện thoại, được xử lý y hệt một đơn hàng trong sổ cái tồn kho.
- Theo dõi hao hụt. Chênh lệch dai dẳng giữa số đếm và sổ cái là một tín hiệu — của lỗi quy trình hoặc của một SKU cần một hộp riêng có nắp.
Mở rộng lên hai hoặc ba điểm lấy hàng
Khi một kệ không còn đủ, cùng kiến trúc đó mở rộng được: đăng ký điểm lấy hàng thứ hai (nhà người thân bên kia thành phố, một ô mini-storage gần nhà cung cấp), giữ tồn kho theo từng địa điểm, và để một quy tắc định tuyến chọn điểm lấy hàng cho từng đơn — thường theo vùng đích hoặc theo địa điểm nào đang có SKU. Bảng dưới đây là các yếu tố quyết định quan trọng trong thực tế:
| Yếu tố | Vì sao quan trọng |
|---|---|
| Tồn kho theo từng điểm | Không đặt từ địa điểm không thể gom đủ cả kiện hàng |
| Vùng đích | Gửi từ cùng vùng cắt giảm thời gian và chi phí vận chuyển |
| Độ gần giờ cut-off | Điểm còn mở khung giờ thắng điểm gần hơn nhưng đã đóng |
| Chính sách tách đơn | Quyết định rõ ràng liệu một đơn có được gửi từ hai điểm không |
Hãy kiềm chế việc tách đơn giữa các điểm cho đến khi bắt buộc — hai kiện hàng nghĩa là hai phí vận chuyển, hai mã vận đơn và gấp đôi sự bối rối cho khách.
Phần tiền bạc kết nối ở đâu
Tiền COD từ mọi điểm lấy hàng đổ về cùng một sổ cái đối soát (cách chúng tôi tự động hóa đối soát), và mọi đơn đã giao vẫn chảy vào hóa đơn điện tử (hướng dẫn Shopify → MISA AMIS). Không kho chỉ thay đổi nơi hàng nằm — nó không thay đổi bất cứ nghĩa vụ tuân thủ nào của bạn. Để có bức tranh toàn cảnh về cách giao nhận, tài chính và marketing khớp vào nhau, hãy bắt đầu với bài viết về hệ thống trọn gói.