Skip to main content

BlackCat-Home-Delivery V2.1

黑貓宅配流程說明

將訂單資料組成Json字串Post到建立物流單

成功後,列印黑貓宅急便標籤

於出貨日將商品準備好,黑貓上門取貨

之後進入宅配流程

BlackCat-Home-Delivery流程圖

famifreezingC2Cflow


BlackCat-Home-Delivery API

網址連結


1. 建立物流訂單

說明

  • 建立物流訂單

傳遞方式:Http POST method application/x-www-form-urlencoded

API URL:/api/Orderapi/Add_Order


參數名稱型態長度必須備註
JsonOrder物流單資料stringY資料組成JSON字串以TripleDESEncoding加密後UrlEncode傳送 附錄

JsonOrder Content

參數名稱型態長度必須備註
Description單號描述string50N商品類別(代碼)
0001:一般食品
0002:名特產/甜產印單
0003:酒/油/醋/醬
0004:穀物蔬果
0005:水產/肉品
0006:3C
0007:家電
0008:服飾配件
0009:生活用品
0010:美容彩妝
0011:保健食品
0012:醫療相關用品
0013:寵物用品飼料
0014:印刷品
0015:其他
未填預設 0015
DeliverMode取貨是否付款string2Y01:取貨付款 02:取貨不付款 若是保險單須為02
Logistic_service使用的物流服務string5Y06:黑貓宅急便
36:黑貓宅急便(PayNow)
user_account商家主帳號string10Y
apicode商家api密碼string30Y
OrderNo商家訂單編號string27Y限英文與數字
Receiver_Name收件人姓名string30Y中文最多10個字、英文20個字
Receiver_Phone收件人手機string10YEx:0900000001
Receiver_Email收件人EMAILstring120Y
Receiver_address收件人地址string120Y不可包含特殊字符
Sender_Name寄件人姓名string30Y長度限制為30
Sender_Phone寄件人手機string10Y請填空字串 將會自動帶入0900000000
Sender_Email寄件人EMAILstring120Y如不填入,請填空字串
Sender_address寄件人地址string120Y如不填入,請填空字串(不可包含特殊符號)
Remark備註string200Y如不填入請填空字串
PassCode傳遞碼stringY以下參數值依序組合起來成一段字串(不包含+號) : user_account + OrderNo + TotalAmount + apicode並使用sha-1雜湊函數取得組合字串的雜湊值附錄
TotalAmount總金額string5Y正整數且金額不可大於100000
Deadline預定出貨天數stringintY當日出貨請帶0 最多帶入6天(如帶0且過當日4點 出貨日為明天)周日、連假會順延
ECEC平台stringN
Lengthstring3Y長+寬+高不可超過150公分
Widestring3Y長+寬+高不可超過150公分
Highstring3Y長+寬+高不可超過150公分
Weight重量string5Y商品總重量(kg)不可超過20KG
Sender_Tel寄件人市話string10NEx:0225215088
Receiver_Tel收件人市話string10NEx:0225215088
ExpectDeliverTime希望配達時間string1N1:上午13:00前
2:下午 14~18:00
4:不固定預設為4
ExpectDeliverDate希望配達日期string10N格式為yyyy-MM-dd ex:2021-02-24
最大為成立物流單日期+6天
Ex: 2021/02/20成立訂單,希望配達日期2020-02-27則建單失敗,最大為2020-02-26
希望配達日期詳細顯示請看黑貓宅配流程,未帶入會自動設定為出貨日D+1,周日、連假會順延
DeliveryType保溫層string6Y0001:常溫
0002:冷藏
0003:冷凍
IsInsurance有無保險boolN有保險的單填true,系統預設為false若為服務代號36的單無須帶入該值,總金額超過20000會自動保險
Receiver_Tel收件人市話string7N若IsInsurance為true,則必填正整數金額須為20001~100000之間,DeliverMode須為02
若為服務代號36的單則無須帶入該值且總金額超過20000會自動保險(保險金額為商品金額)

Response

NewOrderReturn Content

參數名稱型態長度必須備註
Status狀態string1YS:成功 F:失敗
LogisticNumberPayNow物流單號string20Y
LogisticService物流服務名稱stringY物流服務名稱Ex:黑貓宅急便
LogisticServiceID物流服務代碼string2Y06: 黑貓宅急便 36:黑猫店到店(PayNow)
ErrorMsg錯誤訊息stringY成功則為null
paymentno物流商貨運編號stringY超商物流配送編號
ReturnMsg回傳訊息stringY
orderno商家訂單編號string27Y
validationno物流商驗證碼stringY

