MERSO IT

Tự động hóa · Giao vận

ViettelPost vs GHN vs GHTK vs J&T: API hãng vận chuyển cho tự động hóa

MERSO IT Insights · Cập nhật tháng 7 2026 · 8 phút đọc

Bốn API hãng vận chuyển Việt Nam được so sánh phía sau một tầng trừu tượng hãng vận chuyển duy nhất

Nhà bán hàng Việt Nam nào rồi cũng hỏi: hệ thống tự động hóa của tôi nên tích hợp với hãng vận chuyển nào? Câu trả lời thẳng thắn là chính câu hỏi đã hơi sai. Cả bốn ông lớn — ViettelPost, GHN (Giao Hàng Nhanh), GHTK (Giao Hàng Tiết Kiệm) và J&T Express — đều tích hợp được, đều có thế mạnh thật, và đều sẽ làm bạn thất vọng ở đâu đó. Quyết định bền vững không phải là cưới hãng nào, mà là xây dựng thế nào để việc chuyển hãng, hoặc chia lưu lượng giữa các hãng, chỉ là một thay đổi cấu hình chứ không phải viết lại hệ thống.

Điều gì thực sự quan trọng với người xây tự động hóa

Các trang marketing so sánh giá theo kilogram. Người xây tự động hóa nên so sánh những thứ khác: hợp đồng API tốt đến đâu, webhook có thực sự đến không, tiền COD quay về như thế nào, và điều gì xảy ra ở các trường hợp biên — địa chỉ nông thôn và hoàn hàng. Đánh giá dưới đây mang tính định tính, dựa trên kinh nghiệm tích hợp; hãng nào cũng liên tục thay đổi, nên hãy kiểm chứng với tài liệu hiện hành trước khi cam kết.

Tiêu chíViettelPostGHNGHTKJ&T Express
Kiểu API & chất lượng tài liệuDùng được nhưng cũ kỹ; tài liệu một phần chỉ có tiếng ViệtTrải nghiệm lập trình viên sạch sẽ nhất trong bốn hãngLàm được việc; quy ước cần thời gian làm quenĐang cải thiện; nặng thủ tục onboarding đối tác
Độ tin cậy webhookTốt, thỉnh thoảng có khoảng trống — cần đối soátTốt; vẫn nên đối soátTạm ổn; hãy lường trước tin trùng lặpThay đổi theo vùng; đối soát quyết liệt
Nhịp chuyển tiền CODTheo đợt đều đặn, định dạng tham chiếu riêngĐều đặn, sao kê tương đối sạchThường xuyên; truyền thống COD mạnhĐều đặn; định dạng lại khác nữa
Độ tin cậy lấy hàngMạng lưới toàn quốc mạnhMạnh ở các thành phố lớnTốt; mô hình hướng shopTốt ở đô thị, thất thường ở nông thôn
Phủ sóng nông thônTốt nhất trong bốn hãng (hạ tầng Viettel)Tốt, mạnh nhất ở đô thịTốtRộng nhưng không đều
Luồng hoàn hàngHỗ trợ; theo dõi sát trạng tháiHỗ trợ, tương đối rõ ràngHỗ trợ; nặng quy trìnhHỗ trợ; kiểm chứng theo từng vùng

Hãy đọc bảng này như một bản đồ các dạng lỗi, không phải bảng xếp hạng. Trải nghiệm lập trình viên của GHN khiến nó là tích hợp đầu tiên dễ chịu; độ phủ nông thôn của ViettelPost khiến khó bỏ hẳn nếu khách của bạn sống ngoài các thành phố lớn (và tự động hóa lấy hàng của họ được hướng dẫn từng bước trong hướng dẫn ViettelPost của chúng tôi); truyền thống COD của GHTK hợp với các shop có người mua chủ yếu thanh toán khi nhận; mạng lưới của J&T tiếp tục mở rộng nhưng đòi hỏi kỹ thuật phòng thủ nhiều nhất.

Tầng trừu tượng hãng vận chuyển

