当前位置: API文档

refund_query.php(查询退换管理)

¥标准

1.接口说明

1.1 接口描述:获取ERP销售退货(换货)订单信息
1.2 适用版本:客户端 V2.4.8.2及以上版本
1.3 增量获取:按照旺店通ERP订单的最后修改时间增量获取数据,请求时输入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 注意事项:本接口不返回淘系及系统供销平台订单数据,相关平台规则单击这里。淘系及系统供销订单数据获取办法单击这里其他平台的敏感信息会根据平台规则同步调整。


2.调用场景

2.1 自研商城、财务系统、SAP、数据分析等系统的对接

3.请求参数说明

   3.1 请求地址

环境HTTP地址
测试环境https://sandbox.wangdian.cn/openapi2/refund_query.php
正式环境https://api.wangdian.cn/openapi2/refund_query.php

查询历史退换单地址:

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

名称字段类型长度必须描述
退换单处理状态process_statustinyint4退换单处理状态 5 补款 10已取消 20待审核 30已同意 40已拒绝 50待财审 60待收货 63待推送 64推送失败 65委外待收货 69待收货(已结算) 70部分到货 71部分到货(已结算) 80待结算 90已完成
时间类型time_typetinyint10:最后修改时间,1:结算时间,2:创建时间。默认为0
开始时间start_timedatetime
按时间增量获取数据,start_time作为开始时间,格式:yyyy-MM-dd HH:mm:ss
结束时间end_timedatetime
按时间增量获取数据,end_time作为结束时间,格式:yyyy-MM-dd HH:mm:ss
分页大小page_sizeint10每页返回的数据条数,输入值范围1~40,不传本参数,输入值默认为40,使用举例单击这里
店铺编号shop_noString
店铺编号
页号page_noint10不传值默认从0页开始
Erp内退换单编号refund_novarchar40Erp内退换单编号,传该字段可以不传时间
平台原始退换单号src_refund_novarchar40平台原始退换单号,传该字段可以不传时间
系统订单编号trade_novarchar40系统订单编号,传该字段可以不传时间
原始单号tidvarchar40原始单号,传该字段可以不传时间
退回物流单号logistics_novarchar40退回物流单号
店铺编号(批量)shop_nosvarchar
批量指定店铺获取(多个店铺编号之间用英文逗号隔开,最多指定20个店铺)

4.响应参数

   4.1 公共响应参数

名称字段类型长度必须描述
错误码codeint11状态码:0表示成功,其他表示失败
错误信息messagevarchar255错误信息
满足条件的总条数total_countint11满足条件的总条数 当page_no = 0时返回
当前页的退换单数据refundsdata[]
当前页的退换单数据

  4.2 业务响应参数

  refunds

