Nhà cung cấp VNPAY Phone POS
Nhà cung cấp VNPAY Phone POS cho phép xử lý thanh toán bằng cách sử dụng điện thoại di động như một thiết bị POS. Khách hàng chạm thẻ không tiếp xúc của họ vào điện thoại của người bán để hoàn tất thanh toán.
Tổng quan
| Thuộc tính | Giá trị |
|---|---|
| Khóa Nhà cung cấp | VNPAY_PHONE_POS |
| Phương thức Thanh toán | 400_CARD |
| Quyết toán | T+1 |
| Công nghệ | NFC Không tiếp xúc |
Tính năng
- Chạm thẻ NFC - Thanh toán không tiếp xúc qua điện thoại
- Không cần phần cứng - Điện thoại hoạt động như terminal
- Hỗ trợ mạng lưới thẻ - Visa, Mastercard, JCB, UnionPay
- Ủy quyền thời gian thực - Xác minh thẻ ngay lập tức
Yêu cầu
Yêu cầu Điện thoại Người bán
| Yêu cầu | Chi tiết |
|---|---|
| HĐH | Android 9+ hoặc iOS 14+ |
| NFC | Phần cứng NFC tích hợp |
| Ứng dụng | Đã cài đặt ứng dụng VNPAY Phone POS |
| Kết nối | 4G/WiFi |
Cấu hình
VNPAY Phone POS là nhà cung cấp dựa trên SDK. Ứng dụng di động xử lý tương tác thẻ NFC, và MQ-Pay nhận thông báo IPN khi thanh toán hoàn tất.
Cấu hình Ứng dụng
typescript
import { MQPayComponent, MQPayBindingKeys, IMQPayOptions } from '@nx-3rd/mq-pay';
class MyApplication extends BaseApplication {
preConfigure() {
this.bind<IMQPayOptions>({ key: MQPayBindingKeys.MQ_PAY_CLIENT_OPTIONS })
.toValue({
vnpayPhonePos: {
enable: true,
isDefault: false,
enableController: true,
// Cờ môi trường
isProduction: process.env.NODE_ENV === 'production',
// Tùy chọn: Trình xử lý thông báo tùy chỉnh
onPaymentNotification: async (ipnData) => {
console.log('PhonePOS payment:', ipnData);
},
},
});
this.component(MQPayComponent);
}
}Tùy chọn Cấu hình
| Tùy chọn | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
enable | boolean | Có | Bật nhà cung cấp này |
isDefault | boolean | Có | Sử dụng làm nhà cung cấp mặc định |
enableController | boolean | Có | Tự động đăng ký điểm cuối IPN |
isProduction | boolean | Có | true cho môi trường production |
onPaymentNotification | function | Không | Callback xử lý IPN tùy chỉnh |
Nhà cung cấp Dựa trên SDK
Phone POS dựa trên SDK - ứng dụng di động VNPAY xử lý tương tác thẻ NFC. MQ-Pay chỉ nhận callback IPN sau khi thanh toán hoàn tất.
Luồng Thanh toán
Sử dụng API
Tạo Thanh toán Phone POS
typescript
const response = await paymentService.checkout({
source: {
type: 'Order',
id: 'order-uuid-123',
},
payment: {
provider: 'VNPAY_PHONE_POS',
method: '400_CARD',
total: 150000,
currency: 'VND',
},
expiration: {
mode: 'duration',
milliseconds: 120000,
},
});Các loại Thẻ được Hỗ trợ
| Mạng lưới Thẻ | Không tiếp xúc |
|---|---|
| Visa | Có |
| Mastercard | Có |
| JCB | Có |
| UnionPay | Có |
| Napas (Nội địa) | Có |
Mã Phản hồi
| Mã | Mô tả |
|---|---|
00 | Thành công |
05 | Không chấp nhận |
51 | Không đủ tiền |
54 | Thẻ hết hạn |
55 | Sai PIN |