物流接口对接是电商系统的必备能力。对接物流服务商实现电子面单打印和物流状态追踪,是提升用户体验的关键环节。本文以菜鸟物流和顺丰为例介绍物流接口的对接方案。
电子面单接口
电子面单替代传统纸质手写面单,是电商发货的标配。对接流程:物流服务商审核通过后获取商户ID和密钥。下单面单:POST面单接口传收发货地址、商品信息和包裹重量等参数。面单下单成功后返回面单号、物流单号和面单图片(通常为Base64格式的图片或PDF链接)。面单打印:通过热敏打印机打印面单,需要适配主流打印机的指令集。联盛和佳博是常用的面单打印机品牌。
物流轨迹查询
物流轨迹查询让用户实时了解包裹位置。查询接口:GET轨迹接口传入物流单号和物流公司编码。响应包含轨迹节点列表:每个节点有时间、状态和地点信息。轨迹状态有时间线模式:已揽收、运输中、派送中和已签收。缓存策略:轨迹信息变化不频繁,使用Redis缓存减少查询次数。对于大促期间的海量查询,可以对接物流平台的订阅推送功能。
物流状态推送
物流平台通过Webhook推送物流状态变更,减少轮询查询的压力。订阅方式:向物流平台注册回调地址,物流状态变更时自动推送。推送内容包含物流单号、新状态和状态变更时间。推送可靠性:推送可能失败或重复,接收方需要去重处理。推送失败时物流平台会重试,通常重试3-5次。接收方返回200确认收到,可选的还可以返回ackId用于推送确认。
多物流商对接
电商通常对接多家物流商,需要统一的抽象层。抽象接口:下单接口、查询接口、取消接口和回调处理。适配层:为每家物流商实现适配器,将统一请求转换为各物流商的API格式。配置中心管理各物流商的API地址和密钥。路由策略:根据地址、重量和价格自动选择最优物流商。新增物流商时只需要新增适配器,不影响业务调用方。