名称字段类型长度必须描述
退换单主键refund_idint11退换单主键
erp退换单号refund_novarchar40erp退换单号,默认TK开头
API单号api_outer_novarchar40接口创建退换单的外部单号
平台类型platform_idsmallint6平台类型,响应值为代表平台的ID数字,ID对应的平台名称单击这里
平台退款单号src_novarchar40平台退款单号
类型typestring41退款(未发货,退款申请)2退货3换货4退款不退货5订单补款
处理状态process_statustinyint45 补款 10已取消 20待审核 30已同意 40已拒绝 50待财审 60待收货 63待推送 64推送失败 65委外待收货 69待收货(已结算) 70部分到货 71部分到货(已结算) 80待结算 90已完成
平台状态statustinyint4平台状态 0表示为空,1取消退款,2已申请退款,3等待退货,4等待收货,5退款成功,10换货待处理,20待买家退货,30买家已退货 待收货,40待买家修改,50待发出换货商品,55待买家收货,60换货改退货,70换货关闭,80换货成功
担保方式guarantee_modetinyint4担保方式1担保交易2非担保交易3非担保在线交易(ecshop)
退款阶段
cs_statustinyint4退款阶段  0售中 1售后
店铺编号shop_novarchar20代表店铺所有属性的唯一编码,用于店铺区分,ERP内支持自定义(ERP店铺界面设置)
换出原始单idswap_trade_idint11换出原始单id
买家支付帐号pay_accountvarchar128买家支付帐号
支付订单号pay_novarchar60支付订单号
退货金额goods_amountdecimal19,4退货金额
买家申请退款金额refund_amountdecimal19,4买家申请退款金额
线下退款金额direct_refund_amountdecimal19,4订单确认收货之后的退款金额
平台退款金额guarante_refund_amountdecimal19,4平台退款金额
实际退款/收款金额actual_refund_amountdecimal19,4实际退款/收款金额
换货金额exchange_amountdecimal19,4换货金额
邮费金额post_amountdecimal19,4邮费金额
其它金额other_amountdecimal19,4其它金额
已退款/已收款paiddecimal19,4已退款/已收款
订单的原始单号tidvarchar255订单的原始单号
系统订单IDsales_trade_idint11系统订单ID
系统订单号sales_tidvarchar40系统订单编号,默认单号为JY开头,ERP内支持自定义(设置路径:设置——编码设置)
昵称buyer_nickvarchar100昵称
收件人姓名receiver_namevarchar40收件人姓名
收件人地址receiver_addressvarchar255收件人地址
收件人电话receiver_telnovarchar255收件人电话
退货人姓名return_namevarchar40退货人姓名
退货人手机号return_mobilevarchar40退货人手机号
退货人电话return_telnovarchar20退货人电话
退回仓库地址return_addressvarchar255退回仓库地址
退回物流公司名称return_logistics_namevarchar40退回物流公司名称
退回物流单号return_logistics_novarchar100退回物流单号
换货收件人姓名swap_receivervarchar40换货收件人姓名
换收发件人姓名手机swap_mobilevarchar20换收发件人姓名手机
换货收件人姓名电话swap_telnovarchar20换货收件人姓名电话
换货收件人省份swap_provinceint11换货收件人省份
换货收件人城市swap_cityint11换货收件人城市
换货收件人区县swap_districtint11换货收件人区县
换货收件人省市区swap_areavarchar40换货收件人省市区
换出货品出库仓库编号swap_warehouse_novarchar40换出货品出库仓库编号
换货收件人姓名地址swap_addressvarchar255换货收件人姓名地址
期望退回的仓库编号warehouse_novarchar40期望退回的仓库编号
退款创建时间refund_timedatetime
退款创建时间  格式:yyyy-MM-dd HH:mm:ss
备注remarkvarchar255备注
退款原因refund_reasonvarchar255退款的具体原因说明
换出原始单号swap_trade_novarchar40ERP生成的换出订单的原始订单编号
ERP客户端需升级至V2.3.8.6及以上版本可获取此字段
最后修改时间modifieddatetime
最后修改时间  格式:yyyy-MM-dd HH:mm:ss
结算时间finish_timedatetime
旺店通内操作结算的时间  格式:yyyy-MM-dd HH:mm:ss
客户档案编号customer_novarchar40客户档案编号
收件人姓名customer_namevarchar40收件人姓名(如需唯一值,以receiver_name为准)
收件人邮编swap_zipvarchar20收件人邮编
换货新订单物流公司类别swap_logistics_typesmallint6响应值为代表换货新订单物流公司类别的数字,数字对应的物流公司类别名称单击这里
换货新订单物流公司名称swap_logistics_namevarchar40换货新订单物流公司名称
建单员姓名creator_namevarchar40建单员姓名
逆向物流错误信息
error_msgvarchar255
逆向物流错误信息
创建时间createddatetime
创建时间
外部编号outer_novarchar40默认为'',外部编号,与wms对接使用
店铺名称shop_namevarchar40店铺名称
仓库idwarehouse_idsmallint6默认为'0',期望退回的仓库
店铺idshop_idsmallint6店铺id
预先状态
advance_statustinyint4默认为'0',0; 退款先行垫付申请 1; 退款先行垫付,垫付完成 2; 退款先行垫付,卖家拒绝收货 3; 退款先行垫付,垫付关闭 4; 退款先行垫付,垫付分账成功 5;
是否收到货品is_goods_receivedtinyint1默认为'0',买家是否收到货
客户idcustomer_idint11默认为'0',客户id
换出仓库idswap_warehouse_idint11默认为'0',换出货品出库仓库
换出物流idswap_logistics_idint
11默认为'0',换货新订单物流公司ID
仓库类型warehouse_typetinyint4默认为'0',期望退回仓库类型(0不限 1普通仓库 2自动流传外部 3京东仓储 4科捷 5百世物流 6SKU360 7通天晓 8中联网仓 9顺丰仓储 10网仓2号 11奇门仓储 12旺店通仓储 13心怡仓储 14力威仓储 15京东沧海 16云集仓储 17POS 18虎符 20外部链路型 22抖店云仓 126分销委外仓 127其它)
wms状态wms_statustinyint4默认为'0',外部状态,与wms对接使用 0初始化 1失败 2成功
wms结果wms_resultvarchar255默认为'',外部结果,与wms对接使用
外部仓库的单号wms_outer_novarchar40默认为'',对应外部仓库的单号
建立方式from_typetinyint4默认为'1',建立方式 1api抓单 2手式建单 3外部导入 4天猫换货 5菜鸟回传自动创建
退回货品数量return_goods_countdecimal
19,4默认为'0',退回货品数量
约束op_constraintint
11默认为'0',1不允许拒绝2需要到网页版操作
退款版本refund_versionvarchar40默认为'',退款版本,大于0后表明已经从平台下载完成,退款单不可修改
发货方式consign_modetinyint4默认为'0',发货方式:0默认 1审核退款单后立即生成换货订单 2退货完成后生成换货订单
物流公司名称logistics_namevarchar40默认为'',物流公司名称
物流单号logistics_novarchar40默认为'',物流单号
物流递交单号push_novarchar50默认为'',物流递交单号
物流形式
logistics_styleint11默认为'0',取件方式 :0客户取件,1顺丰取件,2拒收退回
原因reason_idint11默认为'0',原因
驳回原因revert_reasonint11默认为'0',驳回原因
错误原因bad_reasonint11默认为'0',错误原因
返回标志return_maskint11默认为'0',标志位 4-原始单唯一 8-增加退换在途量 16-确认退款金额标识(为了保持兼容,0表示已确认,1表示未确认) 32-对应订单是否开了电子发票 64天猫换货单关闭需要取消委外单 128天猫换货改退货需取消换出订单
是否结算后生成订单is_trade_chargedtinyint4默认为'0',是否结算后生成订单
预入库单stockin_pre_novarchar40默认为'',预入库单
驳回原因名称revert_reason_infovarchar40驳回原因名称
分销商名称fenxiao_nick_namevarchar40分销商名称
分销商退换单号fenxiao_refund_novarchar40分销商退换单号
分销原始单号fenxiao_tidvarchar255分销原始单号
标记名称flag_namevarchar40标记名称
退款子订单信息refund_order_listdata[]
退款子订单信息, refund_order_list结构
换出货品信息列表refund_out_goods_listdata[]
换出货品信息列表, refund_out_goods_list结构

