Pay2S cho PrestaShop 8

Nội dung Markdown đầy đủ của trang tài liệu.

# Pay2S cho PrestaShop 8

Module PaymentOption cho PrestaShop 8.x, thanh toán qua Payment Page và xác nhận bằng IPN.

::: warning Bản thử nghiệm 0.1.0
Đã kiểm tra chữ ký, callback và adapter bằng dữ liệu giả lập; chưa kiểm thử đầu cuối trên shop thật. Cài ở staging để nghiệm thu trước khi dùng cho khách. Chưa hỗ trợ tự động gia hạn, hoàn tiền tự động hoặc đa cửa hàng.
:::

## Tải module

[Tải Pay2S PrestaShop 8 — 0.1.0 beta](/downloads/integrations/pay2s-prestashop8-0.1.0-beta.zip)

## Cài đặt

1. Shop HTTPS, PHP 8.1+, cURL và các bảng đơn hàng MySQL InnoDB.
2. Module Manager → Upload module, chọn ZIP rồi Configure.
3. Nhập ACCESS, PARTNER, SECRET và BANKS JSON: `[{"bank_id":"ACB","account_number":"YOUR_ACCOUNT"}]`.
4. Bật Pay2S cho tiền tệ VND, quốc gia và nhóm khách hàng cần dùng trong Payment Preferences.

Module tạo trạng thái **Awaiting Pay2S payment** không đánh dấu đã thu tiền. Một cart chỉ được có một gói giao hàng trong bản beta. Chưa xác minh PrestaShop 9 hoặc multistore.

## Luồng và xác nhận

Module tạo đơn chờ, gọi Pay2S tạo liên kết và đưa khách sang Payment Page. IPN tại `/module/pay2s/ipn` kiểm tra đúng đơn, gateway, VND, số tiền và chữ ký. Sau đó ghi OrderPayment và chuyển sang **Payment accepted**. Callback lặp không ghi thêm khoản thu.

Nếu khách trở lại trước IPN, trang chờ kiểm tra tối đa 2 phút rồi chuyển tới order-confirmation khi máy chủ xác nhận. Quyền tải file, hóa đơn và email do PrestaShop xử lý theo trạng thái đơn.

## Nghiệm thu

Thử thuế, giảm giá, địa chỉ, phí giao hàng, virtual product, email và OrderPayment. Thử IPN gửi lặp, chữ ký sai, sai tiền, đơn hủy và request timeout. Không dùng với giỏ hàng tách nhiều đơn hoặc gói giao hàng. Bản beta chưa có auto-refund hay subscription.

Tham khảo [Payment modules của PrestaShop](https://devdocs.prestashop-project.org/8/modules/payment/).