應用場景:
API介接網址:
- 測試環境:https://logistics-stage.ecpay.com.tw/Express/v2/QueryLogisticsTradeInfo
- 正式環境:https://logistics.ecpay.com.tw/Express/v2/QueryLogisticsTradeInfo
HTTPS 傳輸協定
- Content Type :application/json
- HTTP Method :POST
特店傳入參數(Json格式)
PlatformID String(10)
特約合作平台商代號
- PlatformID為與綠界有合作專案的特約平台商身分使用。一般特店或賣家身分(Merchant),或平台商本身,此參數請帶放空值。
- 若隸屬於特約平台商的一般特店,此參數請帶放平台商的MerchantID。
RqHeader Object
傳入資料 必填
Timestamp String(10)
傳入時間 必填
請將傳輸時間轉換為時間戳(GMT+8),綠界會利用此參數將當下的時間轉為Unix TimeStamp來驗證此次介接的時間區間。
注意事項:
- 驗證時間區間為 5 分鐘內有效,若超過此驗證時間則此次訂單將無法建立,產生時間戳請參考相關資料。
- 合作特店須進行主機「時間校正」,避免主機產生時差,延伸API無法正常運作。
Data String
加密資料 必填
回傳相關資料,此為加密過JSON格式的資料。加密方法說明
特店傳入參數範例(Json格式)
{
"MerchantID": "2000132",
"RqHeader": {
"Timestamp": "1525168923"
},
"Data": "加密資料"
}
Data參數說明(Json格式)
MerchantID String(10)
特店編號 必填
LogisticsID String(20)
綠界訂單編號
與MerchantTradeNo(廠商交易編號)需二擇一填寫
MerchantTradeNo String(20)
廠商交易編號
- 廠商交易編號均為唯一值,不可重複使用。
- 英數字大小寫混合。
- 與LogisticsID(綠界訂單編號)需二擇一填寫
Data參數範例
{
"MerchantID": "2000132",
"LogisticsID": "2000123"
}
綠界回傳參數說明(Json格式)
PlatformID String(10)
特約合作平台商代號
- PlatformID為與綠界有合作專案的特約平台商身分使用。一般特店或賣家身分(Merchant),或平台商本身,此參數請帶放空值。
- 若隸屬於特約平台商的一般特店,此參數請帶放平台商的MerchantID。
RpHeader Object
回傳資料
Timestamp String(10)
回傳時間
請將傳輸時間轉換為時間戳(GMT+8),綠界會利用此參數將當下的時間轉為Unix TimeStamp來驗證此次介接的時間區間。
注意事項:
- 驗證時間區間為 5 分鐘內有效,若超過此驗證時間則此次訂單將無法建立,產生時間戳請參考相關資料。
- 合作特店須進行主機「時間校正」,避免主機產生時差,延伸API無法正常運作。
TransCode Int
回傳代碼
1 代表 API 傳輸資料(MerchantID, RqHeader, Data)接收成功,實際的 API 執行結果狀態請參考 RtnCode。
TransMsg String(200)
回傳訊息
Data String
加密資料
綠界回傳參數範例
{
"MerchantID": "2000132",
"RpHeader": {
"Timestamp": "1525169058"
},
"TransCode": 1,
"TransMsg": "",
"Data": "加密資料"
}
回傳Data參數說明(Json格式)
RtnCode Int
回應代碼
1 代表 API 執行成功,其餘代碼均為失敗,失敗代碼請參考交易訊息代碼表。
RtnMsg String(200)
回應訊息
MerchantID String(10)
特店編號
MerchantTradeNo String(20)
廠商交易編號
LogisticsID String(20)
綠界訂單編號
GoodsAmount Int
商品金額
商品金額範圍為1~20000元
訂單的商品金額如果超出範圍,會更新訂單失敗
LogisticsType String(20)
會員選擇的物流方式
請參考物流方式一覽表
HandlingCharge Int
物流費用
CollectionAmount Int
代收金額
CollectionChargeFee Int
代收金額手續費
TradeDate String(20)
訂單成立時間
LogisticsStatus String(8)
物流狀態
回傳代碼請參考物流狀態代碼一覽表
GoodsName String(50)
商品名稱
ShipmentNo String(20)
配送編號
- 物流類型為 CVS 才會回傳
- 超商B2C配送編號請抓取此欄位
BookingNote String(50)
托運單號
CVSPaymentNo String(15)
寄貨編號
- 物流類型為CVS才會回傳
- 超商C2C配送編號請抓取此欄位,7-ELEVEN需再抓取CVSValidationNo進行組合
CVSValidationNo String(10)
驗證碼
(C2C) 7-ELEVEN才會回傳
注意事項:7-ELEVEN C2C 交貨便代碼即為CVSPaymentNo與CVSValidationNo的組合。
GoodsWeight Number
商品重量
- 當物流子類型[LogisticsSubType]為POST(中華郵政)才會回傳
- 上限20公斤,最多顯示至小數3位
- 單位是公斤
ActualWeight Number
實際重量
- 當物流子類型[LogisticsSubType]為POST(中華郵政)才會回傳
- 上限20公斤,最多顯示至小數3位
- 單位是公斤
ShipChargeDate String(10)
物流運費扣款日期
格式為:yyyy/MM/dd
CollectionAllocateDate String(10)
物流代收款項撥款日期
格式為:yyyy/MM/dd
CollectionAllocateAmount Int
物流代收款項撥款金額
注意事項:
當收到CollectionAllocateAmount為0元時,以下2種情境不代表撥款金額為0元
- 若代收金額[CollectionAmount]不為0且物流代收款項撥款日期[CollectionAllocateDate]無值,表示尚未撥款
- 若代收金額[CollectionAmount]為0元,表示本訂單為不須代收貨款
Data參數範例
{
"RtnCode": 1,
"RtnMsg": "成功",
"MerchantID": "xxx",
"MerchantTradeNo":"xxxxxxxxxxxx",
"LogisticsID": "xxxxxxxxxxxxxx",
"GoodsAmount": 1,
"LogisticsType": "CVS_FAMI",
"HandlingCharge": 262,
"CollectionAmount": 100,
"CollectionChargeFee": 2,
"TradeDate": "2020/04/30 11:00:42",
"LogisticsStatus": "300",
"GoodsName": "XXX",
"ShipmentNo": "xxxxxxxxxxxxxxx",
"BookingNote": "xxxxxxxxxxxxxx",
"CVSPaymentNo": "xxxxxxxxxxxxxx",
"CVSValidationNo":"xxxxxxxxxxxxx",
"GoodsWeight": 10.14,
"ActualWeight": 11.54,
"ShipChargeDate": "2020/04/30",
"CollectionAllocateDate": "2020/05/30",
"CollectionAllocateAmount": 98
}