当前位置: API文档

stock_query_all.php(全量查询库存)

¥定制

1.接口说明

1.1 接口描述:全量获取ERP实际库存、库存占用等数据。
1.2 适用版本:客户端 V2.4.0.5及以上版本
1.3 增量获取:按照最库存管理数据最后修改时间增量获取数据,请求时输入start_time和end_time作为时间跨度的筛选条件。
1.4 时间跨度:start_time和end_time最大跨度为30天,开始时间和结束时间取值范围为闭区间取值,例如2018-11-01 00:00:00至2018-11-30 23:59:59,建议根据获取数据量的多少适当减小时间跨度。

1.5注意事项:

只允许凌晨00:00-02:00调用,其余时间调用会报错。

②接口返回的“库存量”字段值是仓库中的实物库存量,“可发库存量”可理解为可销售库存量或未被占用库存量,可发库存计算方式,需要对照系统设置中的可发库存计算公式

2.调用场景

2.1 线下ERP、自研商城等系统对接

3.请求参数说明

   3.1 请求地址

环境HTTP地址
测试环境http://sandbox.wangdian.cn/openapi2/stock_query_all.php
正式环境http://api.wangdian.cn/openapi2/stock_query_all.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 业务请求参数

名称字段类型长度
必须描述
仓库编号warehouse_novarchar
代表仓库所有属性的唯一编码,用于仓库区分,ERP内支持自定义(ERP仓库界面设置),传此参数不传开始和结束时间,默认时间区间从请求时间前推一小时返回数据;
传此参数并且传开始和结束时间,按照传参的时间区间返回数据;(不支持一次推送多个仓库编号)
不传此参数则返回ERP所有仓库中符合传参条件的数据
商家编码spec_novarchar
代表单品(sku)所有属性的编码,SKU概念介绍,单击这里。传此参数,按照商家编码指定返回响应参数;若传该字段则不校验时间
条码barcodevarchar
传此参数,按照条码指定返回响应参数,若传该字段则不校验时间
开始时间start_timedate
按最后修改时间增量获取数据,start_time作为开始时间,格式:YYYY-MM-DD HH:MM:SS
结束时间end_timedate
按最后修改时间增量获取数据,end_time作为结束时间,格式:YYYY-MM-DD HH:MM:SS
分页大小page_sizeint
每页返回数据条数,输入值范围1~100,不传本参数,输入值默认为40,使用举例单击这里
页号page_noint
不传值默认从0页开始

4.响应参数

   4.1 公共响应参数

名称字段类型长度必须描述
错误码codeint40状态码:0表示成功,其他表示失败
错误描述messagevarchar255错误描述
数据条数total_countint10只有,page_no = 0 时才返回的符合条件的数据总条数,用来分页
库存信息列表stocks[ ]data
响应参数的级数据节点,包含当前页的库存管理信息的数据节点,节点下数据字段详见下述stocks”列表

   4.2 业务响应参数

stocks

