api_goods_stock_change_ack.php(库存同步回写)
1.接口说明
1.1 接口描述:库存量同步至平台是否成功的状态批量回传给ERP
1.2 适用版本:客户端 V2.4.5.0及以上版本
1.3 注意事项:先执行完“查询库存同步接口”(api_goods_stock_change_query.php),再执行本接口,“查询库存同步接口”单击这里
2.调用场景
2.1自研商城、分销系统、全渠道等系统对接
3.请求参数说明
3.1 请求地址
环境HTTP地址测试环境https://sandbox.wangdian.cn/openapi2/api_goods_stock_change_ack.php
正式环境https://api.wangdian.cn/openapi2/api_goods_stock_change_ack.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 业务请求参数
名称字段类型长度必须描述库存同步状态回传列表stock_sync_listdata[]是请求参数的1级数据节点,包含库存同步状态的数据节点,节点下数据字段详见下述“stock_sync_list”
stock_sync_list名称字段类型长度必须描述ERP内平台货品表主键idrec_idint11是回写的记录id,见api_goods_stock_change_query中rec_id
货品库存sync_stockint11是货品库存,该值为api_goods_stock_change_query 中的值回传即可
库存变化时自增stock_change_countint11是该值为api_goods_stock_change_query 中的值回传即可
4.响应参数
4.1 公共响应参数
名称字段类型长度必须描述错误码codeint11是状态码:0表示成功,其他表示失败
错误描述messagevarchar255是错误描述
4.2 业务响应参数
5.请求示例
PHP<?php
require_once("../WdtClient.php");
$c = new WdtClient;
$c->sid = '';
$c->appkey = '';
$c->appsecret = '';
$c->gatewayUrl = 'http://sandbox.wangdian.cn/openapi2/api_goods_stock_change_ack.php';
$stock_sync_list = array(
array(
'rec_id' => '1',
'sync_stock' => '100',
'stock_change_count' => '5634245'
)
);
$c->putApiParam('stock_sync_list',json_encode($stock_sync_list,JSON_UNESCAPED_UNICODE));
$c->putApiParam('limit',100);
$json = $c->wdtOpenApi();
var_dump($json);
?>
JAVApackage com.wangdian.api.trade;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.wangdian.api.WdtClient;
public class ApiGoodsStockChangeAck {
public static void main(String[] args) {
// TODO Auto-generated method stub
WdtClient client = new WdtClient("", "", "", "");
List> stock_sync_list = new ArrayList>();
Map stock_sync_1 = new HashMap();
stock_sync_1.put("rec_id", 1);
stock_sync_1.put("sync_stock", 100);
stock_sync_1.put("sstock_change_count", 123);
stock_sync_list.add(stock_sync_1);
String stock_sync_list_json = JSON.toJSONString(stock_sync_list);
Map params = new HashMap();
params.put("stock_sync_list", stock_sync_list_json);
try {
String response = client.execute("api_goods_stock_change_ack.php", params);
System.out.println(response);
} catch (IOException e) {
e.printStackTrace();
}
}
}
C#using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WdtSdk;
namespace ApiGoodsStockChangeAck
{
class ApiGoodsStockChangeAck
{
static void Main(string[] args)
{
WdtClient client = new WdtClient();
client.sid = "";
client.appkey = "";
client.appsecret = "";
client.gatewayUrl = "http://sandbox.wangdian.cn/openapi2/api_goods_stock_change_ack.php";
var stock_sync_list = new[]
{
new
{
rec_id = "908",
sync_stock = "100",
stock_change_count = "338"
},
new
{
rec_id = "912",
sync_stock = "100",
stock_change_count = "338"
},
new
{
rec_id = "913",
sync_stock = "100",
stock_change_count = "338"
}
};
string json = stock_sync_list.ToJsonString();
client.putParams("stock_sync_list", json);
string result = client.wdtOpenapi();
Console.WriteLine(result);
Console.ReadKey();
}
}
}6.响应示例
6.1 正常响应示例JSON{
'code': 0,
'message': "OK",
}
6.2 异常响应示例JSON{
"code": 1007,
"message": "接口appkey已停用【解决办法:联系商务人员,重新开启接口appkey】 "
}