模擬串接服務 - 票券作廢交易查詢

經銷商『票券作廢交易查詢』請求欄位
Id Name Description Type Additional Information
1 agent_uid 經銷商商務代號
string 必填
2 service 服務名稱
string 必填
{ "service_name": "api", "cmd": "api\/voucherinvalidquery" }
JSON格式,AES256加密資料
3 encry_data 『票券作廢交易查詢』欄位資料 string 必填
『票券作廢交易查詢』欄位參考
JSON格式,AES256加密資料
特約商店『票券作廢交易查詢』請求欄位
Id Name Description Type Additional Information
1 store_uid 特約商店商務代號
string 必填
2 service 服務名稱
string 必填
{ "service_name": "api", "cmd": "api\/voucherinvalidquery" }
JSON格式,AES256加密資料
3 encry_data 『票券作廢交易查詢』欄位資料 string 必填
『票券作廢交易查詢』欄位參考
JSON格式,AES256加密資料
票券作廢交易查詢』欄位
Id Name Description Type Additional Information
1 order_id 票券作廢票券處理編號 string 必填
票券作廢交易查詢』回傳欄位
Id Name Description Type Additional Information
1 code 執行狀態碼 string 『票券執行狀態碼』值參考
2 msg 執行狀態訊息 string
3 content 查詢內容 object 『票券作廢交易內容』欄位參考
票券執行狀態碼』 值內容
Value Description Type Additional Information
100 資料不正確 string
400 系統錯誤 string
B200 執行成功 string
B500 執行失敗 string
票券作廢交易內容』欄位
Id Name Description Type Additional Information
1 code 執行狀態碼 string 『票券執行狀態碼』值參考
2 msg 執行狀態訊息 string
3 uid 票券作廢交易訂單UID string
4 key 交易驗証碼 string
5 order_id 票券作廢票券處理編號 string
6 invalid_date 作廢處理完成日期時間(格式為YYYYMMDDHHmmss) string
7 items 內容 array 每筆『票券作廢資訊回傳』欄位參考
8 book_used 若單位為本時,作廢失敗且原因為票券有使用過之票券清單
(一本如果有一張被使用就不能作廢)
array 每筆『單位為本時,有使用過之票券清單』欄位參考
9 invalid_from_type 作廢點類型 int 『票券作廢點類型』值參考
10 invalid_store_uid 作廢特約商店商務代號 string
11 invalid_dealer_no 自訂作廢點編號 string
12 echo_0 自訂回傳參數 1 string
13 echo_1 自訂回傳參數 2 string
14 echo_2 自訂回傳參數 3 string
15 echo_3 自訂回傳參數 4 string
16 echo_4 自訂回傳參數 5 string
票券執行狀態碼』 值內容
Value Description Type Additional Information
100 資料不正確 string
400 系統錯誤 string
B200 執行成功 string
B500 執行失敗 string
B501 執行失敗,資料不正確 string
票券作廢資訊回傳』欄位
Id Name Description Type Additional Information
1 issuance_uid 委託發行商 string
2 unit_type 單位類型 int 『票券實體券單位』值參考
3 no 自訂票券號碼或本號碼 string
4 ticket 若單位為券時,作廢成功票券資訊 object|null 『票券作廢資訊回傳』欄位參考
5 book 若單位為本時,作廢成功票券資訊清單 array 每筆『單位為本,作廢成功票券資訊』欄位參考
單位為本時,有使用過之票券清單』欄位
Id Name Description Type Additional Information
1 book_no 本號 string
2 items 已使用券資訊 array 每筆『單位為本時,有使用過之票券清單』欄位參考
票券作廢點類型』 值內容
Value Description Type Additional Information
1 MYTIX特約商店(預設) int
2 自訂作廢點編號 int
票券實體券單位』 值內容
Value Description Type Additional Information
1 int
2 int
票券作廢資訊回傳』欄位
Id Name Description Type Additional Information
1 status 作廢前之票券狀態 int
2 custom_serial_no 自訂票券號碼 string
3 serial_no 系統票券號碼 string
4 sales_from_type 銷售點類型 int 『票券銷售點類型』值參考
5 sales_store_uid 銷售特約商店商務代號 string
6 sales_dealer_no 自訂銷售點編號 string
7 cost 購買單價 float
8 price 購買定價 float
單位為本,作廢成功票券資訊』欄位
Id Name Description Type Additional Information
1 status 作廢前之票券狀態 int
2 custom_serial_no 自訂票券號碼 string
3 serial_no 系統票券號碼 string
4 sales_from_type 銷售點類型 int 『票券銷售點類型』值參考
5 sales_store_uid 銷售特約商店商務代號 string
6 sales_dealer_no 自訂銷售點編號 string
7 cost 購買單價 float
8 price 購買定價 float
單位為本時,有使用過之票券清單』欄位
Id Name Description Type Additional Information
1 custom_serial_no 自訂票券號碼 string
2 serial_no 系統票券號碼 string
3 sales_from_type 銷售點類型 int 『票券銷售點類型』值參考
4 sales_store_uid 銷售特約商店商務代號 string
5 sales_dealer_no 自訂銷售點編號 string
6 reimbursement_from_type 核銷點類型 int 『票券核銷點類型』值參考
7 reimbursement_store_uid 核銷特約商店商務代號 string
8 reimbursement_dealer_no 自訂核銷點編號 string
9 cost 購買單價 float
10 price 購買定價 float
票券銷售點類型』 值內容
Value Description Type Additional Information
1 MYTIX特約商店(預設) int
2 自訂銷售點編號 int
票券核銷點類型』 值內容
Value Description Type Additional Information
1 MYTIX特約商店(預設) int
2 自訂核銷點編號 int
AES256資料加密方式說明

1、所有的API送出HTTPs請求之欄位中,service 和 encry_data 欄位皆進行 AES256+BASE64 加密處理。
2、AES加密,格式為CBC,長度為256bits,金鑰長度32,IV長度16,傳遞內文為加密後組合IV並經過Base64轉換後傳出。

方式:
使用自訂的AES256函式將JSON資料加密後,再將IV資料和此AES256加密後的JSON資料串聯後,使用base64再進行加密成ASCII字串即可完成加密。

    PHP加密示意:
    AesEncrypt -> base64_ecode($IV . $JSON)

    C#加密示意:
    AesEncrypt -> (bytes)IV+(bytes)Json -> toBase64

    Java加密示意:
    AesEncrypt -> (bytes)IV+(bytes)Json -> toBase64

    Node.js加密示意:
    AesEncrypt -> concat([IV,JSON], [IV_SIZE,JSON_SIZE]) -> toString('base64')
    Python加密示意:
    AesEncrypt -> (bytes)IV+(bytes)Json -> base64.b64encode

範例程式碼