当前位置: API文档

stock_sync_by_pd.php(创建盘点单)

¥标准

1.接口说明

1.1 接口描述:旺店通ERP库存需要调整时,推送盘点库存单据给旺店通ERP,覆盖旺店通ERP实物库存。

                        注:旺店通ERP盘点成功后,盘点单内的库存值直接覆盖前库存

1.2 创建盘点分支场景说明:

①单品盘点:将mode传为1,type传为1,按照仓库+商品+数量维度进行盘点;

②货位盘点:按照仓库+商品+货位+数量维度进行盘点,将mode固定传为2,type传为1时,只变更该商品盘点货位的库存,其他货位库存不变;type传为2时,对该货位库存数据进行传入盘点,该货位下其他商品库存盘点为0,具体场景说明如下:

假设仓库1  A货位下库存情况为 sku编码:01 在A货位下库存10;sku编码:02 在A货位下库存20;sku编码:03 在A货位下库存30

此时传输盘点信息为仓库1 A货位 商品01  盘点数量20

当mode传为2,type传为1后库存情况:仓库1 A货位下商品库存情况为 A货位 sku:01库存20;A货位sku:02库存20;A货位sku:03库存20

当mode传为2,type传为2后库存情况:仓库1A货位下商品库存情况为 A货位sku:01库存20;A货位sku:02库存0;A货位sku:03库存0

③明细盘点:将mode传为3,type传为1,按照仓库+商品+货位+批次+效期+数量维度进行盘点;


特别说明:当mode传为3时,position字段为必传字段;Y极速版不支持货位盘点与明细盘点方案,如有需要请联系旺店通商务人员沟通

1.3 注意事项:①:本接口调用时占用服务器资源较多,会影响客户端功能执行效率,因此不要频繁调用,

                        且推送时盘点单货品明细控制在500条及以下,如盘点明细过多,分多次推送。

                        ②:在客户端不做发货操作时调用本接口,一般在前一天20:00以后至下一天凌晨6:00之前。

                        如一个请求包含明细过多,分多次请求。

                        ③:该接口调用日上限2000次。

2.调用场景

2.1举例说明:线下ERP、SAP等系统对接

3.请求参数说明

   3.1 请求地址

环境HTTP地址
测试环境https://openapi.ali.huice.cc/openapi/stock_sync_by_pd.php
正式环境https://openapi.huice.com/openapi/stock_sync_by_pd.php

   3.2 公共请求参数

名称字段类型长度必须描述
卖家账号sidString
是购买ERP时由旺店通分配给ERP购买方,请从ERP购买方获取。
接口账号appkeyString
是
时间戳timestampint
是

北京时间1970-01-01 08:00:00起至现在的总秒数,10位int值,旺店通网页

API服务端允许请求最大时间误差为5min,

date.timezone = Asia/Shanghai。
签名signString
是API输入参数签名结果,签名算法介绍单击这里


 3.3 业务请求参数

名称字段类型长度必须描述
仓库idwarehouse_idint11

代表仓库所有属性的唯一id,用于仓库区分,在旺店通ERP【仓库信息维护】界面查看

仓库编号warehouse_novarchar              40是代表仓库所有属性的唯一编号,用于仓库区分,在旺店通ERP【仓库信息维护】界面查看
API单号api_outer_no
40是外部单号唯一标识
货品明细列表节点goods_listdata[ ]
是货品明细列表节点
盘点方案modeint11否盘点方案:1.单品盘点(默认) 2.货位盘点 3.明细盘点
盘点类型typeint11否盘点类型:1.货品盘点(默认) 2.货位盘点  注:货位盘点(mode=2)时盘点类型才可以为货位盘点
严格模式is_post_errorint11否

默认为非严格模式is_post_error=0。is_post_error=1,为严格模式盘点单中货品明细不允许部分盘点成功,全部盘点成功才成功,存在盘点失败的,则整单失败。is_post_error=0 非严格模式表示盘点单货品明细允许部分推送成功(盘点单内spec_no在ERP货品档案存在的部分创建成功,不存在的部分创建失败);

是否添加库存记录is_create_stockint 11否默认为is_create_stock=1。is_create_stock=0表示不自动添加库存记录。is_create_stock=1表示自动添加库存记录 。注意:明细盘点不自动添加库存

goods_list

名称字段类型长度必须描述
商家编码spec_novarchar40是代表单品(sku)所有属性的编码,SKU概念介绍,单击这里
盘点数量stock_numdecimal(19,4)是盘点数量(盘点推送的库存数量指覆盖数量,不是调整数量)
货位position_novarchar40否货位;注:货位盘点(mode=2)或明细盘点(mode=3)时必传
批次batch_novarchar
否批次编号 不传默认为空;注:明细盘点(mode=3)使用;
有效期expire_datevarchar
否

有效期 注:明细盘点使用;

日期格式:

[yyyy-MM-dd]

不要时间time

生产日期production_datevarchar
否

生产日期 注:明细盘点使用;

日期格式:

[yyyy-MM-dd]

不要时间time

4.响应参数

 4.1公共相应参数

名称字段类型长度必须描述
错误码codeint11是状态码:0表示成功,其他表示失败
错误信息messagevarchar255是错误信息
盘点单号pd_novarchar               40否盘点单号
明细校验失败列表warning data[ ]255否返回创建失败的商品信息。创建成功,返回一个空的数组。

warning

名称字段类型长度必须描述
商家编码spec_novarchar40否代表单品(sku)所有属性的编码,SKU概念介绍,单击这里
错误信息error_msgvarchar
否错误信息


5.请求示例

PHP
<?php
    require_once('../WdtClient.php');
    $c = new WdtClient;
    $c->sid ='';
    $c->appkey ='';
    $c->appsecret ="";
    //测试环境地址
    //上线时需要换成线上的
    $c->gatewayUrl = 'https://openapi.ali.huice.cc/openapi/stock_sync_by_pd.php'; // 测试的
    //$c->gatewayUrl = 'https://openapi.huice.com/openapi/stock_sync_by_pd.php'; //正式的
    $spec_item = new stdClass();
    $spec_item->spec_no = "test1";
    $spec_item->stock_num = "555";
    $goods_list = [$spec_item];

    $c->putApiParam('api_outer_no', 'pdnoxxxx');
    $c->putApiParam('warehouse_id', '130');
    $c->putApiParam("goods_list", json_encode($goods_list, JSON_UNESCAPED_UNICODE));

    $json = $c->wdtOpenApi();
    var_dump($json);
?>
JAVA

C#

python

6.响应示例

   6.1 正常响应示例 

JSON
{
	"code": 0,
	"message": "",
	"pd_no": "PD2606050005",
	"warning": []
}

   6.2 异常响应示例

JSON
{
    "code": 21000006,
    "message": "外部单号重复,请保证外部单号[api_outer_no]的唯一性"
}



常用工具