Sáng nay mình dạy xong môn Python thì ba em học viên báo lỗi, các bạn chuyển tiền học từ tối qua mà hệ thống vẫn chưa duyệt. Nghề gõ đầu trẻ dạy lập trình ở Sài Gòn này vui và thu nhập ổn. Nhưng cực đầu. Nhưng khoản quản lý thu học phí online thì đúng là ác mộng nếu lớp đông lên vài chục người. May là tuần trước mình vừa ráp xong một hệ thống mã nguồn tự động nhận diện 40.000 học viên, máy móc tự lo hết. Thay vì để một bạn giáo vụ cặm cụi ngồi dò thủ công từng dòng trên cuốn sổ sao kê ngân hàng dài 30 trang mỗi buổi sáng như trước kia, giờ đây hệ thống phần mềm đã tự động hoá hoàn toàn khâu đối soát này một cách chính xác tuyệt đối.

Thầy giáo đi dạy nhưng lại kiêm luôn nghề kế toán sổ sách
Đặc thù của ngành công nghệ thông tin là kiến thức thay đổi rất nhanh, sinh viên cần học liên tục, kéo theo việc mở lớp cũng phải diễn ra thường xuyên. Mình mở các lớp đào tạo lập trình web frontend và khoá học Python dành cho người mới bắt đầu chuyển ngành tại 3 cơ sở khác nhau. Đầu khoá, các bạn học viên thanh toán bằng cách lấy điện thoại quét mã VietQR rồi chụp màn hình biên lai ngân hàng gửi qua tin nhắn Zalo cho bộ phận giáo vụ. Có hôm tám giao dịch 1.990.000 đồng nhảy vào tài khoản với nội dung na ná nhau, người ghi mỗi tên viết tắt, người không ghi gì. Đều phải dò bằng tay hết.
Chuyện nhầm lẫn dòng tiền xảy ra như cơm bữa ở các cơ sở giáo dục vừa và nhỏ. Cứ mỗi buổi tối muộn mở điện thoại ra là mình phải lướt một dãy tin nhắn chuyển khoản rất giống nhau, cố căng mắt ra nhìn xem cái nội dung chuyển tiền nào khớp với tên của bạn nào trong bảng danh sách lớp Excel 50 dòng để cập nhật trạng thái đã nộp, đuối thật sự.
Có em sinh viên nhắn tin báo “thầy ơi em chuyển khoản tiền học rồi”, giáo vụ cặm cụi đi dò lại bảng sao kê thì lỡ tay đánh dấu nhầm thành một bạn khác đã đóng. Một số sinh viên vừa đi học vừa đi làm thêm nên tranh thủ mua khoá học vào lúc 23 giờ đêm, tiền trong thẻ bị trừ đi rồi mà phải chờ đến 8 giờ sáng hôm sau mới có nhân viên trực ca để duyệt quyền truy cập.
Khớp nối phần mềm để chạy thu học phí tự động cho trung tâm
Đợt trước loay hoay phụ mấy đứa sinh viên năm ba order hàng tmall.com an toàn cho đồ án môn IoT cuối kỳ, mình chợt nghĩ tại sao mảng thanh toán tiền học lại cứ phải làm thủ công hoài như những năm hai ngàn. Mình quyết định thử tích hợp hệ thống nhận tiền thẳng của MONA Pay, nền tảng mà đội Khánh Hùng Academy đang dùng để chạy luồng thanh toán cho 40.000 học viên của họ từ tận năm 2022. Cái khác biệt lớn nhất là tiền đi thẳng vào tài khoản ACB của trường mình chứ không bị giữ lại ở bất kỳ một cái ví điện tử trung gian nào. Ngân hàng ACB ghi nhận tiền vào tài khoản là hệ thống báo ngay. Nhanh gọn hẳn.
Lúc ráp nối cái phần này vào hệ thống website của trung tâm, mình chỉ mất khoảng chừng 15 phút ngồi xem qua tài liệu hướng dẫn giao tiếp hàm API. Hệ thống hỗ trợ tạo VietQR quét được với 36 ngân hàng lớn nhỏ, gửi thông báo trực tiếp qua webhook theo thời gian thực. Việc thu học phí tự động diễn ra rất nhanh gọn, khoảng 10 giây sau khi điện thoại báo quét mã thành công là phần mềm của mình đã nhận được tín hiệu ghi nhận sự kiện thanh toán. Chỉ cần làm hai lần xác thực mã OTP để nối tài khoản ngân hàng là mọi thứ hoạt động bình thường, máy tự làm hết.
Mỗi người học có một số tài khoản ảo riêng biệt không đụng hàng
Cách hoạt động của công nghệ cấp tài khoản ảo này rất sát với bài toán quản lý cơ sở dữ liệu quan hệ mà mình hay giảng dạy các bạn trên lớp. Mỗi bạn khi đăng ký khoá học lập trình sẽ được hệ thống cấp định danh bằng một số tài khoản con hoặc một mã QR độc nhất vô nhị. Không đụng hàng ai. Mình thử tạo 3 giao dịch giả lập trên môi trường sandbox cùng số tiền 1.500.000 đồng nhảy vào hệ thống trong vòng vỏn vẹn 10 phút. Kết quả là mã nguồn vẫn phân tách chính xác 3 người đóng tiền khác nhau nhờ vào bộ định danh số tài khoản ảo đó, dữ liệu chạy hoàn toàn chính xác.
Song song với đó, hệ thống cũng đẩy thông báo về một nhóm chat Telegram của phòng giáo vụ trực lớp. Nội dung tin nhắn hiển thị rõ mồn một tên ngân hàng, số tài khoản đích cùng số tiền giao dịch vừa nhận được, giúp bất kỳ ai trong nhóm cũng nắm được thông tin mà chẳng cần chia sẻ tên đăng nhập hay mật khẩu ứng dụng ngân hàng cho nhau nữa. Khâu xác nhận thu học phí online gần như đã được giải quyết êm xuôi ngay ở bước thông báo tin nhắn này.