Dù chọn hãng nào trước, hãy đặt một ranh giới giữa logic nghiệp vụ của bạn và hãng vận chuyển:

  1. Một mô hình lô hàng nội bộ duy nhất. Dịch vụ đơn hàng của bạn tạo một Shipment với địa chỉ chuẩn, kích thước kiện hàng, số tiền COD và hạng dịch vụ (tiết kiệm/hỏa tốc). Nó không bao giờ nhắc đến một hãng vận chuyển cụ thể.
  2. Mỗi hãng một adapter. Mỗi adapter dịch mô hình nội bộ sang API của hãng đó — tên trường, mã dịch vụ, cơ chế xác thực của họ — và dịch trạng thái của hãng ngược về tập trạng thái chuẩn của bạn (đã tạo, đã lấy hàng, đang vận chuyển, đang giao, đã giao, thất bại, đã hoàn).
  3. Một chính sách định tuyến. Một quy tắc quyết định hãng nào nhận lô hàng nào: theo tỉnh đích, theo khối lượng, theo số tiền COD, hoặc theo so giá trực tiếp — hỏi hai ba adapter báo giá và chọn tốt nhất. Chính sách là cấu hình, nên "đổi hãng" hay "COD nông thôn giao ViettelPost, hỏa tốc đô thị giao GHN" chỉ mất một buổi chiều, không phải một dự án.
Vì sao nên làm trước khi cầnTầng trừu tượng tốn khoảng 15% công sức thêm ở tích hợp đầu tiên và tiết kiệm 80% ở tích hợp thứ hai. Quan trọng hơn, nó biến rủi ro hãng vận chuyển — tăng giá, suy giảm dịch vụ ở khu vực của bạn, tranh chấp tài khoản — từ một vấn đề sống còn thành một chỉnh sửa quy tắc định tuyến. Nhà bán hàng nào tích hợp thẳng một hãng vào code đơn hàng đều hối hận vào năm thứ hai.

Hai cạm bẫy cắn mọi hệ thống đa hãng

1. Bốn hãng, bốn hệ thống mã địa chỉ

Mỗi hãng duy trì bộ mã số riêng cho tỉnh, quận/huyện và phường/xã, và chúng không khớp nhau. Nếu bạn lưu mã riêng của từng hãng trên hồ sơ khách hàng, bạn đã bị khóa chặt ở tầng dữ liệu. Hãy xây một mô hình địa chỉ chuẩn — biểu diễn chuẩn hóa của riêng bạn về tỉnh/quận/phường cộng phần địa chỉ đường phố — và để mỗi adapter ánh xạ chuẩn → mã hãng tại thời điểm đặt, dựa trên bảng mã được làm mới từ API của hãng đó. Khi Việt Nam sắp xếp lại địa giới hành chính (và điều đó có xảy ra), bạn chỉ cập nhật ánh xạ ở một chỗ.

2. Webhook retry đòi hỏi handler idempotent

Hãng nào cũng retry webhook khi timeout, có hãng retry rất nhiệt tình, và việc đến sai thứ tự là chuyện thường. Một handler ngây thơ cứ append sự kiện sẽ gửi cho khách tin "đã giao hàng!" trùng lặp và làm sai lệch kỳ vọng COD của bạn. Mô hình đúng: sinh một khóa sự kiện ổn định cho từng cặp (lô hàng, trạng thái), upsert thay vì insert, tính trạng thái hướng khách hàng từ toàn bộ lịch sử trạng thái, và đảm bảo gửi thông báo đúng một lần cho mỗi lần chuyển trạng thái. Cùng kỷ luật đó sẽ sinh lời ở khâu sau khi bạn khớp tiền COD chuyển về với đơn hàng — xem bài viết về đối soát COD của chúng tôi cho nửa còn lại của dòng tiền.

Khuyến nghị

Hãy bắt đầu với hãng có mạng lưới phù hợp địa lý khách hàng của bạn — với hầu hết nhà bán hàng có lượng COD nông thôn đáng kể, đó là ViettelPost; với shop tập trung đô thị, GHN là tích hợp đầu tiên nhẹ nhàng hơn. Xây tầng trừu tượng ngay từ ngày đầu dù chỉ có một hãng phía sau. Thêm hãng thứ hai khi bạn có sản lượng để chia hoặc một dạng lỗi cần thoát, và để việc so giá tự trả công cho phần việc đó. Đây chính xác là tầng giao nhận của hệ thống tự động hóa trọn gói — và là tầng nơi kỹ thuật phòng thủ chuyển hóa trực tiếp nhất thành những khách hàng thực sự nhận được kiện hàng của mình.

Đang chọn một hãng vận chuyển — hay muốn thoát khỏi một hãng?

MERSO IT xây dựng tầng trừu tượng hãng vận chuyển và định tuyến đa hãng — và với những dự án phù hợp, chúng tôi demo quy trình lõi trước khi bạn thanh toán bất kỳ khoản nào.

Trao đổi với Mersoid, AI tư vấn của chúng tôi