
Khách đến MONA làm website cho trung tâm đào tạo hay hỏi tụi em đúng một câu, làm sao thu học phí online cho LMS mà không phải thuê thêm người ngồi soát sao kê mỗi tối. Tụi em gặp hàng loạt trung tâm ngoại ngữ, trường dạy nghề và cả người bán khoá học một mình đều vướng đúng một khâu, khớp đúng khoản tiền vừa về với đúng học viên đã trả. Sau hơn 10 năm làm 14.000 dự án, tụi em rút ra một điều đơn giản, đối soát thủ công không hỏng vì thiếu người, nó hỏng vì con người không theo kịp tốc độ chuyển khoản lúc nửa đêm.
Đau đầu đối soát học phí thủ công mỗi kỳ mở lớp
Chuyện này khách MONA kể hoài, đặc biệt vào mỗi đợt mở lớp mới khi lượng học viên đăng ký dồn về trong vài ngày. Học viên chuyển khoản xong thường quên ghi mã đơn, người thì ghi tên khoá học viết tắt, người bỏ trống hẳn nội dung, khiến chị kế toán phải mở sao kê lúc 9 giờ tối để dò từng dòng biến động số dư. Chị nhìn thấy khoản 2.400.000 đồng vừa báo về nhưng không rõ là học viên nào trong danh sách hơn trăm người đăng ký đợt này, đành nhắn Zalo hỏi từng người rồi mới dám bật quyền học. Chờ vậy hoài. Một trung tâm nhận khoảng 500 giao dịch mỗi tháng, tức tầm 16 đơn mỗi ngày, và với tốc độ đó việc rà tay gần như chắc chắn sót đơn hoặc mở trễ.
Cái mệt hơn nữa nằm ở giờ giấc. Học viên hay chuyển tiền lúc nửa đêm để sáng hôm sau vào học ngay, nhưng kế toán chỉ ngồi vào bàn từ 8 giờ sáng, thế là khoảng trống vài tiếng đó biến thành hàng loạt tin nhắn hỏi “sao em đóng tiền rồi mà chưa vào học được”. Trung tâm nào có tiếng thì càng mệt vì lượng đơn tăng theo mùa tuyển sinh. Tụi em từng ngồi nghe một giám đốc trung tâm than là mất nguyên buổi sáng chỉ để đối chiếu 40 dòng sao kê với 40 đơn đăng ký, xong vẫn lệch 3 đơn không rõ ai trả cho khoá nào.
Vì sao hệ thống báo có đôi khi trật nhịp giữa chừng
Tụi em thấy nhiều trung tâm tự ráp luồng webhook bằng công cụ kéo thả có sẵn trên mạng, và kết quả thường là tiền đã vào tài khoản mà đơn vẫn nằm ở trạng thái chờ. Có lần một ngân hàng gửi dữ liệu giao dịch về với phần đầu (header) dồn sai vị trí so với tài liệu kỹ thuật, hệ thống chuẩn của tụi em trả lỗi 422 và loại bỏ giao dịch đó trong chưa tới 2 giây. Ngân hàng không sửa theo ý ai được, nên tụi em phải tự viết lại lớp đọc dữ liệu trung gian cho đúng cấu trúc, rồi phát lại các giao dịch bị rớt để đơn học phí không bị treo oan.
Tụi em cũng từng dính một sự cố khá nhớ đời hồi tháng 9/2026, khi cấu hình lại máy chủ làm rơi mất khoá bí mật của webhook. Webhook vẫn bắn đi ngay khi tiền về như bình thường, nhưng mang khoá rỗng, hệ thống nhận trả lỗi 401 và không dám cộng tiền cho đơn. Tự sửa lấy thôi. Tụi em phải mở lại lịch sử webhook trên dashboard, bổ sung khoá HMAC-SHA256 rồi bấm gửi lại từng cái một để đơn nào cũng được cộng đúng. Bài học tụi em hay nhắc khách là đừng tin kiểu “chạy rồi thì chạy mãi”, phải bật cảnh báo ngay khi tỉ lệ webhook thành công tụt xuống bất thường.

