最近在做電子面單功能,讓後臺可以直接通過快遞網點的月結賬號(客戶號、客戶接口密碼)打印出面單、方便發貨,但過程遇到很多坑、網上沒有資料,於是整理一份。遇到的坑包括:
打印機和 CLodop 驅動只支持 windows 系統
沒有 UI 界面調試,只能改了然後真實地打印出來看
打印出來,還要跟倉庫、跟快遞公司確定面單是否符合規格
面單存在新老模板問題
具體實現方案如下:
微信物流助手🙅
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/express/introduction.html
只支持老模板(100×180mm),快遞公司在兩年前已經不接收了,徹底不可用,新的通用尺寸是 76×130mm。
而且必須傳微信 openid,爲了後續推送之類的。但如果是 app,不一定有 openid,就比較麻煩。
快遞 100(快遞管家)
https://b.kuaidi100.com/doc/API_V7.0.pdf
這個方案的場景是,先導入各平臺的訂單到快遞管家後臺,再統一進行打單,不是自研平臺提供服務的場景。這導致了導入和打單是異步的,導入之後要到後臺點擊一下打印。
雖然提供一個快捷跳轉的接口,url 一鍵打開待打印的訂單列表,但接口鑑權有安全性的坑,以及如果多臺打印機同時使用,默認打印機選項會相互來回覆蓋,有點蛋疼。
另外也提供了頁面嵌入插件按鈕,可點擊喚起打印,但一直提示未登錄,未解決好,官方說兼容性不好。
具體:
面單選“微信物流助手”:也是老模板、不可用
面單選快遞公司官方:可用
快遞 100(企業賬號 API)
https://api.kuaidi100.com/document/5f0ff6a32977d50a94e10235.html
電子面單打印:必須要買他們的設備纔可以用,節假日不發貨
電子面單 HTML:也是老模板、不可用,且不能傳模板 id。如果 HTML 縮放大小,打印出來字也會重疊,不行
電子面單圖片:base64 圖片格式打印模糊問題,無法攬收。試了兩種打印機都糊,試了兩種 CSS 實現方式(img src 方法、CSS 的 background-image 屬性方法),一直解決不了
總得來說,快遞 100 就是推薦用自家的打印機再配合“電子面單打印”。
快遞鳥
- 電子面單:https://kdniao.com/api-eorder 對接還算方便,可以自己選擇模板,各家快遞公司都 ok
- 隱私面單:https://kdniao.com/api-safemail 僅支持順豐,別的快遞信息化程度不夠,不支持
快遞公司官方
待調研,未知