Tích hợp WooCommerce
Plugin BeePay cho WordPress + WooCommerce — tự động xác nhận đơn chuyển khoản.
Yêu cầu
- WordPress 5.8+
- WooCommerce 7.0+
- PHP 7.4+
- Tài khoản BeePay (có API key)
Cài đặt
1. Tải plugin
Tải plugin BeePay cho WordPress (file .zip, ~50KB).
2. Upload vào WordPress
Admin WP → Plugins → Add New → Upload Plugin → chọn file .zip → Install Now → Activate.
3. Kết nối API
Admin WP → BeePay → Settings:
| Field | Giá trị |
|---|---|
| API Key | Lấy từ id.beepay.vn/account |
| Payment Prefix | Prefix riêng cho shop, VD SHOP — khách phải ghi SHOP123 trong nội dung chuyển khoản |
| Webhook Secret | Auto-generate — copy về lưu trong BeePay Dashboard |
Bấm Lưu → plugin tự gọi API /api/systems/register lên BeePay để đăng ký.
4. Bật cổng thanh toán
WooCommerce → Settings → Payments → bật BeePay Chuyển khoản tự động → cấu hình:
- Hiển thị QR code VietQR tự động trên trang thanh toán
- Tự động đổi trạng thái đơn sang "Đã thanh toán" khi webhook nhận được khớp
order_id - Gửi email xác nhận cho khách
Flow khách hàng
- Khách checkout → chọn BeePay làm payment method
- WC tạo đơn với
order_id={prefix}{order_number}(VD:SHOP123) - Hiển thị QR VietQR + nội dung chuyển khoản
- Khách quét QR / chuyển khoản với nội dung có sẵn
- BeePay phát hiện giao dịch → POST webhook đến
/?wc-api=beepay_webhook - Plugin verify signature → match
order_id→ đổi trạng thái WC sangprocessing/completed
Troubleshooting
Webhook không về
- Check BeePay Dashboard → Giao dịch — giao dịch có được nhận không?
- Nếu có nhưng webhook
failed: check endpoint WordPress có accessible từ internet không (không đặt sau basic auth, không block IP BeePay)
Đơn không tự chuyển "completed"
- Xem WooCommerce → BeePay Logs — có thấy webhook đến không?
- Verify signature fail? Kiểm tra
Webhook Secrettrên plugin và BeePay Dashboard khớp nhau
Order ID không match
- Khách ghi sai nội dung chuyển khoản → vào Dashboard BeePay, click giao dịch → Match đơn thủ công
Plugin source
Miễn phí, MIT license. GitHub: beepay/woocommerce-plugin (coming soon).
Tiếp theo: Custom PHP · Custom Node.js