目标:
卖家将淘宝上的订单数据对接到自己的系统内,之后再利用这些数据进行会员管理或产品库存管理;
实现环境:
白码低代码开发平台,通过API对接功能实现;
前期准备:
商家需要先在淘宝开放平台的控制台上申请创建一个应用,获取到应用的appkey和appsecret作为发起API请求的密钥,注意:不同的应用类型可使用的API接口不一样,一定要根据需求选择合适的应用类型,详情可参考官方API文档;
对接分析:
根据官方文档,要实现订单数据同步,大致分为两种方式:
1.使用聚石塔云产品将订单数据直接对接到自己的数据库,但需要购买阿里聚石塔的云服务器,实现起来比较麻烦;
2.通过增量修改订单的接口,每天定时拉取当天有更新的订单,这种方式是可以快速实现的,成本也不算高;
实现步骤:
(通过上述的第二种方式实现)
1.创建商品、商品sku、客户(买家)、订单、订单明细数据表
*商品ID是指在淘宝上的商品ID
*skuID是指淘宝上的skuID
*open_id是指买家在淘宝上的唯一标识
*可根据实际需求,添加原价和优惠金额等属性,这些数据在淘宝的订单中都可以获取到的
2.添加一个淘宝API,用于获取订单数据,填写配置参数(前期准备时已获取),添加两个输入参数:①查询修改开始时间②查询修改结束时间
编写代码:
async function run($input, $output, $modules = modules) {
const taobaoSdk = $modules.taobaoSdk;
let {
appKey, appSecret } = $modules.helper.config();
const sdk = new taobaoSdk(appKey, appSecret, {
endpoint: "https://eco.taobao.com/router/rest"
});
let has_next = true;
let page_no = 1;
while (has_next) {
let res = await sdk.execute("taobao.trades.sold.increment.get", {
session: "6201823bfxxxxxxxxxxxxxxx9ca84c8xxxxxxx8181374",
fields: "tid,status,payment,orders,pay_time,buyer_nick,buyer_open_id,created",
start_modified: $input.start_modified,
end_modified: $input.end_modified,
page_size: 100,
page_no,
use_has_next: true,
});
has_next = res.has_next;
page_no += 1