Objec Example

Request Object

{
"DeliverMode": "01",
"Description": "範例",
"Logistic_service": "06",
"OrderNo": "123456789",
"Receiver_address": "台北市北投區承德路六段2號",
"Receiver_Email": "12345678@gmail.com",
"Receiver_Name": "王O明",
"Receiver_Phone": "0912345678",
"Remark": "備註",
"Sender_address": "台北市中山區松江路207號9樓",
"Sender_Email": "12345678@gmail.com",
"Sender_Name": "李O富",
"Sender_Phone": "0912345678",
"Sender_Tel": "0225215088",
"Receiver_Tel":"0225215088",
"apicode": "12345678",
"TotalAmount": "100",
"user_account": "28229955",
"DeliveryType": "0001",
"PassCode": "2FC3805A8BEEC525F2EDF74B75E7FCE83C980856",
"Deadline": "1"
}

Response Object

{
"Status": "S",
"LogisticNumber": "ABCD123456",
"LogisticService": "黑貓宅急便",
"LogisticServiceID": "06",
"paymentno": "12345678",
"ReturnMsg": "",
"orderno": "12345678",
"ErrorMsg": ""
}

2. 列印黑貓宅急便標籤

說明

  • 列印黑貓宅急便標籤

傳遞方式:Http POST method

API URL:/Member/Order/PrintBlackCatLabel


Request

參數名稱型態長度必須備註
LogisticNumbersPaynow物流單號組成的字串stringYPaynow物流單號+底線+物流單子序號 多筆之間用 , 相隔 EX:ABCD0017B21903001221_1, ABCD0017B21903001270_1

Response

回傳列印物流標籤畫面


3. 物流貨態回傳

說明

  • 商家接收物流貨態,更新貨態時由PayNow傳送訂單貨態資料給商家

傳遞方式:Http Post method


Request

參數名稱型態長度必須備註
orderno商家自訂編號string30Y
OriginOrderno商家原始自訂單號string27Y
PayNowLogisticCode物流代碼string4Y
Detail_Status_Description物流狀態描述stringY
paymentno物流商託運單號stringY

4. 查詢物流單(PayNow物流單號)

說明

  • 根據PayNow物流單號查詢物流單資訊

傳遞方式:Http GET method

API URL:/api/Orderapi/Get_Order_Info

Request

參數名稱型態長度必須備註
LogisticNumberPayNow物流單號string20Y
sno物流單序號intY固定為1

Response

參數名稱型態長度必須備註
LogisticNumberPayNow物流單號string20Y
sno物流單序號stringY
orderno商家訂單編號string30Y
Logistic_Serviece物流服務string2Y06:黑貓宅急便
36:黑貓宅急便(PayNow)
Status狀態string1Y0:成立中訂單 1:無效訂單
Delivery_Status物流狀態string2Y流程狀態描述
PayNowLogisticCode物流代碼string4YPayNow物流代碼
Detail_Status_Description物流代碼描述stringYPayNow物流代碼詳細資訊
paymentno物流商託運單號stringY
ErrorMsg錯誤訊息stringYNull則為查詢成功

Objec Example

Request Object

{
"LogisticNumber":"MIJA0027B22112100002",
"sno":"1",
}

Response Object

{
"LogisticNumber":"MIJA002FR22112156425",
"orderno":"211215145423",
"Logistic_Serviece":"24",
"Status":"0",
"Delivery_Status":"等待寄件",
"PayNowLogisticCode":"0000",
"Detail_Status_Description":"等待寄件",
"sno":"1",
"ErrorMsg":null,
"paymentno":"11000094930"
}

5. 查詢物流單(商家訂單編號)

說明

  • 查詢物流單(商家訂單編號)

傳遞方式:Http GET method

API URL:/api/Orderapi/Get_Order_Info_orderno


Request

參數名稱型態長度必須備註
orderno商家訂單編號string30Y
user_account商家主帳號string10Y
sno物流單序號intY固定為1

Response

參數名稱型態長度必須備註
LogisticNumber PayNow物流單號string20Y
sno物流單序號stringY
orderno商家訂單編號string30Y
Logistic_Serviece物流服務string2Y06:黑貓宅急便
36:黑貓宅急便(PayNow)
Status 狀態string1Y0:成立中訂單 1:無效訂單
Delivery_Status 物流狀態string2Y流程狀態描述
PayNowLogisticCode物流代碼string4YPayNow物流代碼
Detail_Status_Description物流代碼描述stringYPayNow物流代碼詳細資訊
paymentno物流商託運單號stringY
ErrorMsg 錯誤訊息stringYNull則為查詢成功