名称字段类型长度必须描述
单品主键idspec_idint11单品主键id
货品编号goods_novarchar40代表SPU所有属性的唯一编号,用于系统货品的区分,SPU概念介绍,单击这里
品牌编号brand_novarchar32品牌编号
品牌名称brand_namevarchar64品牌名称,ERP版本V2.3.8.4及以上才可返回
货品名称goods_namevarchar255货品名称
商家编码spec_novarchar40代表单品(SKU)所有属性的唯一编号,用于系统单品的区分,SKU概念介绍,单击这里
规格名称spec_namevarchar100规格名称
规格码spec_codevarchar40规格码
条形码barcodevarchar50条形码
仓库主键idwarehouse_idint11仓库主键id
仓库编号warehouse_novarchar40代表仓库所有属性的唯一编码,用于仓库区分,ERP内支持自定义(ERP仓库界面设置)
仓库名称warehouse_namevarchar64仓库名称
仓库类型warehouse_typetinyint4仓库类型0为普通,非0为外部WMS
库存量stock_numdecimal(19,4)库存量
锁定量lock_numdecimal(19,4)锁定量
未付款量unpay_numdecimal(19,4)未付款量
预订单量subscribe_numdecimal(19,4)预订单量
待审核量order_numdecimal(19,4)待审核量
待发货量sending_numdecimal(19,4)待发货量
采在途量purchase_numdecimal(19,4)采在途量
调拨在途量transfer_numdecimal(19,4)调拨在途量
待调拨量to_transfer_numdecimal(19,4)待调拨量
待采购量to_purchase_numdecimal(19,4)待采购量
采购到货量purchase_arrive_numdecimal(19,4)采购到货量
采购退货量return_numdecimal(19,4)采购退货量
采购换货量return_exch_numdecimal(19,4)采购换货量
采购换货在途量return_onway_numdecimal(19,4)采购换货在途量
销售退货量refund_numdecimal(19,4)销售退货量
生产在途量process_onway_numdecimal(19,4)生产在途量
销售退货在途量refund_onway_numdecimal(19,4)销售退货在途量
部分付款库存part_paid_numdecimal(19,4)部分付款库存
负库存出库量neg_stockout_numdecimal)(19,4)负库存出库量
今日销量today_numdecimal(19,4)今日销量
警戒库存safe_stockdecimal(19,4)警戒库存
外部WMS中的编码spec_wh_novarchar40单品在外部WMS中的编码,如在物流宝仓库中主键
外部WMS同步时库存wms_sync_stockdecimal(19,4)外部WMS同步时库存
外部WMS同步时占用库存wms_preempty_stockdecimal(19,4)外部WMS同步时占用库存
外部WMS同步时,与系统库存的差wms_stock_diffdecimal(19,4)外部WMS同步时,与系统库存的差
与外部WMS同步时间wms_sync_timedatetimedatetime与外部WMS同步时间wms_sync_stock-stock_num
成本价cost_pricedecimal(13,4)成本价
重量weightdecimal(19,4)重量
商品图片urlimg_urlvarchar1024商品图片url
最后修改时间modifieddatetimedatetime最后修改时间,格式:YYYY-MM-DD HH:MM:SS

5.请求示例

PHP
<?php
    require_once("../WdtClient.php");
    $c = new WdtClient;
    $c->sid = '';
    $c->appkey = '';
    $c->appsecret = '';
    $c->gatewayUrl = 'http://sandbox.wangdian.cn/openapi2/shop.php';
    
    $c->putApiParam('shop_no', 'api_test');
    $json = $c->wdtOpenApi();
    var_dump($json);
?>
JAVA
package com.wangdian.api.basic;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import com.wangdian.api.WdtClient;

public class ShopQuery {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        WdtClient client = new WdtClient("", "", "", "");
        Map<String, String> params = new HashMap<String, String>();
        params.put("shop_no", "ghs2test");

        try {
            String response = client.execute("shop.php", params);
            System.out.println(response);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}
C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WdtSdk;

namespace LogisticsQuery
{
    class LogisticsQuery
    {
        static void Main(string[] args)
        {
            WdtClient client = new WdtClient();
            client.sid = "";
            client.appkey = "";
            client.appsecret = "";
            client.gatewayUrl = "http://sandbox.wangdian.cn/openapi2/logistics.php";

            client.putParams("logistics_no", "CSOTHER");
            string result = client.wdtOpenapi();
            Console.WriteLine(result);
            Console.ReadKey();
        }
    }
}

6.响应示例

   6.1 正常响应示例 

JSON
{
  "code": 0,
  "shoplist": [
    {
      "platform_id": "127",
      "sub_platform_id": "0",
      "shop_id": "2",
      "shop_no": "ft001",
      "shop_name": "飞拓测试店铺",
      "account_id": "",
      "account_nick": "",
      "province": "420000",
      "city": "420100",
      "district": "0",
      "address": "",
      "contact": "139",
      "zip": "",
      "mobile": "",
      "telno": ""
    }
  ]
}

   6.2 异常响应示例

JSON
{
  "code": 0,
  "shoplist": [
    {
      "platform_id": "127",
      "sub_platform_id": "0",
      "shop_id": "2",
      "shop_no": "ft001",
      "shop_name": "飞拓测试店铺",
      "account_id": "",
      "account_nick": "",
      "province": "420000",
      "city": "420100",
      "district": "0",
      "address": "",
      "contact": "139",
      "zip": "",
      "mobile": "",
      "telno": ""
    }
  ]
}



常用工具