支援的終端機型號
- Landi A8 / A8S:支援所有支付方式
- PAX A920:僅支援 QR Code 支付
1. POS-KEY
POS-KEY 為交易資料加密金鑰,由 Haojin App 產生。 系統預設為 啟用加密。商戶可於商戶平台(MMS)開啟 / 關閉加密或重新產生 POS-KEY,並需於 Haojin App 重新整理裝置後才會生效。
重新產生 POS-KEY
Haojin App → 我的 → 設定 → POS-Key → 產生查詢 POS-KEY
商戶平台 → 設定 → 裝置設定 → POS Key 管理2. 加密方式(Encryption)
- 所有交易資料皆使用 AES-128 / CBC / PKCS5Padding
- 加密金鑰:POS-KEY
- IV:
qfpay202306_hjsh - 加密後再進行 Base64 編碼
3. 請求資料格式(Request Payload)
3.1 付款(Payment)
- QR Code 模式:MPM / CPM 依最近一次使用自動切換
camera_id可指定前 / 後鏡頭- 刷卡交易:
wait_card_timeout為最大等待時間 - 錢包交易:
payment_timeout為整筆交易等待時間 - PayMe 最長僅支援 120 秒
scan_type:QRCODE_PAYSCAN_PAY
moveToBack:0:不返回(預設)1:交易完成後自動返回首頁
3.2 退款(Refund / Void)
3.3 列印收據
3.4 列印交易摘要
3.5 交易查詢
支援參數out_trade_no
3.6 取消付款 / 退款請求
4. 簽名產生機制(Signature Generation)
計算流程
- 先將
content進行 AES 加密 - 再以加密結果計算
digest
5. 欄位定義
5.1 func_type
5.2 channel
CPM = 消費者出示碼MPM = 商戶出示碼
6. 回應格式
回應代碼
7. USB 傳輸方式
- 以 USB 連接 POS 與收銀機
- 依 USB 協議封裝資料
- 回傳資料需解析後再進行 AES 解密
8. HTTP / HTTPS 通訊協議
- 預設 Port:
9001 - 使用
POST - Header:
如需設定 HTTPS,請參閱 ECR HTTPS 整合文件。
API 路徑
9. TCP 協議
- 預設 Port:9002
- 使用 Socket
- 所有內容皆為 AES 加密
10. USB 封包結構
Timeout
回應逾時:1000ms串列埠設定
USB-to-Serial 支援
此限制僅適用於 USB 模式整合。
若使用 HTTP / TCP 整合方式,則不受晶片限制。
若使用 HTTP / TCP 整合方式,則不受晶片限制。
封包範例
明文:{“content”:”{"amt":100,"channel":"wx","funcType":1,"mode":1}”,“digest”:“2f0c4683e25a7b9407265033070e9034”}
Hex: 2f6e011001007f00747b22636f6e74656e74223a227b5c22616d745c223a3130302c5c226368616e6e656c5c223a5c2277785c222c5c2266756e63547970655c223a312c5c226d6f64655c223a317d222c22646967657374223a223266306334363833653235613762393430373236353033333037306539303334227d2f6e