Objec Example

Request Object

{
"orderno":"1630206584255",
"user_account":"28229955",
"sno":"1",
}

Response Object

{
"LogisticNumber":"MIJA002FR22112156425",
"orderno":"211215145423",
"Logistic_Serviece":"24",
"Status":"0",
"Delivery_Status":"等待寄件",
"PayNowLogisticCode":"0000",
"Detail_Status_Description":"等待寄件",
"sno":"1",
"ErrorMsg":null,
"paymentno":"11000094930"
}

6. 重新取號

說明

  • 依商家原有訂單資料進行重新取號(PayNow物流單號、配送編號)
  • 重新取號過的訂單若需在重取請帶入新的LogisticNumber

傳遞方式:Http POST method application/x-www-form-urlencoded

API:/api/Orderapi/ReNewOrder


Request

參數名稱型態長度必須備註
JsonOrder物流單資料stringY以下資料組成Object後轉換JsonString以TripleDESEncoding加密後urlencode傳送附錄

Json Content

參數名稱型態長度必須備註
user_account商家主帳號string10Y
LogisticNumberPaynow物流單號string20Y
sno物流單序號intY
OrderNo商家訂單編號string27Y商家原始訂單編號
TotalAmount訂單總金額stringY
apicode商家api密碼string30Y
PassCode傳遞碼stringY以下參數值依序組合成一段字串(不包含+號)user_account + OrderNo + TotalAmount + apicode並使用sha-1雜湊函數取得組合字串的雜湊值 附錄

Response

參數名稱型態長度必須備註
Status狀態string1YS:成功 F:失敗
LogisticNumberPayNow物流單號string20Y
OrderNo商家原始訂單編號string27Y
sno物流單序號intY
paynoworderno新訂單編號string30Y

重新取號後新的商家訂單編號

若超過規定日期重取會取得新訂單編號,規定日期計算方式為物流單成立日加下述天數

(7-11 5天 / 全家 當天 / 萊爾富 5天)

請以此訂單編號作為批次列印 查詢的訂單編號

paymentno物流商貨運編號stringY重新取號後新的物流商貨運編號
ErrorMsg 錯誤訊息stringY成功則為null

Objec Example

Request Object

{
"LogisticNumber":"ABCD12345678910",
"OrderNo": "12345678",
"apicode": "12345678",
"TotalAmount": "100",
"user_account": "28229955",
"PassCode": "2FC3805A8BEEC525F2EDF74B75E7FCE83C980856",
"sno": "1",
}

Response Object

{
"LogisticNumber":"ABCD0017C11902001484",
"orderno":"test5111040",
"paynoworderno":"test5111040",
"sno":"1",
"paymentno":"E2468594",
"Status":"S",
"ErrorMsg":null
}

7. 查詢黑貓材積

說明

  • 查詢目前商家申請的材積

傳遞方式:Http POST method application/x-www-form-urlencoded

API:/api/BlackCat/GetBlackCatVolume


Request

參數名稱型態長度必須備註
user_account商家主帳號string10Y
sonid商家分店代號string3Y
Logistic_Serviece物流服務string2Y06:黑貓宅急便
36:黑貓宅急便(PayNow)

Response

參數名稱型態長度必須備註
純字串string成功時回傳商家有使用的尺寸字串以,相隔 EX: S60,S90,S120失敗時回傳 錯誤訊息

8. 查詢黑貓材積(api密碼)

說明

  • 查詢目前商家申請的材積

傳遞方式:Http POST method application/x-www-form-urlencoded

API:/api/BlackCat/QueryBlackCatVolume


Request

參數名稱型態長度必須備註
user_account商家主帳號string10Y
apicode商家api密碼string30Y請以TripleDESEncoding加密後傳送附錄
Logistic_Serviece物流服務string2Y06:黑貓宅急便
36:黑貓宅急便(PayNow)

Response

參數名稱型態長度必須備註
純字串string成功時回傳商家有使用的尺寸字串以,相隔 EX: S60,S90,S120失敗時回傳 錯誤訊息

9. 查詢黑貓設定

說明

  • 查詢目前商家在PayNow的黑貓相關設定

