Cách tích hợp SePay vào website WordPress

SePay là nền tảng thanh toán Việt Nam giúp tự động xác nhận thanh toán chuyển khoản qua ngân hàng bằng công nghệ Open Banking, thay cho việc kế toán phải trực kiểm tra biến động số dư thủ công. Nếu bạn đang vận hành một website WordPress bán hàng (đặc biệt là dùng WooCommerce), việc tích hợp SePay sẽ giúp khách hàng thanh toán bằng cách quét mã VietQR và đơn hàng tự động cập nhật trạng thái chỉ trong vài giây, không tốn phí trung gian.

Bài viết này hướng dẫn chi tiết các cách tích hợp SePay vào WordPress, từ đơn giản (dùng plugin có sẵn) đến nâng cao (tự tích hợp qua Webhook/API).

1. Chuẩn bị trước khi tích hợp

Trước khi cài đặt plugin, bạn cần:

  1. Đăng ký tài khoản SePay tại my.sepay.vn.
  2. Liên kết tài khoản ngân hàng với SePay và xác nhận qua OTP. SePay hỗ trợ kết nối hơn 30 ngân hàng để tự động xác nhận thanh toán, bao gồm Vietcombank, VPBank, VIB, VietinBank, MBBank, ACB, Sacombank, TPBank, Eximbank, HDBank, BIDV, TechcomBank, MSB, Agribank…
  3. Chuẩn bị website WordPress đã cài WooCommerce (nếu bạn dùng plugin WooCommerce Gateway) hoặc nắm rõ nền tảng bán hàng bạn đang dùng (LearnPress, HostBill…) nếu cần add-on riêng.

2. Cách 1: Tích hợp qua Plugin SePay Gateway cho WooCommerce (dễ nhất)

Đây là cách được khuyên dùng cho phần lớn website bán hàng WordPress, vì không cần biết code.

Bước 1: Cài đặt plugin

  • Vào Trang quản trị WordPress → Plugin → Cài Plugin mới.
  • Gõ từ khóa “sepay” vào ô tìm kiếm.
  • Nhấn Cài đặt ngay, sau đó Kích hoạt.

Nếu không tìm thấy qua kho plugin, bạn có thể tải file sepay-gateway.zip trực tiếp từ trang chủ SePay hoặc WordPress.org, rồi vào Plugin → Cài mới → Tải plugin lên để tải file lên và cài đặt.

đường link plugin: https://vi.wordpress.org/plugins/sepay-gateway/

Bước 2: Kết nối tài khoản SePay

  • Sau khi kích hoạt, plugin sẽ chuyển bạn đến trang thiết lập SePay Gateway.
  • Nhấn Kết nối tài khoản — hệ thống sẽ chuyển bạn sang trang ủy quyền để đăng nhập vào tài khoản my.sepay.vn (nếu chưa đăng nhập).
  • Nhấn Cho phép để cấp quyền truy cập.

Bước 3: Chọn tài khoản ngân hàng nhận tiền

  • Chọn tài khoản ngân hàng đã liên kết trên SePay để hiển thị trên trang thanh toán.
  • Nếu chưa có ngân hàng nào, vào trang Kết nối ngân hàng trên SePay để thêm mới trước.
  • Nhấn Hoàn tất thiết lập.

Sau bước này, SePay sẽ tự động tạo một Webhook tương ứng để gửi thông báo mỗi khi có tiền vào tài khoản ngân hàng đã chọn — bạn không cần cấu hình webhook thủ công.

Bước 4: Cấu hình chi tiết phương thức thanh toán

Trong giao diện quản trị của plugin, bạn có thể chỉnh:

  • Bật/Tắt: kích hoạt hoặc tạm dừng phương thức thanh toán này.
  • Tên hiển thị: ví dụ “Chuyển khoản ngân hàng (Quét mã QR)”.
  • Mô tả: nội dung hướng dẫn hiển thị cho khách khi chọn phương thức này.
  • Ngân hàng & số tài khoản/VA: với các ngân hàng chỉ hỗ trợ xác thực qua số VA (như BIDV, OCB, MSB, KienLongBank), bạn cần nhập đúng số VA được cấp.
  • Tiền tố mã thanh toán: dùng để SePay nhận diện đúng đơn hàng qua nội dung chuyển khoản.
  • Trạng thái đơn hàng sau khi thanh toán đủ: có thể chọn tự chuyển sang “Đang xử lý” hoặc “Đã hoàn tất”.
  • Thông điệp thanh toán thành công: hỗ trợ văn bản thường, HTML hoặc cả JavaScript (hữu ích nếu bạn muốn bắn event lên Google Analytics khi thanh toán thành công).

Bước 5: Kiểm thử

