淘宝开放平台应用申请及订单API调用指南(2025新版)


淘宝开放平台应用申请及订单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 KeyApp 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,实现自动化运营。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值