MoMo, VNPay và ZaloPay là ba cổng thanh toán trực tuyến phổ biến ở Việt Nam. Cả ba đều cho website, ứng dụng nhận tiền qua ví, thẻ ATM nội địa, thẻ quốc tế và mã QR, và đều báo kết quả cho máy chủ của bạn qua một lời gọi server-to-server. Khác biệt thực tế nằm ở tệp khách quen dùng cổng đó (người dùng ví MoMo, người dùng ứng dụng ngân hàng quét VNPAY-QR, người dùng Zalo), ở kênh bán (web, app, Zalo Mini App) và ở phí theo hợp đồng từng doanh nghiệp. Phần lớn website bán lẻ nên bắt đầu với hai cổng rồi thêm cổng thứ ba khi số liệu cho thấy cần.
Bảng so sánh MoMo, VNPay, ZaloPay theo tài liệu chính thức
| Tiêu chí | MoMo | VNPay | ZaloPay |
|---|---|---|---|
| Phương thức chính | Ví MoMo, thẻ ATM, thẻ quốc tế | Thẻ ATM và tài khoản ngân hàng, VNPAY-QR, thẻ quốc tế | Ví ZaloPay (cả trong Zalo), QR đa năng, thẻ ATM, thẻ quốc tế |
| Kiểu tích hợp | Chuyển sang trang thanh toán, mở ứng dụng MoMo (app-to-app), QR | Chuyển sang trang thanh toán VNPAY | Trang thanh toán, app-to-app, QR, Zalo Mini App |
| Chữ ký | HMAC SHA256 | HMAC SHA512 | HMAC SHA256 |
| Báo kết quả | IPN server-to-server | IPN server-to-server, có gọi lại khi website chưa xác nhận | Callback server-to-server |
| Môi trường thử | Có (test) | Có (sandbox) | Có (sandbox) |
| Hợp nhất khi | Khách trẻ, quen ví, mua qua điện thoại | Khách trả bằng thẻ, ứng dụng ngân hàng | Bán qua hệ sinh thái Zalo |
Các con số về số người dùng và thị phần mỗi hãng công bố thay đổi liên tục và đo theo cách khác nhau, nên bài không dùng chúng để xếp hạng. Phí giao dịch cũng vậy: mỗi cổng báo phí theo ngành hàng, doanh số và phương thức, ghi trong hợp đồng. Hãy xin báo phí bằng văn bản từ cả ba rồi so trên cùng một cơ cấu đơn hàng của bạn.

So sánh theo tình huống bán hàng
Website bán lẻ, khách đặt qua điện thoại
Luồng mở ứng dụng ví (app-to-app) của MoMo và ZaloPay ít bước nhất trên điện thoại. Kết hợp thêm VNPay để khách không dùng ví vẫn trả bằng ứng dụng ngân hàng. Đo tỷ lệ bỏ giỏ ở bước thanh toán trước và sau khi thêm cổng để biết cổng thứ hai có đáng không.
Bán qua Zalo OA, Zalo Mini App
Khách đang ở trong Zalo, chuyển sang ứng dụng khác là mất khách. ZaloPay được liệt kê là nền tảng hỗ trợ Zalo Mini App trong tài liệu của hãng, nên là lựa chọn đầu cho kênh này.

