退款 API
位置:https://pos.jkopay.com/{系統方名稱}/Refund
請求參數
參數名稱 | 資料型態 | 最大長度 | 必要 | 說明 |
---|---|---|---|---|
MerchantID | String | 10 | Y | 特店代碼,請依街口提供的測試/正式商店代碼更新 |
StoreID | String | 20 | Y | 商店編號 |
StoreName | String | 100 | Y | 商店名稱,請帶入半形字元 |
GatewayTradeNo | String | 20 | Y | 銀行端交易序號。若無,請放空值 |
MerchantTradeNo | String | 60 | Y | 商店端交易序號(退款流水號) 需為唯一值,不可重複 |
PosID | String | 20 | Y | POS 機號 |
PosTradeTime | String | 19 | Y | POS端交易日期時間,格式:yyyy/MM/dd HH:mm:ss |
TradeNo | String | 25 | Y | 原街口端交易序號 POS 端需比對客戶退款單號是否正確 |
TradeAmount | int | Y | 退款金額 | |
Remark | String | 1000 | Y | 備註。若無,請放空值 |
Extra1 | String | 512 | Y | 保留欄位一。若無,請放空值 |
Extra2 | String | 512 | Y | 保留欄位二。若無,請放空值 |
Extra3 | String | 512 | Y | 保留欄位三。若無,請放空值 |
SendTime | String | 14 | Y | 交易發送日期時間,格式:yyyyMMddHHmmss |
Sign | String | 64 | Y | 簽章值,請參照【1.1交易簽章規則】章節。 須為全小寫 |
範例如下:
{
"Extra1": "",
"Extra2": "",
"Extra3": "",
"GatewayTradeNo": "",
"MerchantID": "9999999",
"MerchantTradeNo": "2020009041651",
"PosID": "1",
"PosTradeTime": "2020/08/01 10:05:11",
"Remark": "",
"SendTime": "20200801100511",
"StoreID": "9999999",
"StoreName": "街口測試",
"TradeAmount": 10,
"TradeNo": "J0065220120100700005",
"Sign": "8163ebc9f568dd957d0f25c0e4297c108ecbfab22dbc017878f14b350161cb3a"
}
返回參數
參數名稱 | 資料型態 | 最大長度 | 必要 | 說明 |
---|---|---|---|---|
MerchantID | String | 10 | Y | 同 request |
StoreID | String | 20 | Y | 同 request |
GatewayTradeNo | String | 20 | 同 request | |
MerchantTradeNo | String | 60 | Y | 同 request |
PosID | String | 20 | Y | 同 request |
TradeAmount | int | Y | 退款金額 | |
DebitAmount | int | Y | 付款方式退款金額 | |
AvailableAmount | int | Y | 儲值帳戶餘額,目前此欄位預設為 0 | |
TradeNo | String | 25 | Y | 同 request |
RefundTradeNo | String | 25 | Y | 街口端退款交易序號 |
RefundTradeTime | String | 19 | Y | 街口端退款交易日期時間 格式:yyyy/MM/dd HH:mm:ss |
StatusCode | String | 3 | Y | 回應碼 000:表示交易成功。 請參照【1.2回應碼(StatusCode)】章節 |
StatusDesc | String | 1000 | Y | 回應碼說明 |
IsRep | String | 1 | Y | 是否為重複交易 0:非重複交易 1:重複交易 |
ActionCode | String | 1 | Y | 建議處理代碼,保留欄位 |
PaymentType | int | Y | 退回方式 1:儲值帳戶 3:銀行帳戶(Account Link) 4:信用卡 | |
RedeemName | String | 10 | Y | 折抵方式(三擇一),無折抵則回覆空字串 Coin:街口折抵 (所有由街口提供之折抵方式:含街口幣與官方街口券等) Store:店家折抵 (所有由店家提供之折抵方式:含店家街口券等) Coin, Store:街口折抵 + 店家折抵 (使用上述兩種折抵方式) |
RedeemAmount | int | 退還街口折抵金額,此欄位為正值。 | ||
StoreRedeemAmount | int | C | 店家折抵金額,此欄位為正值。 該筆交易店家折抵才會回應此欄位 | |
InvoiceVehicle | String | 20 | 手機條碼發票載具資訊 | |
MerMemToken | String | 30 | 第三方合作廠商會員識別資訊 | |
Remark | String | 1000 | 同 request | |
Extra1 | String | 512 | 同 request | |
Extra2 | String | 512 | 同 request | |
Extra3 | String | 512 | 同 request |
範例如下:
{
"MerchantID": "9999999",
"StoreID": "9999999",
"GatewayTradeNo": "",
"MerchantTradeNo": "2020009041651",
"PosID": "1",
"TradeAmount": 10,
"DebitAmount": 7,
"AvailableAmount": 0,
"TradeNo": "J0065220120100700005",
"RefundTradeNo": "K0065220120100700005",
"RefundTradeTime": "2020/10/07 20:18:07",
"IsRep": 0,
"PaymentType": 1,
"RedeemName": "Coin",
"RedeemAmount": 2,
"StoreRedeemAmount": 1,
"InvoiceVehicle": "/7DX6J02",
"MerMemToken": "",
"Remark": "",
"Extra1": "",
"Extra2": "",
"Extra3": "",
"ActionCode": "0",
"StatusCode": "000",
"StatusDesc": "交易成功"
}