refund_order_list

名称字段类型长度必须描述
货品明细主键order_idint11退换单退回货品明细主键
退换单主键refund_idint11退换单主键
原始子订单idoidvarchar40原始子订单编号
订单子订单的原始单号tidvarchar40订单子订单的原始单号
平台退款单号src_novarchar40平台退款单号
处理状态process_statustinyint4处理状态0已取消 10待递交 20待审核 30已同意 40已拒绝 50待财审 60待收货 70部分到货 80已完成(业务意义不完整,请使用refunds节点下的process_status)
销售订单编号sales_tidvarchar40销售订单编号
实际数量order_numdecimal19,4实际数量
价格pricedecimal19,4价格
平台类型platform_idsmallint6平台类型,响应值为代表平台的ID数字,ID对应的平台名称单击这里
成本价cost_pricedecimal19,4成本价
原价original_pricedecimal19,4原价
优惠discountdecimal19,4优惠
已付金额paiddecimal19,4已付金额
单品市场价market_pricedecimal19,4单品市场价
退款数量refund_numdecimal19,4退款数量
明细退款金额refund_order_amountdecimal19,4明细退款金额,由主单退款金额分摊
退货金额total_amountdecimal19,4退货金额
erp商品主键spec_idint11erp商品主键
商家编码spec_novarchar40代表单品(sku)所有属性的唯一编码,用于系统单品区分,SKU概念介绍,单击这里
货品名称goods_namevarchar255货品名称
货品编号goods_novarchar40代表货品(spu)所有属性的唯一编号,用于系统货品区分,,SPU概念介绍,单击这里
规格名称spec_namevarchar100规格名称
规格编码spec_codevarchar40规格编码
组合装编号suite_novarchar40组合装编号
组合装名称suite_namevarchar255组合装名称
组合装数量suite_numdecimal19,4组合装数量
退货入库数量stockin_numdecimal19,4退货入库数量
退款说明remarkvarchar255退换明细的备注
是否启用序列号is_sn_enabletinyint4默认为'0',0不启用序列号 1强序列号 2弱序列号
货位编号position_novarchar40货位编号
货位IDposition_idint11货位ID,入库时默认ID
系统订单IDsales_trade_idint11系统订单ID
销售订单ID
sales_order_idint
11默认为'0'
平台货品IDgoods_idint11平台货品ID
组合装IDsuite_idint11默认为'0',组合装ID
退货入库总额stockin_amountdecimal19,4默认为'0.0000',退货入库总额
最后修改时间modifieddatetime
最后修改时间  格式:yyyy-MM-dd HH:mm:ss
创建时间createddatetime
创建时间
编辑掩码edit_masktinyint4默认为'0',编辑掩码
标签tagint11默认为'0',标签
主条码barcodevarchar50主条码
品牌brand_namevarchar64
品牌名称

