Viettel Post là đơn vị cung cấp shipping cover rộng nhất Việt Nam — mạng lưới hơn 11.000 bưu cục đến tận xã miền núi, biên giới và đảo xa. Phù hợp shop ship hàng vùng sâu nơi GHN và GHTK không phục vụ, đặc biệt nhóm dược phẩm hoặc thiết bị nông thôn.
Khung phí 25-110 nghìn. Settlement T+3 đến T+5.
Tích hợp Viettel Post vào WooCommerce mất 1-2 ngày làm việc.
Viettel Post phù hợp shop nào và khác GHN/GHTK ra sao
Viettel Post (VTPost) là chi nhánh logistics của Tập đoàn Viettel, kế thừa mạng lưới bưu cục có sẵn từ Vietnam Post và Viettel Telecom. Hơn 11.000 bưu cục cover 100% xã VN, bao gồm vùng sâu, biên giới và đảo xa.
Đây là đơn vị cung cấp duy nhất ship được tới mọi xã VN. Phù hợp shop bán hàng vùng xa, đặc biệt dược phẩm, thiết bị y tế và đồ chuyên dụng cho thị trường nông thôn.
Trade-off rõ: settlement chậm hơn GHN (T+3 so với T+2), API documentation kém hiện đại hơn đơn vị cung cấp mới.
So sánh 3 đơn vị cung cấp VN trên 4 tiêu chí then chốt
| Đơn vị cung cấp | Coverage | Settlement | Phí | API |
|---|---|---|---|---|
| Viettel Post | 100% xã VN | T+3 đến T+5 | 25-110 nghìn | Cũ, ít doc |
| GHN | ~99% (63 tỉnh) | T+2 | 22-100 nghìn | Hiện đại, doc tốt |
| GHTK | ~85% xã | T+2 đến T+4 | 18-90 nghìn (rẻ nhất) | Hiện đại |
3 nhóm shop hưởng lợi rõ nhất từ Viettel Post
Không phải shop nào cũng cần tích hợp Viettel Post. Ba nhóm sau hưởng lợi rõ ràng từ coverage tận xã và policy đặc biệt của đơn vị cung cấp.
- Shop có khách miền núi và đảo xa: Hà Giang, Cao Bằng, Lai Châu, Phú Quốc, Côn Đảo — GHN/GHTK đa số trả “không phục vụ”, chỉ Viettel ship được.
- Shop dược phẩm và thiết bị y tế: Viettel có policy ship dược phẩm chuẩn theo quy định Bộ Y tế, ít rủi ro pháp lý hơn đơn vị cung cấp private khác.
- Shop chấp nhận tích hợp dự phòng: dùng làm đơn vị cung cấp thứ 3 sau GHN và GHTK, đảm bảo không bao giờ từ chối đơn vì lý do “vùng xa”.
Bước 1 — Đăng ký Viettel Post Merchant
Đăng ký online tại viettelpost.com.vn hoặc đến trực tiếp bưu cục lớn nhất tỉnh. Quy trình duyệt 3-7 ngày làm việc — chậm hơn GHN/GHTK do hệ thống xử lý hồ sơ kế thừa từ bưu chính.
Một số chi nhánh tỉnh vẫn yêu cầu fax giấy tờ thay vì upload online — quy trình hơi cũ so với đơn vị cung cấp private. Chuẩn bị bản scan rõ nét trước để giao dịch nhanh.
4 thông tin bắt buộc lưu sau khi Viettel approve
- Token API: string dài dùng auth mọi request, lưu password manager hoặc env vault tách biệt với code.
- Customer ID: mã khách hàng trong hệ thống Viettel, gắn cố định với account.
- API Endpoint: sandbox partner.viettelpost.vn/v2-test cho test, production partner.viettelpost.vn/v2 cho live.
- Account password (web dashboard): để login dashboard quản lý vận đơn manual khi API có vấn đề.
Quirks đăng ký Viettel Post khác đơn vị cung cấp private
Viettel có một số đặc thù do là doanh nghiệp nhà nước — biết trước tránh ngạc nhiên trong quá trình onboard.
- Yêu cầu giấy phép kinh doanh ngành nghề rõ: mặt hàng cấm (rượu cồn cao, vũ khí, đồ giả) bị từ chối ngay từ vòng duyệt hồ sơ.
- Ký hợp đồng giấy bản cứng: sau khi duyệt online, vẫn phải ký hợp đồng giấy gửi qua bưu cục — mất thêm 3-5 ngày.
- Account manager phân theo tỉnh: mỗi shop có 1 AM riêng theo địa bàn, support qua Zalo cá nhân thay vì hotline tập trung.
Bước 2 — Cài plugin Viettel Post for WooCommerce
Viettel Post không có plugin official trên WordPress.org repository. Phải dùng plugin community “Viettel Post WooCommerce Integration” hoặc tự tích hợp custom qua API call.
Plugin community có nhiều bản — chọn bản update gần đây nhất (check ngày commit cuối trên GitHub repo). Plugin cũ trên 6 tháng dễ break với phiên bản WooCommerce mới.
4 bước cài plugin qua upload zip
- Tải plugin
vtpost-woocommerce.ziptừ GitHub repo của community dev (search “vtpost woocommerce github”). - Vào Plugins → Add New → Upload Plugin chọn file zip, click Install Now rồi Activate.
- Vào WooCommerce → Settings → Shipping → tab “Viettel Post” để mở config screen.
- Click Manage để config Token và Customer ID từ dashboard Viettel.
Config Token, pickup address và service options
# Plugin Settings → Viettel Post config
Enable: tick checkbox
Token: VTPOST_TOKEN_FROM_DASHBOARD # Lưu password manager
Customer ID: 198765 # Mã khách hàng
Pickup Address:
Tỉnh: Hà Nội
Quận/Huyện: Hà Đông
Xã/Phường: Mỗ Lao
Địa chỉ chi tiết: Số 25 đường Tô Hiệu
SĐT: 0981828781
Default Service:
- VCN: Chuyển phát nhanh nội tỉnh
- VTK: Chuyển phát tiết kiệm
- VHT: Chuyển phát hoả tốc (1 ngày)
- PHS: Phát hàng siêu thị (qua đại lý)
Insurance: bật bảo hiểm đơn trên 500.000đ (1% giá trị, max 200.000đ)
Auto-create vận đơn: bật khi order chuyển trạng thái Processing
Bước 3 — Cấu hình zones tích hợp Viettel Post
Setup zone tương tự GHN và GHTK nhưng ưu tiên Viettel cho zone vùng xa — Hà Giang, Cao Bằng, đảo Phú Quốc, Côn Đảo. Đây là khu vực GHN và GHTK không phục vụ hoặc trả phí cao bất thường.
Pattern multi-đơn vị cung cấp giúp khách thấy 1 option duy nhất phù hợp địa chỉ thay vì 3 đơn vị cung cấp cùng hiển thị — checkout gọn gàng, conversion cao hơn 2-3%.
Chiến lược 4 zone với Viettel làm fallback chiến lược
- Zone 1 (HN/HCM nội thành): primary GHN, fallback Viettel khi GHN API down.
- Zone 2 (đô thị lớn khác — Đà Nẵng, Cần Thơ, Hải Phòng): primary GHTK (rẻ nhất), fallback Viettel.
- Zone 3 (tỉnh đồng bằng thường): primary GHN, fallback Viettel cho xã GHN không cover.
- Zone 4 (vùng sâu, biên giới, đảo): primary Viettel Post — đơn vị cung cấp duy nhất phục vụ ổn định.
Test với địa chỉ extreme để verify zone hoạt động
Sau khi setup, test bắt buộc với 5 địa chỉ extreme trước khi go-live. Bỏ qua test này = khách vùng xa không thấy phí, mất doanh thu mà không biết.
- Hà Giang xã Lũng Cú: điểm cực Bắc, GHN thường trả “không phục vụ”, Viettel phải show được phí.
- Côn Đảo Bà Rịa-Vũng Tàu: đảo cách bờ 230 km, chỉ Viettel ship qua chuyến tàu định kỳ.
- Phú Quốc xã Gành Dầu: đảo cách thị trấn 25 km, GHTK có nhưng phí cao bất thường.
- Trường Sa nếu có khách quân nhân: Viettel có tuyến đặc biệt qua hợp đồng với Bộ Quốc phòng.
- Cao Bằng xã sát biên giới Trung Quốc: GHN thường refuse, Viettel ship đều qua bưu cục huyện.
Bước 4 — Custom logic auto-pick Viettel cho vùng xa
Khi GHN hoặc GHTK trả “vùng không phục vụ” cho địa chỉ extreme, plugin nên auto-fallback Viettel mà không cần khách chọn tay. Filter hook custom giúp logic này smooth, không lộ kỹ thuật ra UI.
Code mẫu auto-fallback Viettel theo danh sách tỉnh
// Auto-fallback Viettel khi GHN/GHTK không phục vụ
add_filter('woocommerce_package_rates', 'auto_fallback_viettel');
function auto_fallback_viettel($rates, $package) {
$province = $package['destination']['state'] ?? '';
$district = $package['destination']['city'] ?? '';
// List tỉnh chỉ Viettel phục vụ tốt
$viettel_only_provinces = ['HG', 'CB', 'BK', 'YB']; // Hà Giang, Cao Bằng, Bắc Kạn, Yên Bái
if (in_array($province, $viettel_only_provinces)) {
// Remove GHN/GHTK nếu cố tính phí (thường sai)
foreach ($rates as $key => $rate) {
if (strpos($key, 'ghn') !== false || strpos($key, 'ghtk') !== false) {
unset($rates[$key]);
}
}
}
return $rates;
}
Tránh hiển thị 3 đơn vị cung cấp cùng lúc gây loạn checkout
Show 3 option ship cùng zone làm khách phân vân, conversion giảm so với 1-2 option. 3 nguyên tắc filter giữ checkout gọn.
- Mỗi zone chỉ 1-2 method: primary và backup, không bao giờ show cả 3 cùng lúc trừ khi shop B2B yêu cầu khách chọn đơn vị cung cấp cụ thể.
- Sort theo phí từ thấp đến cao: mặc định khách nhìn option đầu tiên, đặt đơn vị cung cấp rẻ ở đầu để push conversion.
- Hide đơn vị cung cấp đang API down: nếu đơn vị cung cấp primary timeout 1,5 giây, instant hide khỏi list thay vì show option lỗi.
Code mẫu detect district vùng xa và phụ phí
// Detect district vùng xa và cộng phụ phí
add_filter('woocommerce_package_rates', 'add_remote_district_surcharge');
function add_remote_district_surcharge($rates, $package) {
$district = $package['destination']['city'] ?? '';
$remote_keywords = ['huyện đảo', 'biên giới', 'vùng cao', 'miền núi'];
$is_remote = false;
foreach ($remote_keywords as $keyword) {
if (stripos($district, $keyword) !== false) {
$is_remote = true;
break;
}
}
if ($is_remote) {
foreach ($rates as $key => $rate) {
if (strpos($key, 'vtpost') !== false) {
$rate->cost += 30000; // Phụ phí 30.000đ vùng xa
$rate->label .= ' (+30.000đ phụ phí vùng xa)';
}
}
}
return $rates;
}
Bước 4.5 — Monitor Viettel Post sau go-live
Viettel Post có hệ thống cũ hơn đơn vị cung cấp private, monitor liên tục là bắt buộc để bắt vấn đề sớm. Đa số shop phát hiện issue sau khi đã mất 10-15 triệu phí sai hoặc cash flow gap kéo dài.
3 metric quan trọng track tuần đầu
- API thời gian hoạt động hàng ngày: Viettel thời gian hoạt động ~98% (so với GHN 99,5%), nếu thấp hơn 97% trong tuần là dấu hiệu account có vấn đề cần liên hệ AM.
- Settlement delay trung bình: baseline T+3 đến T+5, nếu trung bình tuần vượt T+6 là vấn đề cash flow, cần đối soát manual với AM.
- Webhook hit rate: webhook Viettel kém ổn, nếu dưới 70% hit phải dependence cron poll backup nhiều hơn.
Bước 5 — 5 lỗi phổ biến khi tích hợp Viettel Post và cách xử lý
Viettel có hệ thống cũ hơn GHN/GHTK nên hay gặp 5 nhóm lỗi đặc thù. Biết trước tránh mất doanh thu trong tháng đầu vận hành.
- Token expired sớm: Viettel Post token chỉ hiệu lực 6 tháng (ngắn hơn GHN 1 năm). Setup cron reminder tự generate token mới mỗi 5 tháng để không bị gián đoạn.
- API timeout cuối tuần: Viettel Post API stability kém hơn GHN/GHTK, đôi khi timeout 5-10 giây. Set timeout 15 giây trong plugin config thay vì 5 giây default.
- Settlement chậm 5-7 ngày: Viettel mặc định T+3 nhưng cuối tuần và dịp lễ delay tới T+5 hoặc T+7. Đối soát manual qua dashboard, không tin tự động hoàn toàn.
- Vận đơn tracking không update realtime: Viettel update tracking qua webhook nhưng webhook không ổn định. Setup cron poll status mỗi 30 phút làm backup.
- Tham khảo bài tracking đơn hàng để hiểu pattern poll chi tiết.
- Phí cao bất thường cho đơn miền núi: Viettel có phụ phí miền núi 30-50 nghìn mà default plugin không hiển thị rõ. Add custom rule kèm tooltip cho khách biết trước khi place order.
Câu chuyện khách tích hợp Viettel Post cho shop dược
Shop dược phẩm online ở Hà Nội (giấu tên theo NDA) tích hợp Viettel Post tháng 03/2026 để cover khách miền núi. Trước đó dùng GHN + GHTK, 8% đơn miền núi bị refund vì “vùng không phục vụ”.
Trước khi tích hợp Viettel — pain point cụ thể
- 8% đơn miền núi bị refund: khách Hà Giang, Cao Bằng đặt nhưng shipping đơn vị cung cấp refuse, refund mất 1-2 ngày làm xấu UX.
- Mất 15-20 đơn/tháng vùng xa: AOV 800.000đ × 18 đơn = 14,4 triệu doanh thu mất hàng tháng chỉ vì coverage.
- Khách phàn nàn trên fanpage: 3-5 review 1 sao/tháng về “shop không giao được vùng tôi” — ảnh hưởng brand.
Sau khi tích hợp Viettel — kết quả 60 ngày
Setup mất 2 ngày làm việc gồm đăng ký Merchant, cài plugin community và config 4 zone. Theo dõi 60 ngày sau go-live cho kết quả rõ.
- Refund rate vùng xa giảm từ 8% xuống 0,5%: chỉ còn refund vì lý do thực sự (khách đổi ý) chứ không vì coverage.
- Thêm 18-22 đơn vùng xa/tháng: bù lại đầu tư setup trong tháng đầu tiên.
- Settlement T+5 chấp nhận được: shop cash flow ổn vì 80% doanh thu vẫn qua GHN, Viettel chỉ phụ trách 15% đơn vùng xa.
Câu hỏi thường gặp về tích hợp Viettel Post
Khi nào nên dùng Viettel Post thay GHN?
Khi shop có khách ở vùng GHN/GHTK không phục vụ — Hà Giang, Cao Bằng, đảo Phú Quốc, Côn Đảo. Hoặc shop bán dược phẩm và thiết bị y tế cần ship vùng nông thôn (Viettel có policy ship dược phẩm chuẩn quy định).
Còn lại GHN ưu việt hơn về tốc độ delivery và chất lượng API documentation. Tham khảo tích hợp GHTK để biết thêm đơn vị cung cấp giá rẻ thay thế.
Phí Viettel Post đàm phán xuống được không?
Có, sau khi đạt volume trên 200 triệu/tháng. Viettel có Account Manager riêng theo địa bàn, tiếp đón tốt cho shop có volume ổn định.
Volume trên 500 triệu/tháng có thể đàm phán giảm 0,3-0,5 điểm phần trăm phí ship. Liên hệ qua dashboard hoặc bưu cục lớn nhất tỉnh để gặp Account Manager.
Settlement Viettel chậm có ảnh hưởng cash flow không?
Có ảnh hưởng rõ. T+5 so với T+2 của GHN nghĩa là chậm 3 ngày — tương đương 3 ngày tiền đơn pending trong hệ thống Viettel.
Shop trên 500 đơn/ngày volume COD lớn có cash flow gap 3 ngày tới 30-50 triệu pending. Giải pháp: ưu tiên GHN cho COD volume lớn, Viettel cho non-COD hoặc đơn nhỏ dưới 500.000đ.
Plugin community Viettel Post có ổn định không?
Trung bình. Plugin community update chậm hơn plugin official của GHN/GHTK.
Test kỹ trên staging trước khi deploy production.
Backup plan: tích hợp manual qua API thay plugin nếu plugin có bug critical. Code custom 200-300 dòng PHP đủ replace plugin cho integration cơ bản.
Có cần tích hợp đồng thời 3 đơn vị cung cấp (GHN + GHTK + Viettel)?
Tuỳ scale shop. Shop dưới 500 đơn/ngày: 2 đơn vị cung cấp (GHN + GHTK) đủ cover 95% địa chỉ và budget khách hàng.
Shop trên 1000 đơn/ngày và có khách miền núi xa: 3 đơn vị cung cấp cho coverage tối đa. Tích hợp 3 đơn vị cung cấp làm checkout phức tạp, conversion có thể giảm so với 2 đơn vị cung cấp — bù lại đỡ mất đơn vùng xa.
Bước tiếp theo sau khi tích hợp Viettel Post
Tích hợp Viettel Post là mảnh ghép cuối hoàn thiện coverage 100% xã VN. Tham khảo các bài liên quan trong cụm WooCommerce vận chuyển để hoàn thiện toàn bộ flow shipping:
- Tích hợp GHTK vào WooCommerce — đơn vị cung cấp giá rẻ nhất, pair với Viettel cho coverage rộng + phí tối ưu.
- Cấu hình shipping zone WooCommerce — chia zone đúng để Viettel chỉ fire cho vùng xa.
- Tính phí ship tự động khi checkout — pipeline parallel call 3 đơn vị cung cấp, fallback chain 4 layer.
- Tracking đơn hàng WooCommerce — webhook Viettel kém ổn, cần cron poll backup.
- Dịch vụ thiết kế website WooCommerce — gói thi công có sẵn integration 3 đơn vị cung cấp turnkey.
Cần đội Web22 setup tích hợp Viettel Post turnkey kèm multi-đơn vị cung cấp auto-fallback (GHN/GHTK/Viettel) cho shop của bạn? Báo giá website bán hàng WooCommerce — phạm vi rõ ràng, có sẵn integration shipping VN.