傳遞方式:Http GET method application/x-www-form-urlencoded

API:/api/BlackCat/All_BlackCat_Setting


Request

參數名稱型態長度必須備註
user_account商家主帳號string10Y
sonid商家分店代號string3Y

Response

參數名稱型態長度必須備註
eshopID設定契客代號string黑貓商家代號
IsOpenPayNow服務開通狀況stringtrue:開通中 false:未開通
Logistic_Serviece物流服務string06:黑貓宅配 36:黑貓宅配(PayNow) 46:黑貓到店(PayNow)

10. 驗證是否有效地址

說明

  • 驗證是否有效地址

傳遞方式:Http GET method application/x-www-form-urlencoded

API:/api/BlackCat/IsValidAddress


Request

參數名稱型態長度必須備註
Address地址stringY

Response

參數名稱型態長度必須備註
回傳字串string回傳S或F或Error:錯誤訊息

11. 驗證地址是不是特殊或偏遠地區

說明

  • 驗證地址是不是特殊或偏遠地區(運費需加+60)

傳遞方式:Http GET method application/x-www-form-urlencoded

API::/api/BlackCat/IsSpecialAddress


Request

參數名稱型態長度必須備註
Address地址stringY

Response

參數名稱型態長度必須備註
result請求結果booltrue:請求成功 false:請求失敗
ErrorMsg請求失敗錯誤訊息string錯誤訊息
check_result地址檢查結果stringtrue:該地址為特殊地址/偏遠地區 false:該地址非特殊地址/偏遠地區

12. 設定黑貓資料

說明

  • 在 PAYNOW 設定黑貓資料

傳遞方式:Http GET method application/x-www-form-urlencoded

API::/api/BlackCat/Setting_BlackCat


Request

參數名稱型態長度必須備註
SettingJsonJson字串stringY以下資料組成Object後轉換JsonString以TripleDESEncoding加密後urlencode傳送附錄

Json Content

參數名稱型態長度必須備註
user_account商家主帳號string10Y
apicode商家api密碼string30Y
eshopID設定契客代號string30Y黑貓商家代號
ftpusername黑貓FTP帳號string30N
ftppassword黑貓FTP密碼string30N
IsInsurance是否有簽保險stringY有簽請帶1, 沒簽帶0如eshopID為2822995505請帶1
Logistic_service使用的物流服務stringN如為eshopID為2822995505此欄需填36
size簽約包裹尺寸string30YS60,S90,S120,S150將有簽約的以,相隔 組成字串
Ex: 有簽約 S60 S90 S120即帶:S60,S90,S120
如為 eshopID 為 2822995505 此欄預設為S60,S90,S120,150
PassCode傳遞碼stringY以下參數值依序組合成一段字串(不包含+號)user_account + apicode + 黑貓契客代號 並使用sha-1雜湊函數取得組合字串的雜湊值 附錄

Response

參數名稱型態長度必須備註
回傳字串string成功回傳:S 失敗回傳:F,錯誤訊息

13. 更改黑貓資料

說明

  • 變更在PAYNOW的黑貓資料

傳遞方式:Http PUT method application/x-www-form-urlencoded

API::/api/BlackCat/Up_BlackCat_Setting


Request

參數名稱型態長度必須備註
SettingJsonJson字串stringY以下資料組成Object後轉換JsonString以TripleDESEncoding加密後urlencode傳送附錄

Json Content

參數名稱型態長度必須備註
user_account商家主帳號string10Y
apicode商家api密碼string30Y
eshopID設定契客代號string30黑貓商家代號
ftpusername黑貓FTP帳號string30N
ftppassword黑貓FTP密碼string30N
IsInsurance是否有簽保險stringY有簽請帶1, 沒簽帶0如eshopID為2822995505請帶1
Logistic_service使用的物流服務stringN如為eshopID為2822995505此欄需填36
size簽約包裹尺寸string30YS60,S90,S120,S150將有簽約的以,相隔 組成字串
Ex: 有簽約 S60 S90 S120即帶:S60,S90,S120
如為 eshopID 為 2822995505 此欄預設為S60,S90,S120,150
PassCode傳遞碼stringY以下參數值依序組合成一段字串(不包含+號)user_account + apicode + 黑貓契客代號 並使用sha-1雜湊函數取得組合字串的雜湊值 附錄

Response

參數名稱型態長度必須備註
回傳字串string成功回傳:S 失敗回傳:F,錯誤訊息