refund_out_goods_list

名称字段类型长度必须描述
主键idrec_idint11主键id
退换单主键idrefund_idint11退换单主键id
商品类型target_typetinyint4商品类型 1表示单品2表示组合装
商品idtarget_idint11组合装或者单品的id
商品名称goods_namevarchar255商品名称
规格名称spec_namevarchar100规格名称
商家编码merchant_novarchar40代表单品(sku)所有属性的唯一编码,用于系统单品区分,SKU概念介绍,单击这里
零售价retail_pricedecimal19,4零售价
数量numdecimal19,4数量
备注remarkvarchar50备注
规格编码spec_codevarchar40规格编码
是否启用序列号is_sn_enabletinyint4默认为'0',0不启用序列号 1强序列号 2弱序列号
原始子订单idoidvarchar40原始子订单编号
创建时间createddatetime
创建时间
最后修改时间modifieddatetime
最后修改时间
主条码barcodevarchar50主条码

 5.请求示例

PHP
<?php
    require_once("../WdtClient.php");
    $c = new WdtClient;
    $c->sid = '';
    $c->appkey = '';
    $c->appsecret = '';
    $c->gatewayUrl = 'http://sandbox.wangdian.cn/openapi2/refund_query.php';
    
    $c->putApiParam('process_status', '90');
    $c->putApiParam('start_time', '2017-12-07 13:00:44');
    $c->putApiParam('end_time', '2017-12-07 13:59:44');
    $json = $c->wdtOpenApi();
    var_dump($json);    
?>
JAVA
package com.wangdian.api.refund;

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

import com.wangdian.api.WdtClient;

public class RefundQuery {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        WdtClient client = new WdtClient("传入sid", "传入appkey", "传入appsecret", "传入url");
        //测试环境sid、appkey、密钥请到旺店通开放平台-自助对接-申请测试环境内查看,测试环境url=https://sandbox.wangdian.cn/openapi2/                
        //调用正式环境时请将sid、appkey、appsecret切换为实际参数,参数在旺店通开放平台-自助对接-应用管理内应用状态为已上线的应用中查看,调用正式环境注意切换正式环境url=https://api.wangdian.cn/openapi2/
        
