Integrate PX QRCode Pay Refund
Description
PX Pay 條碼支付退款。
PX Pay 金流參數:加密金鑰、特店門市代號、特店英文名稱
情境:
- 依廠商金流參數設定進行付款:金流參數為必填、門市代碼不需要填
- 依全通路金流參數設定進行付款:門市代碼為必填、金流參數不需要填
Resource
POST /v1/payment/integrate/refund
Authorization
採用 OAuth 2.0 Bearer Token,詳細使用流程請參考 Auth Login。
Request Body Parameters
| Name | Type | Description |
|---|---|---|
| type | string | 付款方式,請輸入 PX_QRCODE_PAY |
| request | Request | 請求參數 |
| store_id | string | 門市代碼 (optional) |
| is_test | boolean | 是否為測試環境
|
Request Body Parameters - Request
| Name | Type | Description |
|---|---|---|
| verify_code | string | 加密金鑰 (optional) |
| store_id | string | 特店門市代號 (optional) |
| store_english_name | string | 特店英文名稱 (optional) |
| store_name | string | 特店門市名稱 |
| pos_id | string | 特店 POS 機號 |
| pos_trade_time | string | 特店 POS 機交易時間(yyyyMMddHHmmss) ex:20210101120901 |
| ori_mer_trade_no | string | 特店付款交易序號,支援英數字 付款交易使用的特店交易序號 |
| mer_trade_no | string | 特店退款交易序號,支援英數字 需為系統唯一值 |
| ori_gate_trade_no | string | Gateway 平台付款交易序號 付款交易使用的 Gateway 交易序號 若交易透過 Gateway 平台,此欄位必填 (optional) |
| gate_trade_no | string | Gateway 平台退款交易序號 若交易透過 Gateway 平台,此欄位必填 需為系統唯一值 (optional) |
| ori_px_trade_no | string | 全支付或錢包付款交易序號 付款成功後全支付或錢包回覆的訂單號 |
| amount | integer | 退款訂單金額,無號正整數 |
| none_discount_amount | integer | 退款金額中不可使用 PXPoint 或錢包點數折抵金額,「無」不可折抵金額請填 0,無號正整數 ex:菸品 |
| none_feedback_amount | integer | 退款金額中不可回饋金額,「無」不可回饋金額請填 0 用以計算 PXPoin 回饋時使用,無號正整數 ex:遊戲點數(實際不可回饋金額由特店及全支付或錢包另行約定) (optional) |
| req_time | string | 發送日期時間(yyyyMMddHHmmss) ex:20210101120901 |
| remark1 | string | 預留欄位 (optional) |
| remark2 | string | 預留欄位 (optional) |
| remark3 | string | 預留欄位 (optional) |
| marketing | Marketing | 共同行銷活動 |
| products | Product | 購買商品 |
Request Body Parameters - Marketing
| Name | Type | Description |
|---|---|---|
| marketing_code | string | 共同行銷活動代碼 (optional) |
| amount | integer | 商品金額 (optional) |
| qty | integer | 數量 (optional) |
Request Body Parameters - Product
| Name | Type | Description |
|---|---|---|
| name | string | 商品名稱 (optional) |
| amount | integer | 商品金額 (optional) |
| qty | integer | 數量 (optional) |
Request
{
"type": "PX_QRCODE_PAY",
"request": {
"verify_code": "0BD5507B08D44058AA9E560F859B98E8CED0C5AF2F9D4A6AB22EAAAEDB4755C0",
"store_id": "M0000043",
"store_english_name": "lafresh",
"store_name": "忠孝店",
"pos_id": "01",
"pos_trade_time": "20210101093922",
"ori_mer_trade_no": "202101230000001",
"mer_trade_no": "202101230000002",
"ori_gate_trade_no": null,
"gate_trade_no": null,
"ori_px_trade_no": "PXO023892398239",
"amount": "300",
"none_discount_amount": 0,
"none_feedback_amount": 0,
"req_time": "20180301230111",
"remark1": "",
"remark2": "",
"remark3": "",
"marketing": [
{
"marketing_code": "aaaaaabbbbbbcccccc"
},
{
"marketing_code": "ffffff777777dddddd"
}
],
"products": [
{
"name": "洗衣粉",
"amount": 100,
"qty": 2
},
{
"name": "可樂",
"amount": 30,
"qty": 1
},
{
"name": "餅乾",
"amount": 70,
"qty": 1
}
]
},
"store_id": "0",
"is_test": false
}
Response Body Parameters
| Name | Type | Description |
|---|---|---|
| mer_trade_no | string | 付款特店序號 |
| gate_trade_no | string | 付款 Gateway 平台序號 |
| px_trade_no | string | 全支付或錢包交易序號 |
| status_code | string | 交易結果代碼
|
| status_message | string | 交易結果訊息 |
| amount | integer | 訂單金額 |
| trade_amount | integer | 退款金額,無號正整數 |
| discount_amount | integer | 退款折抵金額 無折抵回覆 0 |
| px_trade_time | string | 全支付交易日期時間(yyyyMMddHHmmss) |
| invo_carrier | string | 付款交易使用的手機條碼載具;若付款交易時未綁條碼載具不回覆 (optional) |
| marketing | Marketing | 共同行銷活動折抵結果 |
Response Body Parameters - Marketing
| Name | Type | Description |
|---|---|---|
| marketing_code | string | 共同行銷活動代碼 (optional) |
| discount | integer | 若無法折抵回覆 0 若活動定義為折數折扣,計算結果四捨五入至整數 (optional) |
Response
{
"mer_trade_no": "202101230000002",
"gate_trade_no": null,
"px_trade_no": "PXO023892398240",
"status_code": "0000",
"status_message": "交易成功",
"amount": 300,
"trade_amount": 277,
"discount_amount": 10,
"px_trade_time": "20210710143259",
"invo_carrier": "/NFVIAZP",
"marketing": [
{
"marketing_code": "aaaaaabbbbbbcccccc",
"discount": 10
},
{
"marketing_code": "ffffff777777dddddd",
"discount": 3
}
]
}