淘宝开放平台应用申请及订单API调用指南(2025新版)
作者:鲨鱼 | 时间:2025年7月17日
原创文章,首发于优快云,如需转载,请注明出处。
一、前言
对于拥有自己技术团队并在淘宝开店的商家来说,手动处理订单不仅耗时而且容易出错。通过淘宝开放平台提供的API接口,可以实现订单的自动拉取、发货状态更新等操作,极大提高工作效率。
本文将详细介绍如何:
- 注册淘宝开放平台账号
- 创建应用并申请必要的API权限
- 使用Python代码示例演示如何调用订单API获取订单数据
- 解析并处理从淘宝API返回的订单数据
二、准备工作
✅ 1. 注册淘宝开放平台账号
首先,你需要一个有效的淘宝账号,并访问淘宝开放平台进行注册或登录。
✅ 2. 准备企业资料(如果适用)
如果你是以公司名义开发,需要准备营业执照副本扫描件等相关材料用于实名认证。
三、创建应用并申请权限
✅ 步骤1:创建新应用
登录后进入【管理中心】 -> 【应用管理】 -> 【创建应用】
填写必要信息:
- 应用名称
- 应用类型(选择适合你的选项)
- 应用描述
- 回调地址(用于OAuth授权回调)
✅ 步骤2:申请API权限
根据业务需求,在【权限管理】页面申请相应的API权限,例如:
trade.fullinfo.get
- 获取订单详情trade.search
- 订单搜索logistics.online.send
- 在线发货
四、获取App Key 和 App Secret
成功创建应用后,你可以在【应用详情】页面找到App Key
和App Secret
,这两个参数是调用API的关键凭证。
五、获取用户授权Token(Access Token)
为了能够访问店铺的订单信息,你需要获得用户的授权。
示例:获取Authorization Code
构造OAuth授权URL:
https://oauth.taobao.com/authorize?
response_type=code&
client_id=your_app_key&
redirect_uri=your_callback_url&
state=security_token%3D123456
用户同意授权后,会重定向到你设置的回调地址,并附带一个code
参数,使用该参数换取access_token
。
import requests
def get_access_token(app_key, app_secret, code, redirect_uri):
url = "https://oauth.taobao.com/token"
payload = {
'grant_type': 'authorization_code',
'code': code,
'client_id': app_key,
'client_secret': app_secret,
'redirect_uri': redirect_uri
}
response = requests.post(url, data=payload)
return response.json()
# 示例调用
app_key = 'your_app_key'
app_secret = 'your_app_secret'
code = 'received_code_from_redirect'
redirect_uri = 'your_callback_url'
token_info = get_access_token(app_key, app_secret, code, redirect_uri)
print(token_info)
六、调用订单API示例(Python)
下面是一个简单的例子,展示如何使用淘宝API获取订单列表,并解析返回的数据。
安装依赖
确保安装了requests库:
pip install requests
示例代码:获取淘宝订单列表
import time
import requests
from hashlib import md5
def sign(params, secret):
"""生成签名"""
sorted_params = [(k, params[k]) for k in sorted(params)]
query_string = '&'.join(['%s=%s' % (k, v) for k, v in sorted_params])
string_to_sign = '%s%s%s' % (secret, query_string, secret)
return md5(string_to_sign.encode('utf-8')).hexdigest().upper()
def get_taobao_orders(app_key, app_secret, session_key, access_token):
url = "https://eco.taobao.com/router/rest"
timestamp = str(int(time.time() * 1000))
params = {
'method': 'taobao.trade.fullinfo.get',
'app_key': app_key,
'session': session_key,
'timestamp': timestamp,
'format': 'json',
'v': '2.0',
'sign_method': 'md5',
'access_token': access_token,
'fields': 'tid,status,payment,buyer_nick',
'tid': '待查询的订单号'
}
params['sign'] = sign(params, app_secret)
response = requests.get(url, params=params)
return response.json()
# 示例调用
app_key = 'your_app_key'
app_secret = 'your_app_secret'
session_key = 'user_session_key' # 用户授权后的session key
access_token = 'your_access_token'
orders = get_taobao_orders(app_key, app_secret, session_key, access_token)
print(orders)
解析订单数据
根据提供的订单数据结构,我们可以对返回的JSON数据进行解析和处理。以下是一个示例函数,用于提取订单的关键信息:
def parse_order_data(order_data):
trade = order_data.get('trade', {})
order_details = {
'buyer_open_uid': trade.get('buyer_open_uid'),
'title': trade.get('title'),
'type': trade.get('type'),
'created': trade.get('created'),
'sid': trade.get('sid'),
'tid': trade.get('tid'),
'payment': trade.get('payment'),
'status': trade.get('status'),
'buyer_message': trade.get('buyer_message'),
'receiver_name': trade.get('receiver_name'),
'receiver_address': trade.get('receiver_address'),
'receiver_mobile': trade.get('receiver_mobile')
}
return order_details
# 示例调用
parsed_orders = [parse_order_data(order) for order in orders]
for order in parsed_orders:
print(order)
数据字段解释
以下是一些关键字段及其含义:
- buyer_open_uid: 买家OpenUid
- title: 商品名称或店铺名称
- type: 交易类型(一口价、拍卖等)
- created: 交易创建时间
- sid: 交易编号(父订单的交易编号)
- tid: 交易编号(父订单的交易编号)
- payment: 实付金额
- status: 交易状态(等待买家付款、等待卖家发货等)
- buyer_message: 买家留言
- receiver_name: 收货人姓名
- receiver_address: 收货人的详细地址
- receiver_mobile: 收货人的手机号码
七、结语
通过上述步骤,你可以轻松地将淘宝店铺的订单信息同步到自己的系统中,从而实现更高效的订单管理和分析。无论是自动化打单、库存预警还是销售趋势分析,都可以基于这些数据进行扩展。
希望这篇指南能帮助你在电商运营的路上走得更加顺畅!
📌 点赞 + 收藏 + 关注,不错过更多电商实战干货!
作者简介:
鲨鱼,电商开放平台老司机,从业15年横跨京东、淘宝、拼多多等多个平台,熟悉每一个接口、每一套审核规则。专门为中小商家提供电商系统集成解决方案,帮助你打通平台API,实现自动化运营。