Đơn giá trị lớn, khách doanh nghiệp
Khách thường chuyển khoản hoặc trả bằng tài khoản ngân hàng. VNPay phủ kênh này, đồng thời cân nhắc chuyển khoản có mã QR kèm nội dung đơn và đối soát tự động với ngân hàng, xem bài tích hợp ngân hàng bên dưới.
Quầy bán hàng, quán ăn
Tại quầy, câu hỏi không còn là cổng nào mà là máy bán hàng có kết nối QR động (mã có sẵn số tiền) và tự đánh dấu đơn đã trả hay không. Kiểm tính năng này trên phần mềm bán hàng trước khi ký với cổng.
Tích hợp một hay nhiều cổng: phần việc kỹ thuật
- Đăng ký môi trường thử của từng cổng, nhận mã đối tác và khoá ký.
- Tạo lớp trung gian trong hệ thống: một bảng giao dịch chung, mỗi cổng là một bộ điều hợp riêng. Thêm cổng sau này không phải sửa luồng đặt hàng.
- Xử lý IPN, callback: kiểm chữ ký, kiểm số tiền, chống xử lý trùng, ghi nhật ký.
- Trang kết quả chỉ để hiện thông báo, không dùng để đánh dấu đơn đã trả.
- Đối soát hằng ngày: so giao dịch trong hệ thống với báo cáo của từng cổng.
- Xin chạy thật với từng cổng, thử một giao dịch thật nhỏ trên mỗi cổng.

Đối soát và hoàn tiền: phần hay bị bỏ quên
Chọn cổng xong, việc tốn công nhất về lâu dài là đối soát. Mỗi cổng có trang quản trị cho doanh nghiệp (merchant) với báo cáo giao dịch và lịch chuyển tiền về tài khoản riêng. Khi dùng hai, ba cổng, kế toán phải khớp ba nguồn báo cáo với sổ bán hàng. Ba việc nên làm ngay từ đầu:
- Lưu mã giao dịch của cổng (transId, vnp_TransactionNo, zp_trans_id) cạnh mã đơn của bạn, để tra một đơn không cần mở ba trang quản trị.
- Chạy đối soát tự động mỗi ngày: đơn đã trả trong hệ thống nhưng không có trong báo cáo cổng, hoặc ngược lại, đều phải báo cho người phụ trách.
- Viết sẵn quy trình hoàn tiền cho từng cổng: hoàn một phần hay toàn phần, ai được bấm, hoàn qua API hay qua trang quản trị, bao lâu tiền về tài khoản khách. Khách hỏi hoàn tiền mà nhân viên không biết trả lời là mất khách lần hai.
Nếu doanh nghiệp xuất hóa đơn điện tử cho đơn online, nối luôn bước đối soát với bước phát hành hóa đơn để đơn đã trả mới được xuất hóa đơn, và đơn hoàn tiền có hóa đơn điều chỉnh tương ứng.
Câu hỏi thường gặp về cổng thanh toán MoMo, VNPay, ZaloPay
Cổng thanh toán nào phí thấp nhất?
Không có câu trả lời chung. Phí của cả ba cổng được báo theo từng doanh nghiệp, phụ thuộc ngành hàng, doanh số và phương thức (ví, thẻ nội địa, thẻ quốc tế). Xin báo phí bằng văn bản rồi tính trên cơ cấu đơn hàng thật của bạn.
Có nên tích hợp cả ba cổng không?
Chỉ khi số liệu cho thấy khách bỏ giỏ vì thiếu phương thức. Mỗi cổng thêm là một hợp đồng, một luồng đối soát và một điểm có thể lỗi. Bắt đầu với hai cổng, đo, rồi mới thêm.
Cá nhân, hộ kinh doanh có đăng ký cổng thanh toán được không?
Điều kiện khác nhau theo từng cổng và từng sản phẩm. Hỏi trực tiếp bộ phận kinh doanh của cổng về hồ sơ yêu cầu với hộ kinh doanh trước khi làm tích hợp.
Tích hợp một cổng thanh toán mất bao lâu?
Phần code không phải phần lâu nhất. Thời gian phụ thuộc chủ yếu vào hồ sơ và thời gian cổng duyệt chạy thật. Nên chuẩn bị hồ sơ doanh nghiệp và các trang chính sách trên website song song với lúc code trên môi trường thử.
Cần tích hợp một hay nhiều cổng thanh toán cho website, ứng dụng hoặc Zalo Mini App, liên hệ ALODEV qua /lien-he.




