Tích hợp MONA Pay vào WooCommerce trong 15 phút nghe thì nhanh, nhưng thực tế phần lớn thời gian nằm ở hai việc: cấu hình webhook cho đúng và chạy thử trên sandbox. Chúng tôi đã làm việc này với nhiều shop nhỏ chạy WordPress, nên bài này đi thẳng vào những bước hay gặp nhất. Nếu bạn đang muốn nhận tiền cho website bán hàng mà bớt đối chiếu thủ công, hướng đi này đáng để cân nhắc.
Vì sao shop WooCommerce nên có cổng nhận tiền tự động
Shop nhỏ thường bắt đầu bằng chuyển khoản thủ công. Khách chuyển tiền, chủ shop mở app ngân hàng, đối chiếu nội dung rồi tự tay cập nhật đơn trong WooCommerce. Vài đơn mỗi ngày thì chưa thấy gì đáng lo.
Nhưng khi lượng đơn lên vài chục mỗi ngày, việc đối chiếu bằng tay bắt đầu sinh lỗi. Có khi nhầm mã đơn, có khi quên đổi trạng thái. Khách nhắn hỏi thì không ai chắc tiền đã về hay chưa, và cả buổi tối có thể trôi đi chỉ để dò lại sổ sách.
Cổng nhận tiền tự động xử lý đúng chỗ đó. Hệ thống đọc biến động số dư, khớp mã đơn trong nội dung chuyển khoản, rồi gọi về WooCommerce để đổi trạng thái. Nói gọn lại, việc đối chiếu được chuyển từ người sang máy.
Điều chúng tôi hay nhắc khách là đừng chỉ nhìn vào phí. Hãy hỏi xem khi có sự cố, bạn có biết tiền đang nằm ở đâu, đơn nào đã khớp, đơn nào còn treo không. Một công cụ rẻ nhưng thiếu minh bạch sẽ khiến bạn tốn công hơn nhiều so với khoản tiết kiệm ban đầu.
Chuẩn bị trước khi cài plugin
Trước khi đụng vào WordPress, bạn cần chuẩn bị ba thứ. Thứ nhất là một tài khoản MONA Pay đã xác minh. Thứ hai là danh sách ngân hàng bạn dùng để nhận tiền, vì MONA Pay chỉ hoạt động với những ngân hàng đã liên kết. Thứ ba là quyền quản trị WooCommerce cùng một bản sao lưu website, phòng khi có trục trặc.
Chúng tôi cũng khuyên nên dựng một bản staging nếu có điều kiện. Đừng thử trực tiếp trên website đang bán hàng, nhất là khi bạn chưa quen với webhook. Một bản sao đã cài sẵn plugin cho phép bạn thử sai thoải mái mà không ảnh hưởng đến khách thật.
Cài và kích hoạt plugin
Vào mục Plugin, tìm plugin thanh toán MONA Pay cho WooCommerce, cài đặt rồi kích hoạt. Sau đó vào WooCommerce, mở phần Thanh toán và bật phương thức MONA Pay. Đây là lúc bạn dán API key lấy từ bảng điều khiển MONA Pay.
Một lỗi nhỏ mà nhiều người gặp là copy dư khoảng trắng ở đầu hoặc cuối API key. Khi lưu, plugin báo sai khóa, nhưng nhìn lại thì thấy đúng. Hãy dán lại và kiểm tra kỹ trước khi nghi ngờ tài khoản có vấn đề.
Sau khi lưu, nên mở trang thanh toán để xem nút MONA Pay đã hiện chưa. Nếu chưa thấy, thường là do phương thức chưa được bật, hoặc tổng tiền đơn hàng nằm ngoài ngưỡng plugin hỗ trợ.
Cấu hình webhook: phần quan trọng nhất
Webhook là cách MONA Pay báo cho website biết một giao dịch đã thành công. Không có webhook, đơn vẫn nằm ở trạng thái chờ dù khách đã chuyển tiền. Đây là chỗ chúng tôi thấy nhiều shop mắc lỗi nhất, và lỗi thường không hiện ra ngay mà chỉ lộ khi đã có đơn tồn đọng.
Bạn lấy địa chỉ webhook từ trang cài đặt của plugin, dán vào mục webhook trong bảng điều khiển MONA Pay. Tiếp theo chọn các sự kiện cần nhận, tối thiểu là sự kiện giao dịch thành công. Dùng chức năng gửi thử để kiểm tra. Nhận được phản hồi 200 nghĩa là website đã sẵn sàng nhận thông báo.
Có vài điều cần để ý. Địa chỉ webhook phải dùng HTTPS, nếu không một số máy chủ sẽ từ chối. Nếu website bật tường lửa hoặc plugin bảo mật, hãy đảm bảo đường dẫn webhook không bị chặn. Và đừng đổi permalink sau khi đã cấu hình xong, vì đường dẫn thay đổi sẽ khiến webhook cũ hỏng âm thầm.
Test trên sandbox trước khi bán thật
Sandbox là môi trường thử nghiệm, giao dịch ở đây không trừ tiền thật. Chúng tôi luôn yêu cầu khách chạy đủ bốn kịch bản trước khi mở bán: thanh toán thành công, thanh toán thiếu tiền, thanh toán trùng và hủy đơn giữa chừng.
Với kịch bản thành công, tạo một đơn nhỏ rồi thanh toán bằng sandbox. Sau đó kiểm tra ba thứ: đơn đã chuyển sang trạng thái đã thanh toán chưa, email xác nhận có gửi không, và số đơn trên bảng quản lý có khớp không. Chỉ cần một trong ba lệch là đã có vấn đề cần xem lại.
Kịch bản thiếu tiền và thanh toán trùng hay bị bỏ qua nhất, nhưng về sau lại gây rắc rối nhiều nhất. Khi khách chuyển thiếu, đơn nên ở trạng thái chờ bổ sung, không được đánh dấu đã thanh toán. Khi khách chuyển trùng, bạn cần quy trình hoàn tiền rõ ràng. Ghi lại kết quả từng kịch bản để sau này dễ đối chiếu khi có khiếu nại.
Ví dụ thực tế: một shop phụ kiện điện thoại
Chúng tôi từng hỗ trợ một shop phụ kiện điện thoại khoảng ba chục đơn mỗi ngày. Ban đầu họ đối chiếu chuyển khoản bằng bảng tính, mỗi buổi tối mất gần hai tiếng. Sau khi tích hợp, luồng xử lý gọn hơn hẳn: khách chuyển khoản kèm mã đơn, hệ thống nhận biến động, khớp mã và cập nhật đơn tự động.
Điều khiến chủ shop yên tâm nhất không phải là tiết kiệm thời gian, mà là biết chắc đơn nào đã thanh toán. Sau vài tuần, họ không còn phải nhắn lại hỏi khách đã chuyển tiền chưa.
Nếu bạn muốn các bước chi tiết hơn về việc gắn thanh toán vào website, có bài riêng về hướng dẫn gắn cổng thanh toán vào website, trong đó có thêm các trường hợp xử lý lỗi mà bài này chưa đi sâu. Ở phía hạ tầng, bạn cũng nên cân nhắc việc bảo vệ tên miền và hosting ngay từ đầu, vì webhook chỉ an toàn khi máy chủ được cấu hình chặt chẽ; bên mình có tổng hợp các bước đáng làm trong các bước bảo mật cơ bản nên làm ngay.
Những lỗi thường gặp và cách tránh
Lỗi đầu tiên là lưu API key ở nhiều nơi, có khi trong file ghi chú cá nhân. Khi cần đổi khóa, không ai nhớ đã dán ở đâu. Hãy giữ khóa ở một nơi duy nhất và ghi rõ ai là người quản lý.
Lỗi thứ hai là quên đăng ký lại webhook sau khi đổi tên miền hoặc chuyển hosting. Website vẫn chạy bình thường, nhưng tiền về không cập nhật đơn. Lỗi này khó phát hiện nếu không có kiểm tra định kỳ, nên chúng tôi thường nhắc khách ghi lịch kiểm tra mỗi tháng.
Lỗi thứ ba là đưa lên production ngay sau khi cài xong mà chưa test sandbox. Chúng tôi từng gặp một shop bán cả buổi sáng mới phát hiện đơn không tự xác nhận, khách nhắn hỏi dồn dập khiến cả đội phải làm việc thủ công suốt chiều.
Câu hỏi thường gặp
Cần làm gì khi webhook báo lỗi?
Trước hết kiểm tra địa chỉ có đúng HTTPS không, rồi xem có plugin bảo mật nào chặn yêu cầu từ máy chủ MONA Pay không. Nếu vẫn lỗi, mở nhật ký webhook trong bảng điều khiển để biết mã phản hồi cụ thể, từ đó xử lý đúng nguyên nhân thay vì đoán mò.
Có thể dùng sandbox để thử hoàn tiền không?
Có, sandbox cho phép mô phỏng luồng hoàn tiền. Hãy thử ít nhất một lần để hiểu quy trình trước khi gặp khách thật.
Cần bao nhiêu thời gian để tích hợp hoàn chỉnh?
Nếu đã có WordPress và WooCommerce, phần cài đặt và cấu hình cơ bản có thể xong trong khoảng 15 phút. Thời gian thực tế thường dài hơn ở khâu test, và chúng tôi khuyên đừng rút ngắn phần này.
Shop chưa có đơn nào, có cần tích hợp ngay không?
Nên làm sớm để có thời gian test và làm quen với luồng xử lý. Như vậy bạn không phải vội vàng sửa lỗi khi đơn đầu tiên đã về.