当前位置: API文档
Y_logistics_sync_query.php(查询物流同步)
1.1 接口描述:旺店通ERP销售订单的发货状态、物流单号等同步给其他系统,注:”查询物流同步”与“物流同步回写”两个接口配合使用,完成“销售订单发货同步”,仅支持自有/其它平台店铺 1.2 调用建议:物流同步业务分两部分,一部分是数据抓取,另一部分是状态回写,建议每五分钟从待同步物流数据池中,抓取一次物流数据,每次100条,处理完成一百条之后,把成功或者失败状态回写到OMS中,如此循环,直到数据池中取不出数据为止。 1.3 注意事项:①本接口logistics_sync_query是与logistics_sync_ack(物流同步状态回写)配合调用的,调用一次logistics_sync_query获得的待同步物流信息处理完成后,需要调用logistics_sync_ack响应同步结果;②测试环境如何测试物流同步请看本文档最下边的附录说明 1.3 常见场景处理:
1.3. 1拆分发货:商城推送过来的是一个订单,但是因为实际情况需要(例:库存不足有货先发),在ERP系统拆分开了,分开发货。①:商城订单只有一条货品明细,且货品数量>=2被拆分成多个系统订单的 一个tid对应一个oid,num>=2,拆分后的多个系统订单tid和oid相同,此情景下拆分后的多个系统单,只有一个系统订单可成功同步物流单号,其余系统单不同步。
②:商城订单有多条货品明细,被拆分成多个系统订单的一个tid对应多个oid,拆分后的多个系统订单tid相同、oid不同,此情景下拆分后的多个系统单,每个系统订单可以同步一个单号
③注意事项:物流同步时物流单号对应的最小维度是子订单(oid),一个子订单只能同步一个单号需要在客户端设置--系统设置--订单设置中勾选自有平台拆单发货的配置,否则一个平台订单编号只能回传一个物流单号
平台(商城、官网等)必须支持拆分发货功能
1.3.2 多包裹发货:ERP系统内单个订单包含的货品数量过多或者重量过重,因实际包装需要或物流公司要求(例如:单个包裹不能超过5kg),此时单个订单需要打印多个物流单进行发货。①:单个系统订单,实际多个包裹发货,每个包裹对应一个物流单号一个trade_no,对应多个logistics_no,此情景下与系统订单包含子订单(oid)条数无关,只能同步一个物流单号
2.1 自研商城、分销系统、全渠道等系统对接 |
环境 | HTTP地址 |
---|---|
测试环境 | https://openapitest.huice.com/openapi/logistics_sync_query.php |
正式环境 | https://openapi.huice.com/openapi/logistics_sync_query.php |
名称 | 字段 | 类型 | 长度 | 必须 | 描述 |
卖家账号 | sid | String | 是 | 购买ERP时由旺店通分配给ERP购买方,请从ERP购买方获取。 | |
接口账号 | appkey | String | 是 | ||
时间戳 | timestamp | int | 是 | 北京时间1970-01-01 08:00:00起至现在的总秒数,10位int值, 旺店通企业版API服务端允许请求最大时间误差为5min,date.timezone = Asia/Shanghai。 | |
签名 | sign | String | 是 | API输入参数签名结果,签名算法介绍单击这里 |
名称 | 字段 | 类型 | 长度 | 必须 | 描述 |
获取条数 | limit | tinyint | 4 | 是 | 每次请求需返回发货记录条数控制,取值范围大于等于,1小于等于100, limit输入值大于100时接口默认limit=100.注:数据获取同步给商城系统后, 一定要通过logistics_sync_ack.php回写结果, 否则会出现ERP发货状态不能同步到商城的情况。 |
店铺编号 | shop_id | int | 11 | 否 | 代表店铺所有属性的唯一编码,用于店铺区分,ERP内支持自定义(ERP店铺界面设置) 用于获取指定店铺待同步数据信息 |
名称 | 字段 | 类型 | 长度 | 必须 | 描述 |
错误码 | code | int | 40 | 是 | 状态码:0表示成功,其他表示失败 |
错误原因 | message | varchar | 255 | 是 | 错误原因 |
数据条数 | total_count | int | 11 | 是 | 待物流同步数据总条数 |
待同步物流订单信息列表 | trades | data[] | 否 | 响应参数的1级数据节点,包含当前页的订单待同步物流订单信 息的数据节点,节点下数据字段详见下述“trades” |
trades
名称 字段 类型 长度 必须 描述 主键 rec_id bigint 20 是 主键,用于logistics_sync_ack回写状态 原始订单 tid varchar 40 是 原始订单编号,商城或平台订单号 物流单号 logistics_no varchar 100 是 物流或者快递面单对应的编号 物流方式 logistics_type smallint 6 是 响应值为代表物流方式的数字,数字对应的物流方式名称单击这里 发货时间 consign_time datetime 是 发货时间 时间格式:yyyy-MM-dd HH:mm:ss 是否拆分发货 is_part_sync varchar 1 是 是否拆分发货,1:拆单发货,0:不进行拆单发货 原始子订单 oids varchar 208 是 子订单编号串,以逗号(,) 分隔,(is_part_sync非0时才有效) 字段超过上限后会分多条trades返回 平台ID platform_id smallint 6 是 平台ID,固定值127 订单ID trade_id int 11 是 订单ID 物流方式名称 logistics_name varchar 40 是 物流方式类型名称,(ERP设置-基本设置-物流界面的物流类型中文名称) 是否同步 is_need_sync int 1 是 1:需要同步,0:不需要同步 同步状态 sync_status int 1 是 0:等待同步(实际需要自研商城处理的数据,其他状态都可以忽略),1:提交运单信息失败,2:同步失败,3:同步成功(回收单号后也会变成这个状态),4:手动设置为同步成功,5:手动取消同步 店铺id shop_id int 11 是 默认为0 物流id logistics_id int 11 是 默认为0 同步时间 sync_time datetime 是 成功同步时间 错误码 error_code varchar 200 是 默认为 '',平台返回的错误码 错误描述 error_msg varchar 200 是 默认为 '',平台返回的错误描述 重试次数 try_times tinyint 4 是 默认为0,重试计数(有些同步失败可重试) 最后修改时间 modified datetime 是 最后修改时间, 时间格式:yyyy-MM-dd HH:mm:ss 创建时间 created datetime 是 创建时间,时间格式:yyyy-MM-dd HH:mm:ss