当前位置: API文档

finance.settle.Purchase.upload(创建采购结算单

¥标准

1.接口说明

1.1 接口描:创建采购结算单给ERP

1.2 适用版本:客户端 V1.4.4.1及以上版本
1.3 权限校验
1.4注意事项:
  • 部分数据计算逻辑

    • 明细

      • 税前折扣价 = 单价 * 折扣

      • 单位税额 = 税前折扣价 * 税率

      • 含税单价 = 税前折扣价 + 单位税额

      • 税额 = 发票数量 * 单位税额

      • 货款 = 税前折扣价 * 发票数量

    • 主单

      • 税额 = ∑明细.税额

      • 税前总额 = ∑明细.货款

  • 部分数据校验逻辑

    • 结算数量[非残品]

      • 结算数量[残品]=结算数量-结算数量[非残品]

      • 预期数量[残品]=预期数量-预期数量[非残品]

    • 结算数量[残品]不可大于预期数量[残品]

    • 结算数量[非残品]不可大于预期数量[非残品]

2.调用场景

2.1 举例说明:

3.请求参数说明

   3.1 请求地址

环境HTTP地址
测试环境http://47.92.239.46/openapi
正式环境http://wdt.wangdian.cn/openapi

  3.2 公共请求参数

名称字段类型长度
必须描述
卖家账号sidString
卖家账号, 由旺店通分配
接口账号keyString
由旺店通分配appkey, 在发送的数据中对应 key 字段,获取方式点击这里
saltString
由旺店通分配appsecret,是由两部分构成, 冒号前面的部分是secret, 冒号后面的部分是salt. 例如一个appsecret是testsecret:testsalt, 那么secret为testsecret, salt为testsalt.
接口名称methodString
调用的接口名称
版本号vString
1.0
秒级时间戳timestampint
秒级时间戳, 当前时间戳减去 2012-01-01 00:00:00(1325347200), 时间与服务器时间差120s内即合法。
签名signString
签名

   3.3 业务请求参数

名称字段类型长度
必须描述
单据信息settle_order
Map<String, Object>
单据信息
明细信息
detail_listList<Map<String, Object>>
明细信息

settle_order

名称字段类型长度
必须描述
采购单号
purchase_noString40采购单号
物流公司编号
logistics_company_noString20ERP内手动维护的物流公司编号
物流单号logistics_noString
100

物流单号
发票类型
invoice_typebyte

发票类型

0:无发票

1:电子普通发票

2:纸质普通发票

3:电子增值税专用发票

4:纸质增值税专用发票

发票号码
invoice_noString100

发票号码
邮费post_feeDecimal(19,4)

邮费
其他费用other_feeDecimal(19,4)
其他费用
备注
remarkString255备注
是否审核is_checkboolean1
默认false,审核失败情况下单据会创建失败
模糊查询fuzzy_queryboolean1
默认false,业务单号进行模糊查询匹配,匹配数量大于1条时会报错

detail_list

商家编码
spec_noString40
商家编码
结算数量
settle_numDecimal(19,4)
结算数量
名称字段类型长度
必须描述
结算数量(非残品)settle_normal_numDecimal(19,4)

默认值为传入的结算数量

发票数量
invoice_numDecimal(19,4)

默认值为预期数量
单价
priceDecimal(19,4)

默认值为采购单明细税前单价*单位系数
折扣
discountDecimal(19,4)

默认值为采购单明细折扣(折扣字段,默认值为1,1代表原价,无折扣;假设需要折扣为一折时,可将字段值传为0.1,同理,折扣为5折时,传值0.5;折扣为八折时,传值0.8,以此类推
税率
tax_rateDecimal(19,4)

默认值为采购单明细税率
分摊邮费share_post_feeDecimal(19,4)

分摊邮费
其他分摊
share_otherDecimal(19,4)

其他分摊
备注remarkString255

备注
批次号batch_noString

如果采购单包含批次则需传入
有效期expire_dateString

如果采购单包含有效期则需传入

4.响应参数

名称字段类型长度
必须描述
状态码statusInt

返回0为正常

错误信息messageString
无错误信息不返回
响应正文数据
data<Map<String, Object>

有错误信息时不返回此节点

data

名称字段类型长度
必须描述
结算单号
order_noString40
结算单号

5.请求示例

Json格式请求报文
[
    {
        "purchase_no": "CG2212190001"
    },
    [
        {
            "spec_no": "water",
            "settle_num": 2
        },
        {
            "spec_no": "mgh1",
            "settle_num": 10
        }
    ]
]
PHP
<?php  
header("Content-Type: text/html; charset=UTF-8");  
date_default_timezone_set("Asia/Shanghai");  

$client = new WdtErpClient("url", "wdtapi3", "appkey", "secret")
  
$parMap = new stdClass();
$parMap->purchase_no = "CG2212190001";
//$parMap->logistics_company_no = 'hsdhsdfh';
//$parMap->logistics_no = '102810840284';
//$parMap->invoice_type = 1;
//$parMap->invoice_no = 'affkdkl';
//$parMap->post_fee = 1.5;
//$parMap->other_total = 2.9;
//$parMap->remark = 'remark test';
//$parMap->is_check = false;

$detail1 = new stdClass();
$detail1->spec_no = 'water';
$detail1->settle_num = 2;
//$detail1->settle_normal_num = '';
//$detail1->invoice_num = '';
//$detail1->price = '';
//$detail1->discount = '';
//$detail1->tax_rate = '';
//$detail1->share_post_fee = '';
//$detail1->share_other = '';
//$detail1->remark = '';
//$detail1->batch_no = '';
//$detail1->expire_date = '';

$detail2 = new stdClass();
$detail2->spec_no = 'mgh1';
$detail2->settle_num = 10;
//$detail2->settle_normal_num = '';
//$detail2->invoice_num = '';
//$detail2->price = '';
//$detail2->discount = '';
//$detail2->tax_rate = '';
//$detail2->share_post_fee = '';
//$detail2->share_other = '';
//$detail2->remark = '';
//$detail2->batch_no = '';
//$detail2->expire_date = '';

$detailList = array($detail1, $detail2);

$data = $client->call("finance.settle.Purchase.upload", $parMap, $detailList);
?>
JAVA
C#

6.响应示例

   6.1 正常响应示例 

JSON

{
    "status": 0,
    "data":
    {
        "order_no": "JS202212300003"
    }
}

   6.2 异常响应示例

JSON
{
    "status": 100,
    "message": "结算数量[非残品]不可超过结算数量, 商家编码: water 货品名称:纯净水"
}






常用工具