        Map<String, String> params = new HashMap<String, String>();
        params.put("process_status", "90");
        params.put("start_time", "2018-12-01 00:00:00");
        params.put("end_time", "2018-12-10 00:00:00");
        try {
            String response = client.execute("refund_query.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 RefundQuery
{
    class RefundQuery
    {
        static void Main(string[] args)
        {
            WdtClient client = new WdtClient();
            client.sid = "";
            client.appkey = "";
            client.appsecret = "";
            client.gatewayUrl = "http://sandbox.wangdian.cn/openapi2/refund_query.php";
            
            client.putParams("start_time", "2019-01-01 00:00:00");
            client.putParams("end_time", "2019-01-17 00:00:00");

            string result = client.wdtOpenapi();
            Console.WriteLine(result);
            Console.ReadKey();
        }
    }
}
python
import WdtClient

t = WdtClient.WdtClient('appkey', 'appsecret', 'sid', 'http://sandbox.wangdian.cn/openapi2/')
params = {}
params.update({"start_time": '2021-01-01 00:00:00'})
params.update({"end_time": '2021-01-01 00:59:59'})
params.update({"page_size": '40'})
params.update({"page_no": '0'})

response = t.execute("refund_query.php", params)
print(response)

6.响应示例

   6.1 正常响应示例 

JSON
{
    "code": 0,
    "message": "",
    "total_count": "1",
    "refunds": [{
        "refund_id": "3172",
        "refund_no": "TK1905180001",
        "created": "2019-05-18 01:15:29",
        "src_no": "",
        "type": "2",
        "process_status": "90",
        "swap_trade_id": "0",
        "status": "5",
        "pay_account": "",
        "pay_no": "",
        "goods_amount": "2399.0000",
        "refund_amount": "2399.0000",
        "guarantee_mode": "2",
        "cs_status": "0",
        "sales_tid": "JY201811230001",
        "post_amount": "0.0000",
        "other_amount": "0.0000",
        "paid": "2399.0000",
        "tid": "WDT201811230001",
        "sales_trade_id": "1",
        "buyer_nick": "MOB13233456110",
        "receiver_name": "小明",
        "receiver_address": "北京 北京市 海淀区 海花园路",
        "receiver_telno": "",
        "return_name": "小明",
        "return_mobile": "13233456110",
        "return_telno": "1234563567",
        "exchange_amount": "0.0000",
        "return_address": "",
        "swap_receiver": "小明",
        "swap_mobile": "13233456110",
        "swap_telno": "1234563567",
        "swap_province": "110000",
        "swap_city": "110100",
        "swap_district": "110108",
        "swap_area": "北京 北京市 海淀区",
        "swap_address": "海花园路",
        "refund_time": "2019-05-18 01:15:29",
        "remark": "",
        "modified": "2019-05-18 01:16:15",
        "actual_refund_amount": "2399.0000",
        "guarante_refund_amount": "2399.0000",
        "outer_no": "",
        "return_logistics_name": "顺丰快递",
        "return_logistics_no": "",
        "direct_refund_amount": "0.0000",
        "finish_time": "2019-05-18 01:16:15",
        "shop_no": "lx2test",
        "shop_name": "lx2test",
        "platform_id": "127",
        "api_outer_no": "",
        "customer_no": "KH201811230003",
        "customer_name": "小明",
        "swap_zip": null,
        "swap_logistics_type": "8",
        "swap_logistics_name": "顺丰快递",
        "warehouse_no": "lx2test",
        "creator_name": "admin",
        "swap_warehouse_no": "lx2test",
        "refund_reason": "",
        "swap_trade_no": "",
        "refund_order_list": [{
            "order_id": "4030",
            "refund_id": "3172",
            "oid": "LxTestOid1542957295",
            "tid": "WDT201811230001",
            "process_status": "60",
            "order_num": "1.0000",
            "cost_price": "0.0000",
            "price": "2399.0000",
            "original_price": "2399.0000",
            "discount": "0.0000",
            "paid": "2409.0000",
            "refund_num": "1.0000",
            "total_amount": "2399.0000",
            "refund_order_amount": "2399.0000",
            "spec_no": "WDTPDA-BLACK006",
            "spec_id": "1",
            "goods_name": "旺店通手持终端",
            "spec_name": "旺店通手持终端黑色006型",
            "suite_no": "",
            "suite_name": "",
            "suite_num": "0.0000",
            "stockin_num": "1.0000",
            "remark": "",
            "market_price": "1.0000",
            "spec_code": "BLACK006",
            "is_sn_enable": "0",
            "goods_no": "WDTPDA",
            "sales_tid": "JY201811230001"
        }]
    }]
}

   6.2 异常响应示例

JSON
{
    "code": 2105,
    "message": "start_time不能等于end_time "
}



常用工具