Cách thu học phí online cho LMS chạy tự động từng bước
Cơ chế mà tụi em ráp cho các nền tảng học trực tuyến khá gọn, mỗi đơn học phí gắn với một mã VietQR động điền sẵn số tiền và một mã nội dung riêng, hoặc một tài khoản ảo (VA) cố định cho những khoá thu nhiều lần như học phí theo kỳ. Học viên chỉ quét mã bằng app ngân hàng và bấm chuyển, không cần gõ thêm ký tự nào vào ô nội dung. Ngân hàng ghi nhận tiền về, hệ thống của tụi em đọc thông báo giao dịch đó rồi bắn webhook có chữ ký HMAC-SHA256 về máy chủ của LMS trong khoảng 2 giây, và yêu cầu nào lệch quá 5 phút coi như bị từ chối để chống phát lại.
Muốn xem lại toàn bộ lịch sử này, anh chị chỉ cần vào my.monapay.vn, chọn mục Webhook, xem tỉ lệ thành công theo ngày, và bấm Gửi lại nếu có đơn nào báo lỗi. Phần mềm LMS nhận tín hiệu xong tự đổi trạng thái đơn sang đã thanh toán, mở quyền vào lớp học, gửi email chào mừng cho học viên. Không ai phải canh máy. Trung tâm nào đang dùng WordPress kèm WooCommerce, hoặc web tự viết, đều cắm được luồng tự kích hoạt khoá học khi học viên chuyển khoản mà không cần đụng vào phần code gốc của hệ thống elearning đang chạy.
Kinh nghiệm tụi em đúc từ những mảng thu tiền khác của MONA
Cùng một hạ tầng này, MONA Host (mảng hosting, tên miền, VPS của MONA) đang chia sẻ chung một tài khoản ACB cho hàng loạt sản phẩm khác nhau bằng cách gắn mỗi sản phẩm một mã tiền tố riêng ở đầu nội dung chuyển khoản. Khách trả tiền gia hạn, hệ thống đọc mã đầu, khớp đúng sản phẩm, đúng hoá đơn, không lẫn tiền của sản phẩm này sang sản phẩm khác. Đây cũng là cách tụi em gợi ý cho trung tâm có 3 chi nhánh trở lên, mỗi chi nhánh một mã riêng để kế toán tổng không phải hỏi lại “khoản này của cơ sở nào”.
Ở các buổi webinar do chính MONA tổ chức, người tham dự chuyển khoản kèm số điện thoại ở cuối nội dung để giữ chỗ. Mã giao dịch in trên biên lai app ngân hàng lại khác hẳn mã mà ngân hàng bắn về qua API, nên tụi em không thể khớp theo mã như bình thường được. Tụi em phải khớp theo số điện thoại, số tiền và thời gian giao dịch tính đến từng giây, ai chuyển trước vào danh sách nhận quà trước. Từ năm 2022, MONA đã tự dùng chính hạ tầng này để thu tiền cho nội bộ, và tới nay đã có hơn 6.000 khách hàng mới thanh toán qua hệ thống trước khi tụi em mở nó ra công khai ở monapay.vn năm 2026. Tự ăn cơm nhà trước.
Trung tâm nào hợp, tính năng nào tụi em chưa làm được
Nếu trung tâm của anh chị chỉ nhận chuyển khoản ngân hàng trong nước, luồng này hợp gần như ngay lập tức. Nhưng nếu học viên phần lớn là người nước ngoài trả bằng thẻ Visa hay Mastercard, tụi em phải nói thẳng là MONA Pay chưa làm được việc đó, anh chị vẫn cần một cổng thẻ quốc tế riêng. Ngân hàng đang chạy chính thức trên hệ thống là ACB, còn các ngân hàng khác tụi em đang nối dần, chưa hứa ngày xong nên anh chị cứ xem bảng trạng thái trước khi quyết định chuyển hẳn sang luồng tự động.
Với trung tâm mới mở, mỗi ngày chỉ khoảng 20 đến 30 đơn, tụi em khuyên thật là chưa cần viết code tích hợp API làm gì cho mệt. Đừng vội làm vậy. Cứ tạo link thu tiền, gắn thêm kênh báo Telegram hoặc nhóm Zalo là đủ dùng, dựng xong trong chưa tới 10 phút. Khi lượng đơn tăng lên vài trăm mỗi tháng, hoặc cần tự động mở quyền ngay khi tiền về mà không ai bấm tay, lúc đó nối webhook mới thật sự đáng công.
Chi phí và những gì trung tâm nhận lại được
Gói miễn phí xử lý được 500 giao dịch mỗi tháng, đủ cho một trung tâm mới hoặc đang chạy thử một khoá học. Vượt mức đó, gói cố định bắt đầu từ 99.000 đồng mỗi tháng cho 2.000 giao dịch, không thu thêm phần trăm trên bất kỳ khoản tiền nào. So với PayPal thu khoảng 4,4% cộng phí cố định trên mỗi giao dịch, trung tâm giữ nguyên vẹn số tiền học viên đã đóng. Giữ trọn 100%. Tiền đi thẳng từ tài khoản học viên vào tài khoản ngân hàng đứng tên trung tâm, MONA Pay không giữ tiền, không phải ví điện tử, chỉ đọc dữ liệu giao dịch ngân hàng rồi xác nhận lại cho LMS.
Nhiều anh chị tìm kiếm khái niệm cổng thanh toán khi bắt đầu tính chuyện tự động hoá, nhưng thứ một trung tâm đào tạo cần thật ra là dịch vụ xác nhận chuyển khoản tự động, không phải một trung gian giữ tiền rồi mới trả lại. Đây cũng là điều tụi em hay giải thích ngay từ buổi tư vấn đầu cho các trung tâm dùng gói thu học phí cho ngành giáo dục, để không nhầm vai trò của hệ thống với vai trò của một cổng thẻ có giấy phép riêng. Xu hướng học viên quen quét mã QR thay vì cầm tiền mặt tới nộp cũng được nhắc tới trong dữ liệu thương mại điện tử công bố trên idea.gov.vn, dù tụi em không dựa hẳn vào con số đó để chọn công nghệ, mà dựa vào chính hành vi khách MONA gặp mỗi ngày.
Tích hợp vào LMS đang chạy, không phải đập đi làm lại
Trung tâm dùng WordPress cùng WooCommerce, LearnDash hay TutorLMS chỉ cần cài plugin, nhập mã kết nối rồi bật chế độ thử trên sandbox trong khoảng 10 phút trước khi chuyển sang tài khoản ngân hàng thật, không cần sửa gì trong mã nguồn LMS đang chạy. Trung tâm tự viết phần mềm riêng bằng PHP, Node.js hay Python thì dùng thẳng tài liệu API và webhook, máy chủ không phải chạy vòng lặp quét sao kê ngân hàng liên tục nữa. Không tốn thêm người canh. Ai cần tham khảo thêm khái niệm nền tảng thì đọc LMS là gì, còn trung tâm cần quản lý nhiều biểu phí phức tạp có thể cân nhắc thêm phần mềm thu học phí chuyên biệt song song.
Anh chị vào my.monapay.vn, bấm nút Đăng ký, không cần chờ duyệt, bật sandbox trước rồi nối ngân hàng thật sau khi ưng luồng. Còn thắc mắc chỗ nào trong lúc ráp API cho thu học phí online cho LMS, gọi thẳng tổng đài 1900 636 648, tụi em cử người hỗ trợ theo đúng nền tảng LMS anh chị đang chạy.
Câu hỏi thường gặp
Học viên quét QR nhưng tự sửa số tiền chuyển khoản thì sao?
Tiền vẫn vào thẳng tài khoản ngân hàng của trung tâm, nhưng hệ thống nhận ra số tiền lệch so với đơn gốc nên sẽ không tự mở quyền học. Đơn đó nằm trong danh sách giao dịch lệch trên dashboard, kế toán xem rồi quyết định mở tay hoặc nhắn học viên chuyển bù phần thiếu.
Có giới hạn số lượng đơn học phí xử lý cùng lúc không?
Không giới hạn số đơn xử lý đồng thời. Dù trung tâm mở đợt giảm giá và có hàng trăm học viên đăng ký trong cùng một buổi tối, hệ thống vẫn khớp và mở quyền cho từng người theo đúng thứ tự tiền về.
Chi phí duy trì hằng tháng là bao nhiêu?
Miễn phí cho 500 giao dịch mỗi tháng, trên mức đó là 99.000 đồng mỗi tháng cho 2.000 giao dịch, không thu phần trăm trên số tiền học viên đóng ở bất kỳ gói nào.
Dùng hệ thống này có cần giấy phép trung gian thanh toán không?
Không cần đâu. MONA Pay không giữ tiền và không đứng ra nhận thanh toán thay trung tâm. Tiền đi thẳng từ học viên vào tài khoản ngân hàng của trung tâm, tụi em chỉ đọc dữ liệu giao dịch ngân hàng gửi về rồi xác nhận lại cho LMS trong khoảng 2 giây.
Cứ vào sandbox thử là biết ngay.