Đối chiếu số liệu rành mạch qua bảng điều khiển trung tâm
Khâu đối soát sổ sách cuối tháng từng là cực hình với bạn nhân viên kế toán của chỗ mình. Thay vì phải tải nguyên file định dạng định dạng Excel sao kê từ ngân hàng về rồi dùng hàm VLOOKUP để dò từng dòng rát cả mắt, bây giờ mọi thứ nằm sẵn trên trang quản trị my.monapay.vn nhờ tính năng Đối soát tự động. Danh sách hiển thị tối đa 100 dòng giao dịch một trang, giúp kế toán tra cứu chi tiết mức học phí 2.500.000 VNĐ theo từng mã tài khoản ảo hoặc xuất dữ liệu thô qua lệnh gọi API để đổ vào bảng tính nội bộ của công ty, bảng kê rất rõ ràng. Đỡ dò tay hẳn.
Các bước vận hành thực tế tại phòng máy tính của mình như sau:
– Bước 1: Sinh viên truy cập vào cổng thanh toán học phí của nền tảng web.
– Bước 2: Màn hình hiển thị mã VietQR chứa sẵn số tiền và mã định danh.
– Bước 3: Học viên lấy điện thoại quét mã bằng ứng dụng ngân hàng nội địa.
– Bước 4: Ngân hàng gửi biến động số dư về, nền tảng bắn ngay webhook báo cho phần mềm.
Việc triển khai cấu trúc cơ sở dữ liệu để hứng luồng sự kiện thanh toán này cũng là một bài tập rất hay mà mình thường lồng ghép vào giáo trình môn thiết kế hệ thống phần mềm. Bạn nào mua khoá học online vào buổi tối muộn thì hệ thống sẽ tự động nhận tín hiệu webhook, tự động gọi hàm mở quyền nội dung bài giảng và gửi 1 email xác nhận ngay trong phút đó mà không cần bất kỳ sự can thiệp thủ công nào từ phía giảng viên.
Vài điểm còn hạn chế khi vận hành thu học phí online
Tất nhiên khi chạy mã nguồn thực tế thì vẫn phát sinh vài rào cản làm mình chưa ưng ý với cấu trúc hiện tại. MONA Pay miễn phí 500 giao dịch mỗi tháng, nhưng nếu lớp đông học viên đóng theo từng đợt là sẽ vượt hạn mức, lúc đó phí bắt đầu tính từ 99.000 đồng mỗi tháng. Đóng tiền dồn dập. Hôm bữa khai giảng lớp ngôn ngữ lập trình Python quá đông, sinh viên lại xin chia học phí ra đóng làm 3 đợt nhỏ nên chưa hết 14 ngày đầu tháng là hệ thống dữ liệu của mình đã chạm mốc giới hạn, tốn kém thêm một khoản.
Một rắc rối khác xuất hiện khi mình cố gắng lập trình viết hàm kết nối với tính năng Xuất hoá đơn để đẩy thẳng hoá đơn điện tử cho học viên ngay sau khi họ hoàn tất nộp tiền. Hiện tại MONA Pay và MONA eInvoice còn đăng nhập riêng chưa gộp một tài khoản. Thao tác cứ phải nhảy qua nhảy lại liên tục để đối chiếu và cấu hình dữ liệu khách hàng làm mình thấy rất mất thời gian gõ phím, thực sự quá đỗi bất tiện.
Chuẩn bị hệ thống thu học phí tự động cho học kỳ mới
Như đợt trước đi lùng sục kiếm xưởng gia công ty ren m10 dựng kệ máy tính cho dàn máy tính bàn của sinh viên thực hành, mình hiểu rằng công nghệ hay máy móc nào giúp bớt việc tay chân lặp đi lặp lại là phải học cách áp dụng ngay lập tức. Việc chuyển giao sang mô hình thu học phí online tự báo có đã cứu phòng giáo vụ trung tâm mình khỏi cảnh căng thẳng tột độ mỗi đợt chốt sổ cuối tháng. Nhẹ hẳn người. Sinh viên thích mà giáo vụ cũng rảnh tay hơn hẳn.
Toàn bộ quá trình mã hoá từ lúc học sinh lấy điện thoại quét mã VietQR ngân hàng, cho tới lúc tiền mặt về tới tài khoản của trường và nền tảng tự động chạy tính năng Phân quyền tự động qua đoạn script mở quyền truy cập bài giảng video chỉ tốn vỏn vẹn chừng 60 giây đồng hồ, tiến độ rất khả quan.
