查詢支持的服務
- 應用場景:獲取有效的運輸方式列表(中文名,英文名,代碼,時效,圖標)
- 函數名稱:getChannel(secretkey)
- 提交參數:secretkey(API密鑰)
- 授權:需要
- 返回:JSON
輸入參數
字段 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
Secretkey | String | 必須 | | 密鑰 | d0fc2606-611f-443a-aea2-aa209673a32c80000 |
返回結果
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
Base_ChannelInfoID | String | 必須 | | 渠道代碼 | 46 |
ChannelCode | String | 必須 | | 運輸編碼 | CNDHL |
CnName | String | 必須 | | 運輸中文名稱 | 大陸DHL普貨價 |
EnName | String | 必須 | | 運輸英文名稱 | CNDHL |
RefTime | String | 必須 | | 時效 | 2 - 4 |
ShortenImage | String | 可選 | | 運輸圖標 | 635195880046832907_dhl.gif |
錯誤碼
名稱 | 類型 | 是否必須 | 示例值 | 描述 |
complete | Boolean | 否 | true | 表示提交是否成功 |
結果實例 顯示
API示例工具
示例
.NET 示例
- 第一步:在你建好的asp.net項目中,添加web引用,輸入提供的API服務地址:
"//{網址}/webservice/APIWebService.asmx"
- 第二步:初始化,再調用方法,即可獲取到數據
.webservice p=new .webservice();
string result = p.getChannel (secretkey);
返回示例
[{"base_Channelinfoid":"46","ChannelCode":"CNDHL","CnName":"\u5927\u9646DHL\u666E\u8D27\u4EF7","enname":"CNDHL","reftime":"2 - 4","shortenimage":"635195880046832907_dhl.gif"}
運費查詢
- 應用場景:通過國家和重量及體積獲取各運輸方式價格(運輸方式中文名CHCnName、英文名CHEnName、服務代碼ChannelCode、時效RefTime、圖標、總費用MinSaleAmountTotal)
- 函數名稱:getFeeByCWV(string country,stringweight,stringvolume,stringcustomerid, string secretkey)
- 如果可以識別賬户得的是折扣後總費用
- 提交參數:country(國家編碼), weight(重量), volume(體積), customerid(客户ID),scretkey(密鑰)
- 授權:需要
- 返回:JSON
輸入參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
country | String | 必須 | | 國家編碼 | Austria-澳大利亞 |
Weight | String | 必須 | | 重量 | 0.25 (kg) |
Volume | String | 必須 | | 體積 | 0.25 立方厘米 |
Customer ID | String | 必須 | | 客户ID | 80000 |
Identifier | String | 必須 | | 密鑰 | d0fc2606-611f-443a-aea2-aa209673a32c80000 |
返回結果
名稱 | 類型 | 返回值 | 描述 |
CHCnName | string | 香港郵政航空大包 | 服務中文名 |
CHEnName | string | HKBPOST | 服務英文名 |
ChannelCode | string | HKBPOST | 渠道代碼 |
RefTime | string | 7 - 14 | 參考時效 |
MinSaleAmountTotal | string | 109.740 | 總金額(RMB) |
錯誤碼
API示例工具
示例
.NET 示例
- 第一步:在你建好的asp.net項目中,添加web引用,輸入提供的API服務地址:
"//{網址}/webservice/APIWebService.asmx"
- 第二步:初始化,再調用方法,即可獲取到數據
.webservice p=new .webservice();
string result = p.getFeeByCWV(country,weight, volume,stringcustomerid, secretkey);
返回示例
[{"CHCnName":"\u9999\u6E2F\u90AE\u653F\u822A\u7A7A\u5927\u5305","CHEnName":"HKBPOST","ChannelCode":"HKBPOST","RefTime":"7 - 14","MinSaleAmountTotal":"200.620"}
運費查詢(v2)
- 應用場景:通過國家和重量及體積獲取各運輸方式價格(運輸方式中文名CHCnName、英文名CHEnName、服務代碼ChannelCode、時效RefTime、圖標、總費用MinSaleAmountTotal)
- 請求的地址: //m.pfcexpress.com:84/api/PriceQuery/Get/US/1/1000
- 授權:需要
- 輸入參數:如下
參數説明
名稱 | 類型 | 是否必須 | 説明 | 示例 |
ISO Code | String | 必須 | 國家二字碼 | US |
Weight | decimal | 必須 | 重量 單位Kg | 0.5 |
Volume | decimal | 必須 | 體積 | 1000 |
.NET 提交實例
string serverurl = "//m.pfcexpress.com:84/"; string acition = "api/PriceQuery/Get/US/0.5/1000"; string apikey = "75273d06-3371-4cfb-9fa3-4621644d53b180000"; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serverurl + acition); request.ContentType = "application/json"; request.Accept = "application/json"; request.Headers.Add("Authorization", "Bearer " + apikey); request.Method = "Get"; try { using (WebResponse response = request.GetResponse()) { using (StreamReader reader = new StreamReader(response.GetResponseStream())) { string text = reader.ReadToEnd(); } } } catch (WebException ex) { throw ex; }
JAVA 提交實例
try { String serverurl="//m.pfcexpress.com:84/"; String action="api/PriceQuery/Get/US/0.5/1000"; String apikey="75273d06-3371-4cfb-9fa3-4621644d53b180000"; URL url = new URL(serverurl+action); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setDoOutput(true); conn.setDoInput(true); conn.setUseCaches(false); conn.setRequestMethod("Get"); conn.setRequestProperty("Connection", "Keep-Alive"); conn.setRequestProperty("Charset", "UTF-8"); conn.setRequestProperty("Content-Type", "application/json"); conn.setRequestProperty("Authorization", "Bearer " + apikey); conn.connect(); OutputStream out = conn.getOutputStream(); out.write((shipment.toString()).getBytes()); out.flush(); out.close(); System.out.println(conn.getResponseCode()); if (conn.getResponseCode() == 200) { System.out.println("ok"); InputStream in = conn.getInputStream(); String result = null; try { byte[] rsdata = new byte[in.available()]; in.read(rsdata); result = new String(rsdata); System.out.println(result); } catch (Exception e1) { e1.printStackTrace(); } } else { System.out.println("no++"); } } catch (Exception e) { }
PHP 提交實例
$serverurl = "//m.pfcexpress.com:84/"; $acition = "api/PriceQuery/Get/US/0.5/1000"; $apikey = "75273d06-3371-4cfb-9fa3-4621644d53b180000"; $headers=array('Authorization: '.'Bearer '.$apikey,'Content-type: application/json'); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $serverurl.$acition); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 60); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $json = curl_exec($ch); curl_close($ch); $result=json_decode($json, true); print_r($result);
返回結果
序號 | 參數名 | 參數類型 | 描述 |
1 | status | Int | 200代表成功 500代表未知錯誤 501代表 祕鑰錯誤 |
2 | msg | string | 信息提示 |
3 | data | string | 返回的數據 |
返回示例
成功
成功: { "status": 200, "msg": "", "data": [ { "CHCnName": "比利時全球小包", "CHEnName": "Bpost Global Mail", "ChannelCode": "GBPOST", "RefTime": "7 - 15", "MinSaleAmountTotal": "105.000", "CalWeight": "1.000", "BaseFee": "91.600", "FuelFee": "0.000", "TrackFlag": "1", "VolWeightFlag": "0", "ImageUrl": "//071427.irootech.xyz/Manage/UpFile/ChannelLabelPicture/635774794688066451_QQ圖片20140628093941.jpg", "Remark": "", "StyleName": "國際小包" } ] }
失敗
失敗: { "status": 501, "msg": "API key is not correct", "data": null }
訂單信息查詢
- 應用場景:通過訂單號或跟蹤號獲取(訂單狀態、總費用、訂單號、跟蹤號、轉單號)
- 函數名稱:getPackage(string orderNo,stringcustomerid, string secretkey)
- 提交參數:strwhere(訂單號或跟蹤號), customerid(客户ID),scretkey(密鑰)
- 授權:需要
- 返回:JSON
輸入參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
OrderNo | String | 必須 | | 訂單號 | R800001407290002 |
CustomerId | String | 必須 | | 客户編號 | 80000 |
SecretKey | String | 必須 | | 密鑰 | d0fc2606-611f-443a-aea2-aa209673a32c80000 |
Remark | String | 可選 | | 備註 | Null |
返回結果
名稱 | 類型 | 返回值 | 描述 |
OrderNo | String | R800001407290002 | 訂單號 |
TrackingNo | String | | 跟蹤號 |
field1 | String | 234234 | 轉單號 |
OrderStatus | String | 6 | 訂單狀態1 |
OrderStatus2 | String | 已發貨 | 訂單狀態2 |
TotalAmount | String | 6027.250 | 總費用 |
EnName | String | Albania | 收件人國家英文名 |
ChannelCode | String | GBPOST | 渠道代碼 |
錯誤碼
API示例工具
示例
.NET 示例
- 第一步:在你建好的asp.net項目中,添加web引用,輸入提供的API服務地址:
"//{網址}/webservice/APIWebService.asmx"
- 第二步:初始化,再調用方法,即可獲取到數據
.webservice p=new .webservice();
string result = p.getPackage(orderNO, string customerid, secretkey);
返回示例
[{"OrderNo":"R800001411160002","TrackingNo":"DDU1371690781102767","field1":"","OrderStatus2":"\u5DF2\u53D1\u8D27","TotalAmount":"26.500","ChannelCode":"GBPOST","EnName":"Argentina","OrderStatus":"6"}]
創建訂單(v1)
- 應用場景:用户可以通過API建立訂單信息到系統中
- 請求的地址:
"//{網址}/webservice/APIWebService.asmx"
- 授權:需要
- 輸入參數:如下
輸入參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
Strorderinfo | String | 必須 | | 主信息 | |
Style | String | 必須 | | 訂單類型(倉儲訂單或普通訂購單)倉儲訂單為1,普通訂單為2 | 2 |
GFF_CustomerID | String | 必須 | | 客户ID | 80000 |
GFF_ReceiveSendAddressID | String | 選填 | | 發件人ID | 189 |
ConsigneeName | String | 必須 | | 收件人 | 小明 |
Country | String | 必須 | | 國家 | US;美國;223 (二次代碼;中文名稱;國家ID都支持填一即可) |
Base_ChannelInfoID | String | 必須 | | 渠道 | EUB;89(渠道代碼;渠道ID 填一即可) |
State | String | 必須 | | 州 | San Fernando |
City | String | 必須 | | 城市 | Bernardo Ohiggins |
OrderStatus | String | 必須 | | 訂單狀態--(草稿=1),(確認=3) | 1 |
Address1 | String | 必須 | | 收件人地址行 1 | United States,,,MN.USA |
Address2 | String | 可選 | | 收件人地址行 2 | United States,,,MN.USA |
CsRefNo | String | 可選 | | 客户參考號 | 1122 |
Zipcode | String | 可選 | | 郵編 | 2134342 |
Contact | String | 可選 | | 聯繫方式 | 180344345665 |
CusRemark | String | 可選 | | 客户訂單備註 | Null |
TrackingNo | String | 可選 | | 跟蹤號 | RT209114500HK |
VatNo | String | 可選 | | VAT税號 | |
EORI | String | 可選 | | EORI號 | |
HSCode | String | 可選 | | 海關編碼 | |
Strorderproduct | String | 必須 | | 明細數據 | |
MaterialRefNo | String | 必須 | | 物品1 產品編號 | SKU1 |
MaterialQuantity | String | 必須 | | 物品1 數量 | 10 |
Price | String | 必須 | | 物品1 單位價值(美元) | 10.2 |
Weight | String | 必須 | | 物品1 重量(KG) | 10 |
EnName | String | 必須 | | 物品1 產品英文名 | MP31232 |
Warehouse ID | String | 必須 | | 物品1 倉儲ID | 302,可使用倉儲信息查詢api獲取 |
ProducingArea | String | 可選 | | 物品1 原產地 | |
CnName | String | 必須 | | 物品1 產品中文名 | 中文名 |
...... | ...... | ...... | ...... | ...... | ...... |
提交實例
主信息:string strorderinfo = "Style:2;GFF_CustomerID:80000;GFF_ReceiveSendAddressID:;ConsigneeName:Ameerahmed;Country:84;Base_ChannelInfoID:CNGZGH;State:Paris-;City:Paris;OrderStatus:1;Address1:144 rue de rennes, 5eme etage – CODE 6335A – NOM –COTTIN AMEER;Address2:;CsRefNo:D4N3YZMJ69LI;Zipcode:75006;Contact:+33643052323;CusRemark:;TrackingNo:;VatNo:;"; |
明細信息:string strorderproduct = "MaterialRefNo:VB40021,MaterialQuantity:1,Price:27.5,Weight:0.2,EnName:Handheld Massager,WarehouseID:302,ProducingArea:112,CnName:,;MaterialRefNo:VB40021,MaterialQuantity:1,Price:27.5,Weight:0.2,EnName:Handheld Massager,WarehouseID:302,ProducingArea:112,CnName:,;"; |
string stradd = "";(不要傳NULL 傳空) |
密鑰:string key = "ca0c0b19-4d8c-46b2-b91b-10fb3b44da9f80000"; |
.NET 提交實例
第一步:在你建好的 asp.net 項目中,添加 web 引用,輸入皇家物流提供的 API 服務地址。為: //071427.irootech.xyz/we bservice/APIWebService.asmx pfc.pfcwebservice p = newpfc.pfcwebservice(); stringresult = p. InsertUpdateOrder(strorderinfo, strorderproduct, stradd, secretkey);
JAVA 提交實例
String endpoint=" //pfcexpress.com/webservice/APIWebService.asmx"; try{ //創建一個服務(service)調用(call) Service service=new Service(); Call call= (Call) service.createCall();//通過service創建call對象 //設置service所在URL call.setTargetEndpointAddress(new java.net.URL(endpoint)); //這個就是傳參數的變量,也就是NET方面的參數,一定不要帶錯了 call.addParameter(new QName(" //tempuri.org/","strorderinfo"), org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.addParameter(new QName(" //tempuri.org/","strorderproduct"),org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.addParameter(new QName(" //tempuri.org/","stradd"), org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.addParameter(new QName(" //tempuri.org/","secretkey"), org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.setOperationName(new QName(" //tempuri.org/","InsertUpdateOrder"));//方法名 call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING); call.setUseSOAPAction(true); call.setSOAPActionURI(" //tempuri.org/InsertUpdateOrder"); String strorderinfo="Style:1;GFF_CustomerID:80000;GFF_ReceiveSendAddressID:;ConsigneeName:Ameerahmed;Country:84;Base_ChannelInfoID:46;State:Paris-;City:Paris;OrderStatus:1;Address1:144 rue de rennes, 5eme etage – CODE 6335A – NOM –COTTIN AMEER;Address2:;CsRefNo:D4N3YZMJ69LI;Zipcode:75006;Contact:+33643052323;CusRemark:;TrackingNo:;"; String strorderproduct="MaterialRefNo:VB40021,MaterialQuantity:1,Price:27.5,Weight:0.2,EnName:Handheld Massager,WarehouseID:302,ProducingArea:112,CnName:,;"; String a = (String) call.invoke(new Object[] { strorderinfo,strorderproduct,"","d0fc2606-611f-443a-aea2-aa209673a32c80000"}); System.out.println("--------"+a); } catch (ServiceException e) { e.printStackTrace(); } catch (MalformedURLException e) { e.printStackTrace(); }
返回結果
名稱 | 類型 | 是否必須 | 示例值 | 描述 |
complete | Boolean | 否 | True | 表示提交是否成功 輸出參數提交後返回系統生成的訂單號加返回的提示信息,訂單號和提示信息用'-'隔開,如果錯誤返回錯誤編碼信息 返回成功的示列直接返回字符串:訂單保存並提交成功!-DL140887(追蹤號);R800001409100028(訂單號)注:有追蹤號返回追蹤號,沒有追蹤號不返回,訂單號必返回 返回錯誤信息實例:保存失敗,請檢查數據錄入項是否有誤!收件人國家錯誤!系統匹配不到相應的收件人國家 訂單新建成功,預報成功結果實例:訂單保存並提交成功!-DL140887(追蹤號);R800001409100028(訂單號)預報結果:預報:1條記錄!,成功預報1條記錄 訂單新建成功,預報失敗結果實例:訂單保存並提交成功!-DL140887(追蹤號);R800001409100028(訂單號)預報結果:預報失敗的訂單號:R800001409090003錯誤信息:訂單驗證錯誤,錯誤信息為【hotbuyapp】 |
返回示例
描述 | 示例 |
訂單保存並提交成功 | DL140887;R800001411160002 |
錯誤碼
錯誤碼 | 錯誤描述 | 解決方案 |
| 保存失敗,請檢查數據錄入項是否有誤!! | 根據提示請輸入正確的數據 |
API示例工具
示例
.NET 示例
- 第一步:在你建好的asp.net項目中,添加web引用,輸入提供的API服務地址:
"//{網址}/webservice/APIWebService.asmx"
- 第二步:初始化,再調用方法,即可獲取到數據
.webservice p = new.webservice();
string result = p. InsertUpdateOrder(strorderinfo, strorderproduct, stradd, secretkey);
返回示例
訂單保存並提交成功!-R800001501190004
創建訂單(v2)
- 應用場景:用户可以通過API建立訂單信息到系統中
- 請求的地址:
"//071427.irootech.xyz/webservice/v2/CreateShipment.aspx"
- 授權:需要
- 輸入參數:如下
參數説明
名稱 | 類型 | 是否必須 | 説明 | 示例 |
Type | Int | 必須 | 1為倉儲訂單 2為普通訂單 | 2 |
INorOut | Int | 必須 | 0 出口 1 進口 | 0 |
WarehouseId | String | 選填 | 倉儲訂單為必填 | 302 |
CsRefNo | String | 選填 | 客户參考號(可填平台訂單號/單號) | 201710100001 |
CustomerId | String | 必填 | 客户ID | 80000 |
ChannelId | String | 必須 | 渠道ID | 91 |
Sender | String | 選填 | 發件人 | PFCexpress |
SendAddress | String | 選填 | 發件人地址 | San Fernando |
SendPhone | String | 選填 | 發件人電話 | 400-66566-88888 |
SendEmail | String | 選填 | 發件人郵箱 | sales@pfcexpress.com |
SendCompany | String | 選填 | 發件人公司 | pfc.inc |
ShipToName | String | 必填 | 收件人 | zhangshan |
ShipToCountry | String | 必填 | 收件人國家二字碼 | US |
ShipToState | String | 必填 | 收件人州 | UT |
ShipToCity | String | 必填 | 收件人城市 | Cedar City |
ShipToAdress1 | String | 必填 | 收件人地址1 | 1225 W Harding Ave Apt 32 |
ShipToAdress2 | String | 選填 | 收件人地址2 | |
ShipToZipCode | String | 必須 | 收件人郵編 | 84720 |
ShipToCompanyName | String | 選填 | 收件人公司 | Company.inc |
ShipToEmail | String | 選填 | 收件人郵編 | Email@me.com |
OrderStatus | Int | 必須 | 訂單狀態 1草稿 3確認 | 1 |
TrackingNo | String | 選填 | 追蹤號 | |
BatteryFlag | String | 選填 | 是否帶電池 0 不帶 1 帶點 默認0 | 0 |
CODFee | decimal | 選填 | 代收貨款金額 | 500.00 |
IDCardNo | String | 選填 | 身份證號碼 進口訂單 必填 | |
VatNo | String | 選填 | 税號 | |
EORI | String | 選填 | EORI | |
HSCode | String | 選填 | 海關編碼 | |
Products | Array | 必須 | 訂單明細 | |
SKU | String | 必填 | SKU | SKU0001 |
EnName | String | 必填 | 英文品名 | Reflective clothes |
CnName | String | 選填 | 中文品名 | 反光衣 |
MaterialQuantity | Int | 必填 | 數量(/個) | 1 |
Price | decimal | 必填 | 申報價值(USD/個) | 10.00 |
Weight | decimal | 必填 | 重量(KG/個) | 0.5 |
Length | decimal | 選填 | 長(/CM) | 0.5 |
Width | decimal | 選填 | 寬(/CM) | 0.5 |
High | decimal | 選填 | 高(/CM) | 0.5 |
ProducingArea | String | 選填 | 產地 | CN |
HSCode | String | 選填 | 海關編碼 | HS8888888 |
提交實例
.NET 提交實例
string serverurl = "//071427.irootech.xyz/"; string acition = "webservice/v2/CreateShipment.aspx"; string apikey = "75273d06-3371-4cfb-9fa3-4621644d53b180000"; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serverurl + acition); request.ContentType = "application/json"; request.Accept = "application/json"; request.Headers.Add("Authorization", "Bearer " + apikey); request.Method = "Post"; byte[] data = Encoding.UTF8.GetBytes(Body); request.ContentLength = data.Length; using (Stream requestStream = request.GetRequestStream()) { requestStream.Write(data, 0, data.Length); } try { using (WebResponse response = request.GetResponse()) { using (StreamReader reader = new StreamReader(response.GetResponseStream())) { string text = reader.ReadToEnd(); } } } catch (WebException ex) { throw ex; }
JAVA 提交實例
try { String serverurl="//071427.irootech.xyz/"; String action="webservice/v2/CreateShipment.aspx"; String apikey="75273d06-3371-4cfb-9fa3-4621644d53b180000"; URL url = new URL(serverurl+action); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setDoOutput(true); conn.setDoInput(true); conn.setUseCaches(false); conn.setRequestMethod("POST"); conn.setRequestProperty("Connection", "Keep-Alive"); conn.setRequestProperty("Charset", "UTF-8"); byte[] data = Body.getBytes(); conn.setRequestProperty("Content-Length", String.valueOf(data.length)); conn.setRequestProperty("Content-Type", "application/json"); conn.setRequestProperty("Authorization", "Bearer " + apikey); conn.connect(); OutputStream out = conn.getOutputStream(); out.write((shipment.toString()).getBytes()); out.flush(); out.close(); System.out.println(conn.getResponseCode()); if (conn.getResponseCode() == 200) { System.out.println("ok"); InputStream in = conn.getInputStream(); String result = null; try { byte[] rsdata = new byte[in.available()]; in.read(rsdata); result = new String(rsdata); System.out.println(result); } catch (Exception e1) { e1.printStackTrace(); } } else { System.out.println("no++"); } } catch (Exception e) { }
PHP 提交實例
$serverurl = "//071427.irootech.xyz/"; $acition = "webservice/v2/CreateShipment.aspx"; $apikey = "75273d06-3371-4cfb-9fa3-4621644d53b180000"; $params=array( 'Type'=>2, 'CustomerId'=>'80000', 'ChannelId'=>'DPD', 'Sender'=>'Ken', 'SendPhone'=>'73948563', 'SendAddress'=>'20 Orley Ave', 'SendCompany'=>'CS', 'SendEmail'=>'fjyer@huangjia.com', 'ShipToName'=>'Eric', 'ShipToPhoneNumber'=>'2025551212', 'ShipToCountry'=>'US', 'ShipToState'=>'DC', 'ShipToCity'=>'Washington', 'ShipToAdress1'=>'475 L Enfant Plaza SW', 'ShipToAdress2'=>'', 'ShipToZipCode'=>'20260', 'ShipToCompanyName'=>'Express', 'OrderStatus'=>1, 'TrackingNo'=>'', 'Remark'=>'', 'BatteryFlag'=>0, 'INorOut'=>0, 'CODFee'=>0, 'IDCardNo'=>'', 'VatNo'=>'', 'EORI'=>'', 'HSCode'=>'', 'CsRefNo'=>'JH008', 'WarehouseId'=>'', 'Products'=>array( array( 'CnName'=>'手機', 'EnName'=>'Mobile', 'Weight'=>0.1, 'Price'=>5800, 'ProducingArea'=>'America', 'HSCode'=>'65421', 'SKU'=>'SK001', 'Length'=>0.1, 'Width'=>0.2, 'High'=>0.3, 'MaterialQuantity'=>1 ), array( 'CnName'=>'鞋子', 'EnName'=>'shoes', 'Weight'=>0.2, 'Price'=>120, 'ProducingArea'=>'France', 'HSCode'=>'65421', 'SKU'=>'SK002', 'Length'=>0.1, 'Width'=>0.2, 'High'=>0.3, 'MaterialQuantity'=>1 ) ) ); $jsonparams=json_encode($params); $headers=array('Authorization: '.'Bearer '.$apikey,'Content-type: application/json'); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $serverurl.$acition); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonparams); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 60); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $json = curl_exec($ch); curl_close($ch); $result=json_decode($json, true); print_r($result);
返回結果
序號 | 參數名 | 參數類型 | 描述 |
1 | status | Int | 200代表成功 500代表未知錯誤 501代表 祕鑰錯誤 502代表參數錯誤 503代表未找到國家代碼 504代表未找到渠道代碼 505代表未找到發件人 506代表參考號已存在 507代表跟蹤號已存在 508代表預報失敗 509代表庫存不足 510代表未找到倉儲 511代表產品不存在 512訂單狀態不正確 513代表訂單類型不正確 |
2 | msg | string | 信息提示 |
3 | data | string | 返回的數據 |
返回示例
成功
成功: { "status": 200, "msg": "Success", "data": { "TrackingNo": null, "OrderNo": "R800001709270001", "CsRefNo": "JH0010", "LablesUrl": null } } /div>
失敗
失敗: { "status": 506, "msg": "CsRefNo repeat", "data": null }
查詢產品庫存
- 應用場景:用户可以通過API查詢SKU/條形碼的存儲信息。
- 需要授權,請到用户中心申請key.
- 請求的地址:
"//{網址}/webservice/APIWebService.asmx/getStock"
- 輸入參數:如下
- 授權:需要
- 返回:Json
輸入參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
skuorcode | String | 必須 | | SKU/條形碼 | A00001 |
customerid | String | 必須 | | 用户 id | 80000 |
Secretkey | String | 必須 | | 密鑰 --identifier | d0fc2606-611f-443a-aea2-aa209673a32c80000 |
WarehouseName | String | 必須 | | 倉儲(SZWH-深圳西麗倉(302),GZWH廣州倉儲(381)HKWH-香港倉儲(382)) | 302 |
返回結果
名稱 | 返回值 | 描述 |
OutinQuantity | 8662 | 庫存數量 |
Stock | 6 | 佔用數量 |
CnName | MP31243 112\uFF0C | 產品中文名 |
EnName | MP31 | 產品英文名 |
OutinQuantity | 1 | 庫存數量 |
Stock | 1 | 佔用數量 |
CnName | MP31243 112\uFF0C | 產品中文名 |
EnName | MP31 | 產品英文名 |
錯誤碼
API示例工具
示例
.NET 示例
- 第一步:在你建好的asp.net項目中,添加web引用,輸入提供的API服務地址
:"//{網址}/webservice/APIWebService.asmx"
- 第二步:初始化,再調用方法,即可獲取到數據
string result = p. getStock (skuorcode, customerid, secretkey, WarehouseName);
例如:p.getStock(S4-ACHEB, 80003,2acd2496-78f8-4eac-ba9c-fd152c2fb41e80003,302)
返回示例
[{"OutinQuantity":"8662","Stock":"6","CnName":"MP31243 112\uFF0C","EnName":"MP31"},{"OutinQuantity":"1","Stock":"1","CnName":"MP31243 112\uFF0C","EnName":"MP31"}]
包裹追蹤信息
- 應用場景:用户可以通過API查詢訂單追蹤信息.
- 請求的地址:
"//{網址}/webservice/APIWebService.asmx/getOrder_Track"
- 輸入參數:OrderNo(訂單號,追蹤號)
- 輸出參數:返回json字符串
輸入參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
Order number/Tracking number | String | 必須 | | 訂單號/快遞單號 | R800001411160002 |
返回結果
名稱 | 返回值 |
派送內容 | SHENZHEN - CHINA:交運發往目的地(Departed Facility in ) |
時間 | 2014-11-16 16:19:55 |
錯誤碼
API示例工具
示例
.NET 示例
- 第一步:在你建好的asp.net項目中,添加web引用,輸入提供的API服務地址。假設為:
"//{網址}/webservice/APIWebService.asmx"
- 第二步:初始化,再調用方法,即可獲取到數據。
.webservice p = new.webservice();
string result = p. getOrder_Track("R807521408070065")
返回示例
描述( Describe) 最後投遞時間(the last delivery time) SHENZHEN - CHINA:交運發往目的地(Departed Facility in ) 2014-11-16 16:32:09 SHENZHEN - CHINA:收取包裹(Shipment picked up) 2014-11-16 16:19:55
打印標籤
- 應用場景:用户可以直接訪問地址填寫相應的信息可打印標籤
- 請求的地址:
"//{網址}/Manage/PrintPage/Print_PDF.aspx?OrderNo=RP05851311190001,&type=A4"(A4標籤)
"//{網址}/Manage/PrintPage/Print_PDF.aspx?OrderNo=RP05851311190001,&type= (熱敏標籤)"
- 參數介紹:OrderNo可以填單號,追蹤號。RP05851311190001,RP05851311190001逗號隔開type:打印格式=A4就打印A4的
- Type空的話,就是打印熱敏的。
輸入參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
type | | | | 打印紙張格式:A4打印A4尺寸; 留空打印熱敏的格式。 | A4 |
Order number | | 必須 | | 訂單號/快遞單號 | R800001411160002 |
測試工具 打印標籤
- 應用場景:用户可以直接訪問地址填寫相應的信息可打印標籤
- 請求的地址:
//{網址}/webservice/APIWebService.asmx
- 請求方法GetLablesUrl
- 返回JSON
請求參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
OrderNo | | 必須 | | 訂單號/跟蹤號 | 9400110200882632305530 |
返回結果
參數 | 返回值 |
success | 是否成功 true/false |
error | 錯誤信息 success為false 側有值 |
LablesUrl | 標籤URL |
獲取倉儲信息
- 應用場景:用户可以通過API獲取倉儲信息
- 請求的地址:
"//{網址}/webservice/APIWebService.asmx"
輸入參數
名稱 | 類型 | 是否必須 | 默認值 | 説明 | 示例 |
Secretkey | String | 必須 | | 密鑰 | d0fc2606-611f-443a-aea2-aa209673a32c80000 |
返回結果
名稱 | 返回值 |
SZWH-深圳西麗倉 | 倉儲名稱 |
302 | 倉儲ID |
結果實例 顯示
測試工具 示例
.NET 示例
- 第一步:在你建好的asp.net項目中,添加web引用,輸入提供的API服務地址。假設為:
"//{網址}/webservice/APIWebService.asmx"
- 第二步:初始化,再調用方法,即可獲取到數據。
.webservice p = new.webservice();
string result = p. GetWarehouse();//返回字符串
返回示例
302:SZWH-深圳西麗倉;381:GZWH廣州倉儲;382:HKWH-香港倉儲;457:深圳VIP倉儲
創建訂單錯誤返回
返回值 | 説明 | 解決方案 |
"" | 沒有權限插入日誌 | 聯繫管理員 |
你的密鑰不正確 | 系統匹配不到正確的密鑰 | 請檢查密鑰和用户ID是否正確,調用的接口地址是否匹配 |
Strorderinfo(訂單主數據)或Strorderproduct(訂單明細)為空! | 訂單數據不正確 | 請查看“創建訂單”中的提交實例 |
發件人無效,請檢查是否在系統新建發件人? | 用户沒有發件人 | 請進入用户的客户端新建一個發件人 |
收件人國家錯誤!系統匹配不到相應的收件人國家! | 系統匹配不到發件人國家 | 請查看“創建訂單”中的輸入參數 |
運輸方式(渠道)數據錯誤!系統匹配不到相應的運輸方式(渠道)! | 系統匹配不到運輸方式(渠道) | 請查看“創建訂單”中的輸入參數 |
訂單保存並提交成功!-DL140887(跟蹤號,運單號);R800001409100028(訂單號) | 訂單提交成功(沒有任何錯誤) | 提交到確認的訂單才會返回跟蹤號 |
訂單保存並提交成功!-R800001409100028(訂單號) | 訂單提交成功(沒有任何錯誤) | 訂單沒有返回跟蹤號,本身渠道部返回跟蹤號,也不預報 |
訂單保存並提交成功!-R800001409100028(訂單號)-預報失敗:訂單號R800001409100028郵編不正確 | 訂單提交成功(沒有任何錯誤) | 訂單沒有返回跟蹤號,渠道有預報,但是預報失敗,會返回預報後的錯誤信息 |
訂單保存成功,但提交到確認狀態失敗!-明細插入失敗 | 訂單主數據提交成功(明細插入失敗) | 請檢查傳入的明細數據 |
訂單保存成功,但提交到確認狀態失敗!錯誤信息 | 提交到確認失敗 | 請檢查傳入的“訂單類型”Style:1 倉儲訂單(如果傳入的明細產品不存在則提交到確認失敗) |
訂單保存成功,但由於不滿足跟蹤號必須唯一或者收件人名稱、收件人國家、運輸方式、地址行1都不能為空,提交到確認狀態失敗!-" 錯誤信息 | 訂單保存成功 | 請檢查傳入數據是否有誤! |
訂單出錯 | 傳入的數據格式不正確 | 請參考“創建訂單”中的提交實例 |
技術支持
API問題請發郵件至 sales@pfcexpress.com