Đặt một đơn hàng test nhỏ trên website, chọn phương thức Chuyển khoản ngân hàng (Quét mã QR). Nếu mã QR VietQR hiển thị đúng thông tin đơn hàng, và sau khi bạn quét chuyển khoản, trang xác nhận “Bạn đã thanh toán thành công” hiện lên trong khoảng 5–10 giây, đồng thời đơn hàng trong WooCommerce tự chuyển từ Tạm giữ (On-hold) sang Đang xử lý/Đã hoàn tất — nghĩa là bạn đã tích hợp thành công.

3. Cách 2: Dùng add-on riêng cho các plugin bán hàng khác (LearnPress…)

Nếu website của bạn không dùng WooCommerce mà dùng các plugin bán hàng/khóa học khác như LearnPress (LMS bán khóa học online), SePay cũng có add-on riêng, ví dụ LearnPress SePay Payment Add-on, cho phép tạo mã QR thanh toán khóa học và xác nhận giao dịch tự động. Cách cài đặt tương tự: tìm add-on trong kho plugin tương ứng, cài đặt, kích hoạt và kết nối tài khoản SePay.

4. Cách 3: Tự tích hợp qua Webhook/API (cho website không có plugin có sẵn)

Nếu website WordPress của bạn dùng theme/plugin bán hàng tùy chỉnh (không phải WooCommerce hay các nền tảng có plugin sẵn), bạn vẫn có thể tích hợp SePay bằng cách tự lập trình xử lý Webhook.

Nguyên tắc hoạt động:

  1. Bạn tạo một Webhook endpoint trên website của mình (một URL nhận request), ví dụ: https://website-cua-ban.com/wp-json/your-endpoint/v1/add-payment.
  2. Trong my.sepay.vn, vào phần Tích hợp → Webhooks, tạo webhook mới:
  • Chọn điều kiện bắn webhook: ví dụ “Có tiền vào”.
  • Chọn tài khoản ngân hàng áp dụng.
  • Nhập URL webhook (endpoint bạn đã tạo ở bước 1).
  • Chọn kiểu chứng thực: API Key.
  • Chọn Request Content-Type: application/json.
  1. Khi có giao dịch chuyển khoản vào tài khoản ngân hàng, SePay sẽ gửi một request HTTP POST chứa dữ liệu giao dịch đến endpoint của bạn. Endpoint cần xử lý dữ liệu này (đối chiếu mã đơn hàng, số tiền) và phản hồi HTTP 200 cùng success=true trong vòng 30 giây để xác nhận đã nhận.
  2. Dựa vào dữ liệu nhận được, bạn cập nhật trạng thái đơn hàng trong hệ thống WordPress của mình (ví dụ update post_meta của đơn hàng, hoặc gọi hàm cập nhật trạng thái tùy theo plugin bán hàng bạn dùng).

SePay hỗ trợ tài liệu và mẫu code cho nhiều nền tảng (PHP, Laravel, Node.js…) trên trang dành cho developer, rất phù hợp nếu bạn cần tích hợp tùy biến ngoài WooCommerce.

5. Một số lưu ý khi tích hợp

  • Không mất phí trung gian: SePay không thu phí phần trăm theo giao dịch — tiền chuyển khoản trực tiếp từ tài khoản người mua sang tài khoản người bán, không bị giữ ở bên thứ ba.
  • SePay không phải là trung gian thanh toán theo nghĩa pháp lý, mà đóng vai trò xác thực giao dịch chuyển khoản để tự động hóa xác nhận đơn hàng.
  • Nên kiểm tra kỹ mã VA/tiền tố thanh toán nếu dùng các ngân hàng yêu cầu số VA (BIDV, OCB, MSB, KienLongBank), vì đây là cách SePay đối soát đúng đơn hàng.
  • Nếu gặp lỗi khi kết nối hoặc webhook không bắn, kiểm tra lại API Key và đảm bảo endpoint của bạn phản hồi đúng chuẩn trong thời gian quy định.
  • Có thể liên hệ hỗ trợ trực tiếp từ SePay qua hotline hoặc Zalo OA nếu cần trợ giúp trong quá trình cấu hình.

Kết luận

Với hầu hết website WordPress dùng WooCommerce, tích hợp SePay chỉ mất khoảng vài chục phút bằng plugin SePay Gateway có sẵn — không cần biết code, không cần thủ tục phức tạp. Trường hợp website của bạn dùng nền tảng bán hàng tùy chỉnh, bạn vẫn có thể tích hợp linh hoạt qua Webhook/API mà SePay cung cấp. Việc tự động hóa xác nhận thanh toán chuyển khoản giúp bạn tiết kiệm thời gian đối soát, giảm sai sót và mang lại trải nghiệm mua hàng mượt mà hơn cho khách.

Rate this post

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

4 + bảy =

Nhắn tin qua Zalo

0932644183