# 查询卖家已卖出的交易数据(根据创建时间)
接口地址: http://www.damaijia168.com/vv/external/v1/requestTbErp/taobao-trades-sold-get
请求方式: POST
传参方式: JSON
返回格式: JSON
# 请求头参数
| 参数 | 类型 | 必选 | 值 | 示例 |
|---|---|---|---|---|
| Authorization | string | 是 | 授权 access_token | 1798c6aadec33d1bc2f5b707f1049aefexxxx |
# 请求参数
| 参数 | 类型 | 必选 | 描述 |
|---|---|---|---|
| shop_id | String | 是 | 店铺 ID |
| params | Object | 是 | 参数 |
| -fields | String | 是 | 需要返回的字段列表,多个字段用半角逗号分隔,可选值为返回示例中能看到的所有字段。rx_audit_status=0,处方药未审核 |
| -start_created | Date | 否 | 查询三个月内交易创建时间开始。格式:yyyy-MM-dd HH:mm:ss |
| -end_created | Date | 否 | 查询交易创建时间结束。格式:yyyy-MM-dd HH:mm:ss |
| -status | String | 否 | 交易状态(查看可选值),默认查询所有交易状态的数据,除了默认值外每次只能查询一种状态。 |
| -buyer_nick | String | 否 | 买家昵称 |
| -type | String | 否 | 交易类型列表,同时查询多种交易类型可用逗号分隔。默认同时查询 guarantee_trade,auto_delivery,ec,cod,step 这 5 种的交易类型的数据;查询所有交易类型的数据,需要设置下面全部可选值。可选值:fixed(一口价)auction(拍卖)guarantee_trade(一口价、拍卖)step(分阶段付款,万人团,阶梯团订单)independent_simple_trade(旺店入门版交易)independent_shop_trade(旺店标准版交易)auto_delivery(自动发货)ec(直冲)cod(货到付款)game_equipment(游戏装备)shopex_trade(ShopEX 交易)netcn_trade(万网交易)external_trade(统一外部交易)instant_trade (即时到账)b2c_cod(大商家货到付款)hotel_trade(酒店类型交易)super_market_trade(商超交易)super_market_cod_trade(商超货到付款交易)taohua(淘花网交易类型)waimai(外卖交易类型)o2o_offlinetrade(O2O 交易)nopaid(即时到帐/趣味猜交易类型)step (万人团) eticket(电子凭证) tmall_i18n(天猫国际);nopaid (无付款交易)insurance_plus(保险)finance(基金)注:guarantee_trade 是一个组合查询条件,并不是一种交易类型,获取批量或单个订单中不会返回此种类型的订单。pre_auth_type(预授权 0 元购) lazada(获取 lazada 订单类型) |
| -ext_type | String | 否 | 可选值有 ershou(二手市场的订单),service(商城服务子订单)mark(双十一大促活动异常订单)作为扩展类型筛选只能做单个 ext_type 查询,不能全部查询所有的 ext_type 类型 |
| -rate_status | String | 否 | 评价状态,默认查询所有评价状态的数据,除了默认值外每次只能查询一种状态。可选值:RATE_UNBUYER(买家未评)RATE_UNSELLER(卖家未评)RATE_BUYER_UNSELLER(买家已评,卖家未评)RATE_UNBUYER_SELLER(买家未评,卖家已评)RATE_BUYER_SELLER(买家已评,卖家已评) |
| -tag | String | 否 | 卖家对交易的自定义分组标签,目前可选值为:time_card(点卡软件代充),fee_card(话费软件代充) |
| -page_no | Number | 否 | 页码。默认值:1,可填整数,通过传入 page_no 来控制获取的页数,总页数 =total_results÷ page_size |
| -page_size | Number | 否 | 每页条数。 默认值:40;最大值:100,可填整数。通过 page_no 和 page_size 组合多次调用实现翻页获取全量数据。 |
| -use_has_next | Boolean | 否 | 是否启用 has_next 的分页方式,如果指定 是 |
| -buyer_open_id | String | 否 | 买家的 openId |
| -include_oaid | String | 否 | appkey 未对接 oaid 加密,则忽略该字段。对接 oaid 加密情况下,(收货人 + 手机号 + 座机 + 收货地址 +create)5 个字段组合成 oaid,原始订单上座机为空也满足条件。传 是 |
| edition | string | 否 | 版本 默认:1(不传默认为1) 1:1.0,2:2.0 |
# 请求示例
{
"shop_id":173926031,
"params":{
"fields":"tid,type,status,payment,orders,rx_audit_status",
"shop_id":"123456789",
"start_created":"2000-01-01 00:00:00",
"end_created":"2000-01-01 23:59:59",
"status":"ALL_WAIT_PAY",
"buyer_nick":"zhangsan",
"type":"game_equipment",
"ext_type":"service",
"rate_status":"RATE_UNBUYER",
"tag":"time_card",
"page_no":1,
"page_size":40,
"use_has_next":true,
"buyer_open_id":"AAHm******Hpg8bT",
"include_oaid":true
}
}
# 请求代码示例
cURL请求代码示例
curl --location --request POST 'http://www.damaijia168.com/vv/external/v1/requestTbErp/taobao-trades-sold-get' --header 'Authorization: 1798c6aadec33d1bc2f5b707f1049aefexxxx' --header 'Content-Type: application/json' --data-raw '{
"fields":"tid,type,status,payment,orders,rx_audit_status",
"shop_id":"123456789",
"start_created":"2000-01-01 00:00:00",
"end_created":"2000-01-01 23:59:59",
"status":"ALL_WAIT_PAY",
"buyer_nick":"zhangsan",
"type":"game_equipment",
"ext_type":"service",
"rate_status":"RATE_UNBUYER",
"tag":"time_card",
"page_no":1,
"page_size":40,
"use_has_next":true,
"buyer_open_id":"AAHm******Hpg8bT",
"include_oaid":true
}'
PHP请求代码示例
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://www.damaijia168.com/vv/external/v1/requestTbErp/taobao-trades-sold-get',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"fields":"tid,type,status,payment,orders,rx_audit_status",
"shop_id":"123456789",
"start_created":"2000-01-01 00:00:00",
"end_created":"2000-01-01 23:59:59",
"status":"ALL_WAIT_PAY",
"buyer_nick":"zhangsan",
"type":"game_equipment",
"ext_type":"service",
"rate_status":"RATE_UNBUYER",
"tag":"time_card",
"page_no":1,
"page_size":40,
"use_has_next":true,
"buyer_open_id":"AAHm******Hpg8bT",
"include_oaid":true
}',
CURLOPT_HTTPHEADER => array(
'Authorization: 1798c6aadec33d1bc2f5b707f1049aefexxxx',
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
JAVA请求代码示例
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n \"fields\":\"tid,type,status,payment,orders,rx_audit_status\",\r\n \"shop_id\":\"123456789\",\r\n \"start_created\":\"2000-01-01 00:00:00\",\r\n \"end_created\":\"2000-01-01 23:59:59\",\r\n \"status\":\"ALL_WAIT_PAY\",\r\n \"buyer_nick\":\"zhangsan\",\r\n \"type\":\"game_equipment\",\r\n \"ext_type\":\"service\",\r\n \"rate_status\":\"RATE_UNBUYER\",\r\n \"tag\":\"time_card\",\r\n \"page_no\":1,\r\n \"page_size\":40,\r\n \"use_has_next\":true,\r\n \"buyer_open_id\":\"AAHm******Hpg8bT\",\r\n \"include_oaid\":true\r\n}");
Request request = new Request.Builder()
.url("http://www.damaijia168.com/vv/external/v1/requestTbErp/taobao-trades-sold-get")
.method("POST", body)
.addHeader("Authorization", "1798c6aadec33d1bc2f5b707f1049aefexxxx")
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
Python请求代码示例
import requests
import json
url = "http://www.damaijia168.com/vv/external/v1/requestTbErp/taobao-trades-sold-get"
payload = json.dumps({
"shopId": "123456789",
"fields": "tid,order_code,seller_nick,buyer_nick,item_title,receiver_location,status,type,company_name,created,modified,is_quick_cod_order,sub_tids,is_split,receiver_location,receiver_name,receiver_phone,receiver_mobile"
})
headers = {
'Authorization': '1798c6aadec33d1bc2f5b707f1049aefexxxx',
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
# 响应参数
| 参数 | 类型 | 描述 |
|---|---|---|
| data | object | 返回数据 |
| ----fields | String | 需要返回的字段列表,多个字段用半角逗号分隔,可选值为返回示例中能看到的所有字段。rx_audit_status=0 为处方药未审核状态 |
| ----start_modified | Date | 查询修改开始时间(修改时间跨度不能大于一天)。格式:yyyy-MM-dd HH:mm:ss |
| ----end_modified | Date | 查询修改结束时间,必须大于修改开始时间(修改时间跨度不能大于一天),格式:yyyy-MM-dd HH:mm:ss。建议使用 30 分钟以内的时间跨度,能大大提高响应速度和成功率。 |
| ----status | String | 交易状态(查看可选值),默认查询所有交易状态的数据,除了默认值外每次只能查询一种状态。 |
| ----type | String | 交易类型列表(查看可选值),一次查询多种类型可用半角逗号分隔,默认同时查询 guarantee_trade,auto_delivery,ec,cod,step 这 5 种类型的数据。 |
| ----buyer_nick | String | 买家昵称 |
| ----ext_type | String | 可选值有 ershou(二手市场的订单),service(商城服务子订单)mark(双十一大促活动异常订单)作为扩展类型筛选只能做单个 ext_type 查询,不能全部查询所有的 ext_type 类型 |
| ----tag | String | 卖家对交易的自定义分组标签,目前可选值为:time_card(点卡软件代充),fee_card(话费软件代充) |
| ----page_no | Number | 页码。取值范围:大于零的整数;默认值:1。注:必须采用倒序的分页方式(从最后一页往回取)才能避免漏单问题。 |
| ----page_size | Number | 每页条数。取值范围:1100,默认值:40。建议使用 4050,可以提高成功率,减少超时数量。 |
| ----use_has_next | Boolean | 是否启用 has_next 的分页方式,如果指定 true,则返回的结果中不包含总记录数,但是会新增一个是否存在下一页的的字段,通过此种方式获取增量交易,效率在原有的基础上有 80% 的提升。 |
| ----include_oaid | String | appkey 未对接 oaid 加密,则忽略该字段。对接 oaid 加密情况下,(收货人 + 手机号 + 座机 + 收货地址 +create)5 个字段组合成 oaid,原始订单上座机为空也满足条件。传 true,代表必须返回 oaid,生成不了就报 isv.oaid-field-miss 错误;默认或者传 false,满足生成条件则返回 oaid,否则为空 |
| ----tid | string | 订单号 |
| --deduct_money | int | 消耗点券 |
| status | int | 状态码,0为成功 |
# 返回数据
{
"data": {
"0":{
"orders": {
"order": [
{
"adjust_fee": "0.00",
"buyer_rate": false,
"cid": 5000000005,
"discount_fee": "0.00",
"divide_order_fee": "**.00",
"end_time": "2021-04-01 13:08:18",
"is_daixiao": false,
"num": 1,
"num_iid": 1000000000001,
"oid": "168*********10386",
"payment": "108.00",
"pic_path": "https://img.alic*********01MtD9Oh1ySJ*********956577.png",
"price": "98.00",
"refund_id": "1079*********818603",
"refund_status": "SUCCESS",
"seller_rate": false,
"seller_type": "C",
"status": "TR*********ED",
"title": "婴幼儿*********湿巾生*********使用包",
"total_fee": "***.00"
}
]
},
"receiver_address": "三墩*********幢2单元",
"receiver_mobile": "$1Sag+WmXBD*********icUYg2yQ==$1$$",
"receiver_name": "~jKIpSPC*********~u/nh~1~~",
"receiver_state": "**省",
"receiver_zip": "000000",
"status": "TRADE_CLOSED",
"type": "fixed"
}
},
"deduct_money": 4,
"status": 0
}
# 错误码
| 状态码(status) | 错误信息 | 解决方案 |
|---|---|---|
| 132 | 请求格式必须为JSON | 修改请求参数格式为json |
| 422 | 参数列表不合法,在err中会给出提示 | 根据提示做相应修改 |
| 200 | 认证失败 | 请确保请求头里的Authorization存在或者未过期 |
| 422 | 用户不存在 | 通过简单的判断可以减少此类错误:排除特殊字符的昵称,如包含空格,冒号之类的昵称或排除字符长度小于 5 个,大于 20 个的 |
| 422 | 参数:seller_nick 无效,格式不对、非法值、越界等 | 请填写正确的 nick |
| 422 | API 调用远程服务超时 | 1. 每次返回 50 条以下,时间跨度小于半个小时 2. 避开交易高峰期上午 9:30-11:00,下午 14:00-17:00,晚上 20:00-22:30 3.使用增量 API(taobao.increment.trades.get)可以减少甚至避免超时问题 |
| 422 | 请求被拒绝。 | 可能原因为限流,请不要频繁调用,尽量避开高峰期。 |
| 422 | 数据库限流。 | 请求量较大,请避开高峰期。 |
| 422 | 服务访问频繁 | 请稍后重试 |
| 422 | 不合法的参数 | 创建时间和结束时间不能为空 |
| 422 | 非法的参数 | 卖家 ID 非法 |
| 422 | 限流 | 请调整请求频率 |
| 422 | 非法的参数 | 请检查传入参数 |
| 2000 | 未开通该权限 | 联系客服开通接口权限 |